diff --git a/aiosocks/connector.py b/aiosocks/connector.py index 948e007..a693ab1 100644 --- a/aiosocks/connector.py +++ b/aiosocks/connector.py @@ -1,7 +1,5 @@ -import socket import asyncio import aiohttp -import ipaddress from aiohttp.errors import ProxyConnectionError from .errors import SocksError, SocksConnectionError from .helpers import HttpProxyAddr, SocksAddr @@ -65,22 +63,8 @@ class SocksConnector(aiohttp.TCPConnector): else: dst = req.host, req.port - # if self._resolver is AsyncResolver and self._proxy.host - # is ip address, then aiodns raise DNSError. - # https://github.com/KeepSafe/aiohttp/pull/874. Fix: - try: - ipaddress.ip_address(self._proxy.host) - proxy_hosts = yield from self._loop.getaddrinfo(self._proxy.host, - self._proxy.port) - family, _, proto, _, address = proxy_hosts[0] - - proxy_hosts = ({'hostname': self._proxy.host, - 'host': address[0], 'port': address[1], - 'family': family, 'proto': proto, - 'flags': socket.AI_NUMERICHOST},) - except ValueError: - proxy_hosts = yield from self._resolve_host(self._proxy.host, - self._proxy.port) + proxy_hosts = yield from self._resolve_host(self._proxy.host, + self._proxy.port) exc = None for hinfo in proxy_hosts: diff --git a/tests/test_connector.py b/tests/test_connector.py index 2024c28..686c06f 100644 --- a/tests/test_connector.py +++ b/tests/test_connector.py @@ -80,7 +80,7 @@ class TestSocksConnector(unittest.TestCase): conn = self.loop.run_until_complete(connector.connect(req)) - self.assertEqual(connector._resolve_host.call_count, 0) + self.assertEqual(connector._resolve_host.call_count, 1) conn.close()