美文网首页
【python】paramiko源码event线程等待认证超时

【python】paramiko源码event线程等待认证超时

作者: 小熊猫笔记 | 来源:发表于2020-05-20 10:39 被阅读0次
        def wait_for_response(self, event):
            max_ts = None
            if self.transport.auth_timeout is not None:
                max_ts = time.time() + self.transport.auth_timeout
            while True:
                event.wait(0.1)
                if not self.transport.is_active():
                    e = self.transport.get_exception()
                    if (e is None) or issubclass(e.__class__, EOFError):
                        e = AuthenticationException('Authentication failed.')
                    raise e
                if event.is_set():
                    break
                if max_ts is not None and max_ts <= time.time():
                    raise AuthenticationException('Authentication timeout.')
    
            if not self.is_authenticated():
                e = self.transport.get_exception()
                if e is None:
                    e = AuthenticationException('Authentication failed.')
                # this is horrible.  Python Exception isn't yet descended from
                # object, so type(e) won't work. :(
                if issubclass(e.__class__, PartialAuthentication):
                    return e.allowed_types
                raise e
            return []
    

    相关文章

      网友评论

          本文标题:【python】paramiko源码event线程等待认证超时

          本文链接:https://www.haomeiwen.com/subject/zcdgohtx.html