Esempio n. 1
0
 def read_peer_id(self, s):
     self.unauth_peer_id = s
     self.low_proto_ver, self.cur_proto_ver = get_proto_version_from_peer_id(self.unauth_peer_id)
     self.sel_proto_ver = select_supported_protoversion(self.low_proto_ver, self.cur_proto_ver)
     if not self.sel_proto_ver:
         if DEBUG:
             print >> sys.stderr, "olconn: We don't support peer's version of the protocol"
         return None
     if DEBUG:
         print >> sys.stderr, 'olconn: Selected protocol version', self.sel_proto_ver
     if self.cur_proto_ver <= 2:
         print >> sys.stderr, 'olconn: Kicking ancient peer', `(self.unauth_peer_id)`, self.get_ip()
         return None
     self.state = STATE_AUTH_WAIT
     self.cr = ChallengeResponse(self.handler.get_my_keypair(), self.handler.get_my_peer_id(), self)
     if self.locally_initiated:
         self.cr.start_cr(self)
     return (4, self.read_len)