Author: nextgens
Date: 2007-09-08 22:55:48 +0000 (Sat, 08 Sep 2007)
New Revision: 15075
Modified:
branches/freenet-jfk/src/freenet/node/PacketSender.java
Log:
Fix a bug in PacketSender; we weren't ever disconnecting from a non-routable
peer!
Modified: branches/freenet-jfk/src/freenet/node/PacketSender.java
===================================================================
--- branches/freenet-jfk/src/freenet/node/PacketSender.java 2007-09-08
19:33:26 UTC (rev 15074)
+++ branches/freenet-jfk/src/freenet/node/PacketSender.java 2007-09-08
22:55:48 UTC (rev 15075)
@@ -182,20 +182,17 @@
Math.max(pn.lastReceivedPacketTime(),
lastReceivedPacketFromAnyNode);
pn.maybeOnConnect();
if(pn.isConnected()) {
-
- if(pn.isRoutable() && pn.noLongerRoutable()) {
- // we don't disconnect but we mark it incompatible
- pn.invalidate();
- pn.setPeerNodeStatus(now);
- Logger.normal(this, "shouldDisconnectNow has returned
true : marking the peer as incompatible");
- continue;
- }
-
// Is the node dead?
- if(pn.isRoutable() && now - pn.lastReceivedPacketTime() >
pn.maxTimeBetweenReceivedPackets()) {
+ if(now - pn.lastReceivedPacketTime() >
pn.maxTimeBetweenReceivedPackets()) {
Logger.normal(this, "Disconnecting from "+pn+" -
haven't received packets recently");
pn.disconnected();
continue;
+ } else if(pn.isRoutable() && pn.noLongerRoutable()) {
+ // we don't disconnect but we mark it incompatible
+ pn.invalidate();
+ pn.setPeerNodeStatus(now);
+ Logger.normal(this, "shouldDisconnectNow has returned
true : marking the peer as incompatible");
+ continue;
}
boolean mustSend = false;