resolver_ares.py 文件源码

python
阅读 33 收藏 0 点赞 0 评论 0

项目:MKFQ 作者: maojingios 项目源码 文件源码
def _gethostbyaddr(self, ip_address):
        if isinstance(ip_address, unicode):
            ip_address = ip_address.encode('ascii')
        elif not isinstance(ip_address, str):
            raise TypeError('Expected string, not %s' % type(ip_address).__name__)

        waiter = Waiter(self.hub)
        try:
            self.ares.gethostbyaddr(waiter, ip_address)
            return waiter.get()
        except InvalidIP:
            result = self._getaddrinfo(ip_address, None, family=AF_UNSPEC, socktype=SOCK_DGRAM)
            if not result:
                raise
            _ip_address = result[0][-1][0]
            if _ip_address == ip_address:
                raise
            waiter.clear()
            self.ares.gethostbyaddr(waiter, _ip_address)
            return waiter.get()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号