Example #1
0
 def krpcReceived(self, krpc, address):
     if isinstance(krpc, Query):
         self.queryReceived(krpc, address)
     else:
         transaction = self._transactions.get(krpc._transaction_id, None)
         if transaction is not None:
             if isinstance(krpc, Response):
                 self.responseReceived(krpc, transaction, address)
             elif isinstance(krpc, Error):
                 self.errorReceived(krpc, transaction, address)
         else:
             log.msg("Received a reply not corresponding to an" +
                     " outstanding query from: %s, reply: %s" %
                     (contact.address_str(address), str(krpc)))
Example #2
0
 def krpcReceived(self, krpc, address):
     if isinstance(krpc, Query):
         self.queryReceived(krpc, address)
     else:
         transaction = self._transactions.get(krpc._transaction_id, None)
         if transaction is not None:
             if isinstance(krpc, Response):
                 self.responseReceived(krpc, transaction, address)
             elif isinstance(krpc, Error):
                 self.errorReceived(krpc, transaction, address)
         else:
             log.msg("Received a reply not corresponding to an" +
                     " outstanding query from: %s, reply: %s" % (
                     contact.address_str(address), str(krpc)))
Example #3
0
 def announce_peer_Received(self, query, address):
     token = query.token
     token_is_valid = self._token_generator.verify(query, address, token)
     if token_is_valid:
         # If the token is valid, we authenticate
         # the querying node to store itself as a peer
         # in our datastore
         node_ip, node_port = address
         peer_address = (node_ip, query.port)
         self._datastore[query.target_id].add(peer_address)
         # announce_peer responses have no additional
         # data (and serve just as a confirmation)
         response = query.build_response()
         self.sendResponse(response, address)
     else:
         log.msg("announce_peerReceived: "
                 "{0} sent an announce_peer with an invalid token: {1}".format(
                 contact.address_str(address), str(token)))
Example #4
0
 def test_address_str(self):
     address = ("127.0.0.1", 80)
     expected_str = "127.0.0.1:80"
     self.assertEquals(expected_str, contact.address_str(address))
Example #5
0
 def test_address_str(self):
     address = ("127.0.0.1", 80)
     expected_str = "ip=127.0.0.1 port=80"
     self.assertEquals(expected_str, contact.address_str(address))