From 975ed9c978aedbf58356b4216388fda9bacbfece Mon Sep 17 00:00:00 2001 From: burris Date: Fri, 13 Sep 2002 20:13:31 +0000 Subject: [PATCH] fix bug in pong handler --- khashmir.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/khashmir.py b/khashmir.py index 27c2928..8321cf7 100644 --- a/khashmir.py +++ b/khashmir.py @@ -140,7 +140,8 @@ class Khashmir(xmlrpc.XMLRPC): def _notStaleNodeHandler(sender, old=old): """ called when we get a ping from the remote node """ - if sender['id'] == old.id: + sender = Node().initWithSenderDict(sender) + if sender.id == old.id: self.table.insertNode(old) df = old.ping(self.node.senderDict()) @@ -154,7 +155,8 @@ class Khashmir(xmlrpc.XMLRPC): df = node.ping(self.node.senderDict()) ## these are the callbacks we use when we issue a PING def _pongHandler(sender, id=node.id, host=node.host, port=node.port, table=self.table): - if id != 20 * ' ' and id != sender['id']: + sender = Node().initWithSenderDict(sender) + if id != 20 * ' ' and id != sender.id: # whoah, got response from different peer than we were expecting pass else: -- 2.39.5