143 lines
2.4 KiB
Python
143 lines
2.4 KiB
Python
# dispatches to _socket for actual implementation
|
|
|
|
from _socket import (
|
|
socket, SocketType, error, herror, gaierror, timeout, has_ipv6,
|
|
|
|
create_connection,
|
|
|
|
getdefaulttimeout,
|
|
setdefaulttimeout,
|
|
|
|
getfqdn,
|
|
gethostbyaddr,
|
|
gethostbyname,
|
|
gethostbyname_ex,
|
|
gethostname,
|
|
getprotobyname,
|
|
getservbyname,
|
|
getservbyport,
|
|
|
|
AF_UNSPEC,
|
|
AF_INET,
|
|
AF_INET6,
|
|
|
|
AI_PASSIVE,
|
|
AI_CANONNAME,
|
|
AI_NUMERICHOST,
|
|
AI_V4MAPPED,
|
|
AI_ALL,
|
|
AI_ADDRCONFIG,
|
|
AI_NUMERICSERV,
|
|
|
|
EAI_NONAME,
|
|
EAI_SERVICE,
|
|
EAI_ADDRFAMILY,
|
|
|
|
NI_NUMERICHOST,
|
|
NI_NUMERICSERV,
|
|
NI_NOFQDN,
|
|
NI_NAMEREQD,
|
|
NI_DGRAM,
|
|
NI_MAXSERV,
|
|
NI_IDN,
|
|
NI_IDN_ALLOW_UNASSIGNED,
|
|
NI_IDN_USE_STD3_ASCII_RULES,
|
|
NI_MAXHOST,
|
|
|
|
SHUT_RD,
|
|
SHUT_WR,
|
|
SHUT_RDWR,
|
|
|
|
SOCK_DGRAM,
|
|
SOCK_STREAM,
|
|
SOCK_RAW,
|
|
SOCK_RDM,
|
|
SOCK_SEQPACKET,
|
|
|
|
SOL_SOCKET,
|
|
SOL_TCP,
|
|
# not supported, but here for apparent completeness
|
|
IPPROTO_AH,
|
|
IPPROTO_DSTOPTS,
|
|
IPPROTO_ESP,
|
|
IPPROTO_FRAGMENT,
|
|
IPPROTO_GGP,
|
|
IPPROTO_HOPOPTS,
|
|
IPPROTO_ICMP,
|
|
IPPROTO_ICMPV6,
|
|
IPPROTO_IDP,
|
|
IPPROTO_IGMP,
|
|
IPPROTO_IP, # supported
|
|
# not supported
|
|
IPPROTO_IPV4,
|
|
IPPROTO_IPV6,
|
|
IPPROTO_MAX,
|
|
IPPROTO_ND,
|
|
IPPROTO_NONE,
|
|
IPPROTO_PUP,
|
|
IPPROTO_RAW,
|
|
IPPROTO_ROUTING,
|
|
IPPROTO_TCP, # supported
|
|
IPPROTO_UDP, # supported
|
|
|
|
# supported
|
|
SO_BROADCAST,
|
|
SO_KEEPALIVE,
|
|
SO_LINGER,
|
|
SO_RCVBUF,
|
|
SO_REUSEADDR,
|
|
SO_SNDBUF,
|
|
SO_TIMEOUT,
|
|
TCP_NODELAY,
|
|
|
|
# pseudo options
|
|
SO_ACCEPTCONN,
|
|
SO_ERROR,
|
|
SO_TYPE,
|
|
|
|
# unsupported, will return errno.ENOPROTOOPT if actually used
|
|
SO_OOBINLINE,
|
|
SO_DEBUG,
|
|
SO_DONTROUTE,
|
|
SO_RCVLOWAT,
|
|
SO_RCVTIMEO,
|
|
SO_REUSEPORT,
|
|
SO_SNDLOWAT,
|
|
SO_SNDTIMEO,
|
|
SO_USELOOPBACK,
|
|
|
|
INADDR_ANY,
|
|
INADDR_BROADCAST,
|
|
IN6ADDR_ANY_INIT,
|
|
|
|
_GLOBAL_DEFAULT_TIMEOUT,
|
|
|
|
is_ipv4_address, is_ipv6_address, is_ip_address,
|
|
getaddrinfo,
|
|
getnameinfo,
|
|
htons,
|
|
htonl,
|
|
ntohs,
|
|
ntohl,
|
|
inet_aton,
|
|
inet_ntoa,
|
|
inet_pton,
|
|
inet_ntop,
|
|
|
|
_fileobject,
|
|
_get_jsockaddr
|
|
)
|
|
|
|
|
|
def supports(feature):
|
|
# FIXME this seems to be Jython internals specific, and for
|
|
# testing only; consider removing since it really no longer
|
|
# matters
|
|
|
|
if feature == "idna":
|
|
return True
|
|
raise KeyError("Unknown feature", feature)
|
|
|
|
|
|
|