本文整理汇总了Python中pypy.module._socket.interp_socket.converted_error函数的典型用法代码示例。如果您正苦于以下问题:Python converted_error函数的具体用法?Python converted_error怎么用?Python converted_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了converted_error函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: getaddrinfo
def getaddrinfo(space, w_host, w_port,
family=rsocket.AF_UNSPEC, socktype=0, proto=0, flags=0):
"""getaddrinfo(host, port [, family, socktype, proto, flags])
-> list of (family, socktype, proto, canonname, sockaddr)
Resolve host and port into addrinfo struct.
"""
# host can be None, string or unicode
if space.is_w(w_host, space.w_None):
host = None
elif space.is_true(space.isinstance(w_host, space.w_str)):
host = space.str_w(w_host)
elif space.is_true(space.isinstance(w_host, space.w_unicode)):
w_shost = space.call_method(w_host, "encode", space.wrap("idna"))
host = space.str_w(w_shost)
else:
raise OperationError(space.w_TypeError,
space.wrap(
"getaddrinfo() argument 1 must be string or None"))
# port can be None, int or string
if space.is_w(w_port, space.w_None):
port = None
elif space.is_true(space.isinstance(w_port, space.w_int)):
port = str(space.int_w(w_port))
elif space.is_true(space.isinstance(w_port, space.w_str)):
port = space.str_w(w_port)
else:
raise OperationError(space.w_TypeError,
space.wrap("Int or String expected"))
try:
lst = rsocket.getaddrinfo(host, port, family, socktype,
proto, flags)
except SocketError, e:
raise converted_error(space, e)
示例2: _ssl_seterror
def _ssl_seterror(space, ss, ret):
assert ret <= 0
if ss is None:
errval = libssl_ERR_peek_last_error()
errstr = rffi.charp2str(libssl_ERR_error_string(errval, None))
return ssl_error(space, errstr, errval)
elif ss.ssl:
err = libssl_SSL_get_error(ss.ssl, ret)
else:
err = SSL_ERROR_SSL
errstr = ""
errval = 0
if err == SSL_ERROR_ZERO_RETURN:
errstr = "TLS/SSL connection has been closed"
errval = PY_SSL_ERROR_ZERO_RETURN
elif err == SSL_ERROR_WANT_READ:
errstr = "The operation did not complete (read)"
errval = PY_SSL_ERROR_WANT_READ
elif err == SSL_ERROR_WANT_WRITE:
errstr = "The operation did not complete (write)"
errval = PY_SSL_ERROR_WANT_WRITE
elif err == SSL_ERROR_WANT_X509_LOOKUP:
errstr = "The operation did not complete (X509 lookup)"
errval = PY_SSL_ERROR_WANT_X509_LOOKUP
elif err == SSL_ERROR_WANT_CONNECT:
errstr = "The operation did not complete (connect)"
errval = PY_SSL_ERROR_WANT_CONNECT
elif err == SSL_ERROR_SYSCALL:
e = libssl_ERR_get_error()
if e == 0:
if ret == 0 or space.is_w(ss.w_socket, space.w_None):
errstr = "EOF occurred in violation of protocol"
errval = PY_SSL_ERROR_EOF
elif ret == -1:
# the underlying BIO reported an I/0 error
error = rsocket.last_error()
return interp_socket.converted_error(space, error)
else:
errstr = "Some I/O error occurred"
errval = PY_SSL_ERROR_SYSCALL
else:
errstr = rffi.charp2str(libssl_ERR_error_string(e, None))
errval = PY_SSL_ERROR_SYSCALL
elif err == SSL_ERROR_SSL:
e = libssl_ERR_get_error()
errval = PY_SSL_ERROR_SSL
if e != 0:
errstr = rffi.charp2str(libssl_ERR_error_string(e, None))
else:
errstr = "A failure in the SSL library occurred"
else:
errstr = "Invalid error code"
errval = PY_SSL_ERROR_INVALID_ERROR_CODE
return ssl_error(space, errstr, errval)
示例3: getnameinfo
def getnameinfo(space, w_sockaddr, flags):
"""getnameinfo(sockaddr, flags) --> (host, port)
Get host and port for a sockaddr."""
try:
addr = ipaddr_from_object(space, w_sockaddr)
host, servport = rsocket.getnameinfo(addr, flags)
except SocketError as e:
raise converted_error(space, e)
return space.newtuple([space.wrap(host), space.wrap(servport)])
示例4: gethostbyaddr
def gethostbyaddr(space, host):
"""gethostbyaddr(host) -> (name, aliaslist, addresslist)
Return the true host name, a list of aliases, and a list of IP addresses,
for a host. The host argument is a string giving a host name or IP number.
"""
try:
res = rsocket.gethostbyaddr(host)
except SocketError, e:
raise converted_error(space, e)
示例5: socketpair
def socketpair(space, family=rsocket.socketpair_default_family, type=rsocket.SOCK_STREAM, proto=0):
"""socketpair([family[, type[, proto]]]) -> (socket object, socket object)
Create a pair of socket objects from the sockets returned by the platform
socketpair() function.
The arguments are the same as for socket() except the default family is
AF_UNIX if defined on the platform; otherwise, the default is AF_INET.
"""
try:
sock1, sock2 = rsocket.socketpair(family, type, proto, W_RSocket)
except SocketError, e:
raise converted_error(space, e)
示例6: inet_ntop
def inet_ntop(space, family, packed):
"""inet_ntop(family, packed_ip) -> string formatted IP address
Convert a packed IP address of the given family to string format.
"""
try:
ip = rsocket.inet_ntop(family, packed)
except SocketError as e:
raise converted_error(space, e)
except ValueError:
raise oefmt(space.w_ValueError,
"invalid length of packed IP address string")
return space.wrap(ip)
示例7: gethostname
def gethostname(space):
"""gethostname() -> string
Return the current host name.
"""
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
res = rsocket.gethostname()
finally:
if GIL is not None: GIL.acquire(True)
except SocketError, e:
raise converted_error(space, e)
示例8: getprotobyname
def getprotobyname(space, name):
"""getprotobyname(name) -> integer
Return the protocol number for the named protocol. (Rarely used.)
"""
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
proto = rsocket.getprotobyname(name)
finally:
if GIL is not None: GIL.acquire(True)
except SocketError, e:
raise converted_error(space, e)
示例9: getnameinfo
def getnameinfo(space, w_sockaddr, flags):
"""getnameinfo(sockaddr, flags) --> (host, port)
Get host and port for a sockaddr."""
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
addr = rsocket.ipaddr_from_object(space, w_sockaddr)
host, servport = rsocket.getnameinfo(addr, flags)
finally:
if GIL is not None: GIL.acquire(True)
except SocketError, e:
raise converted_error(space, e)
示例10: gethostbyname
def gethostbyname(space, hostname):
"""gethostbyname(host) -> address
Return the IP address (a string of the form '255.255.255.255') for a host.
"""
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
addr = rsocket.gethostbyname(hostname)
finally:
if GIL is not None: GIL.acquire(True)
ip = addr.get_host()
except SocketError, e:
raise converted_error(space, e)
示例11: getservbyport
def getservbyport(space, port, w_proto=None):
"""getservbyport(port[, protocolname]) -> string
Return the service name from a port number and protocol name.
The optional protocol name, if given, should be 'tcp' or 'udp',
otherwise any protocol will match.
"""
if space.is_w(w_proto, space.w_None):
proto = None
else:
proto = space.str_w(w_proto)
try:
service = rsocket.getservbyport(port, proto)
except SocketError, e:
raise converted_error(space, e)
示例12: gethostbyaddr
def gethostbyaddr(space, host):
"""gethostbyaddr(host) -> (name, aliaslist, addresslist)
Return the true host name, a list of aliases, and a list of IP addresses,
for a host. The host argument is a string giving a host name or IP number.
"""
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
res = rsocket.gethostbyaddr(host)
finally:
if GIL is not None: GIL.acquire(True)
except SocketError, e:
raise converted_error(space, e)
示例13: getnameinfo
def getnameinfo(space, w_sockaddr, flags):
"""getnameinfo(sockaddr, flags) --> (host, port)
Get host and port for a sockaddr."""
try:
host = space.str_w((space.getitem(w_sockaddr, space.wrap(0))))
port = str(space.int_w(space.getitem(w_sockaddr, space.wrap(1))))
lst = rsocket.getaddrinfo(host, port, rsocket.AF_UNSPEC,
rsocket.SOCK_DGRAM, 0,
rsocket.AI_NUMERICHOST)
if len(lst) > 1:
raise OperationError(
get_error(space, 'error'),
space.wrap("sockaddr resolved to multiple addresses"))
addr = lst[0][4]
fill_from_object(addr, space, w_sockaddr)
host, servport = rsocket.getnameinfo(addr, flags)
except SocketError, e:
raise converted_error(space, e)
示例14: getservbyport
def getservbyport(space, port, w_proto):
"""getservbyport(port[, protocolname]) -> string
Return the service name from a port number and protocol name.
The optional protocol name, if given, should be 'tcp' or 'udp',
otherwise any protocol will match.
"""
if space.is_w(w_proto, space.w_None):
proto = None
else:
proto = space.str_w(w_proto)
if port < 0 or port > 0xffff:
raise oefmt(space.w_ValueError, "getservbyport: port must be 0-65535.")
try:
service = rsocket.getservbyport(port, proto)
except SocketError as e:
raise converted_error(space, e)
return space.wrap(service)
示例15: getservbyname
def getservbyname(space, name, w_proto=None):
"""getservbyname(servicename[, protocolname]) -> integer
Return a port number from a service name and protocol name.
The optional protocol name, if given, should be 'tcp' or 'udp',
otherwise any protocol will match.
"""
if space.is_w(w_proto, space.w_None):
proto = None
else:
proto = space.str_w(w_proto)
try:
GIL = space.threadlocals.getGIL()
if GIL is not None: GIL.release()
try:
port = rsocket.getservbyname(name, proto)
finally:
if GIL is not None: GIL.acquire(True)
except SocketError, e:
raise converted_error(space, e)