added test_nodes, which simulates 3 p2pool nodes mining and exchanging shares
[p2pool.git] / p2pool / p2p.py
index 9c1c5d0..697fd06 100644 (file)
@@ -97,7 +97,8 @@ class Protocol(p2protocol.Protocol):
         if p2pool.DEBUG:
             print "Bad peer banned:", self.addr
         self.transport.loseConnection()
-        self.node.bans[self.transport.getPeer().host] = time.time() + 60*60
+        if self.transport.getPeer().host != '127.0.0.1': # never ban localhost
+            self.node.bans[self.transport.getPeer().host] = time.time() + 60*60
     
     def _timeout(self):
         self.timeout_delayed = None
@@ -152,7 +153,7 @@ class Protocol(p2protocol.Protocol):
         random.expovariate(1/100)][-1])
         
         self._stop_thread2 = deferral.run_repeatedly(lambda: [
-            self.send_addrme(port=self.node.port),
+            self.send_addrme(port=self.node.serverfactory.listen_port.getHost().port),
         random.expovariate(1/(100*len(self.node.peers) + 1))][-1])
         
         if best_share_hash is not None: