diff options
author | James Taylor <user234683@users.noreply.github.com> | 2019-09-06 16:31:13 -0700 |
---|---|---|
committer | James Taylor <user234683@users.noreply.github.com> | 2019-09-06 16:31:13 -0700 |
commit | 3d57e14df7ba5f14a634295caf3b2e60da50bfe2 (patch) | |
tree | 4903bcb79a49ad714a1a9129765b9545405c9978 /python/gevent/resolver/__init__.py | |
parent | ac32b24b2a011292b704a3f27e8fd08a7ae9424b (diff) | |
download | yt-local-3d57e14df7ba5f14a634295caf3b2e60da50bfe2.tar.lz yt-local-3d57e14df7ba5f14a634295caf3b2e60da50bfe2.tar.xz yt-local-3d57e14df7ba5f14a634295caf3b2e60da50bfe2.zip |
Remove windows python distribution from repo and add requirements.txt
Diffstat (limited to 'python/gevent/resolver/__init__.py')
-rw-r--r-- | python/gevent/resolver/__init__.py | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/python/gevent/resolver/__init__.py b/python/gevent/resolver/__init__.py deleted file mode 100644 index 3da38e3..0000000 --- a/python/gevent/resolver/__init__.py +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright (c) 2018 gevent contributors. See LICENSE for details. - -from _socket import gaierror -from _socket import error -from _socket import getservbyname -from _socket import getaddrinfo - -from gevent._compat import string_types -from gevent._compat import integer_types - -from gevent.socket import SOCK_STREAM -from gevent.socket import SOCK_DGRAM -from gevent.socket import SOL_TCP -from gevent.socket import AI_CANONNAME -from gevent.socket import EAI_SERVICE -from gevent.socket import AF_INET -from gevent.socket import AI_PASSIVE - - -def _lookup_port(port, socktype): - # pylint:disable=too-many-branches - socktypes = [] - if isinstance(port, string_types): - try: - port = int(port) - except ValueError: - try: - if socktype == 0: - origport = port - try: - port = getservbyname(port, 'tcp') - socktypes.append(SOCK_STREAM) - except error: - port = getservbyname(port, 'udp') - socktypes.append(SOCK_DGRAM) - else: - try: - if port == getservbyname(origport, 'udp'): - socktypes.append(SOCK_DGRAM) - except error: - pass - elif socktype == SOCK_STREAM: - port = getservbyname(port, 'tcp') - elif socktype == SOCK_DGRAM: - port = getservbyname(port, 'udp') - else: - raise gaierror(EAI_SERVICE, 'Servname not supported for ai_socktype') - except error as ex: - if 'not found' in str(ex): - raise gaierror(EAI_SERVICE, 'Servname not supported for ai_socktype') - else: - raise gaierror(str(ex)) - except UnicodeEncodeError: - raise error('Int or String expected', port) - elif port is None: - port = 0 - elif isinstance(port, integer_types): - pass - else: - raise error('Int or String expected', port, type(port)) - port = int(port % 65536) - if not socktypes and socktype: - socktypes.append(socktype) - return port, socktypes - -hostname_types = tuple(set(string_types + (bytearray, bytes))) - -def _resolve_special(hostname, family): - if not isinstance(hostname, hostname_types): - raise TypeError("argument 1 must be str, bytes or bytearray, not %s" % (type(hostname),)) - - if hostname == '': - result = getaddrinfo(None, 0, family, SOCK_DGRAM, 0, AI_PASSIVE) - if len(result) != 1: - raise error('wildcard resolved to multiple address') - return result[0][4][0] - return hostname - - -class AbstractResolver(object): - - def gethostbyname(self, hostname, family=AF_INET): - hostname = _resolve_special(hostname, family) - return self.gethostbyname_ex(hostname, family)[-1][0] - - def gethostbyname_ex(self, hostname, family=AF_INET): - aliases = self._getaliases(hostname, family) - addresses = [] - tuples = self.getaddrinfo(hostname, 0, family, - SOCK_STREAM, - SOL_TCP, AI_CANONNAME) - canonical = tuples[0][3] - for item in tuples: - addresses.append(item[4][0]) - # XXX we just ignore aliases - return (canonical, aliases, addresses) - - def getaddrinfo(self, host, port, family=0, socktype=0, proto=0, flags=0): - raise NotImplementedError() - - def _getaliases(self, hostname, family): - # pylint:disable=unused-argument - return [] |