Author: toad
Date: 2007-07-04 17:42:18 +0000 (Wed, 04 Jul 2007)
New Revision: 13919
Modified:
trunk/freenet/src/freenet/node/OpennetManager.java
trunk/freenet/src/freenet/node/OpennetPeerNode.java
trunk/freenet/src/freenet/node/PeerManager.java
Log:
Remove opennet peers when opennet is disabled, don't route to opennet peers if
opennet is disabled
Modified: trunk/freenet/src/freenet/node/OpennetManager.java
===================================================================
--- trunk/freenet/src/freenet/node/OpennetManager.java 2007-07-04 17:27:47 UTC
(rev 13918)
+++ trunk/freenet/src/freenet/node/OpennetManager.java 2007-07-04 17:42:18 UTC
(rev 13919)
@@ -38,6 +38,7 @@
}
}
node.peers.tryReadPeers(new File(node.nodeDir,
"openpeers-"+crypto.portNumber).toString(), crypto, true);
+
}
private void readFile(String filename) throws IOException {
@@ -80,6 +81,7 @@
*/
public void stop() {
crypto.stop();
+ node.peers.removeOpennetPeers();
}
}
Modified: trunk/freenet/src/freenet/node/OpennetPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/OpennetPeerNode.java 2007-07-04 17:27:47 UTC
(rev 13918)
+++ trunk/freenet/src/freenet/node/OpennetPeerNode.java 2007-07-04 17:42:18 UTC
(rev 13919)
@@ -14,4 +14,8 @@
return new OpennetPeerNodeStatus(this);
}
+ public boolean isRoutingCompatible() {
+ if(node.isOpennetEnabled()) return false;
+ return super.isRoutingCompatible();
+ }
}
Modified: trunk/freenet/src/freenet/node/PeerManager.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerManager.java 2007-07-04 17:27:47 UTC
(rev 13918)
+++ trunk/freenet/src/freenet/node/PeerManager.java 2007-07-04 17:42:18 UTC
(rev 13919)
@@ -1211,4 +1211,20 @@
}
return false;
}
+
+ public void removeOpennetPeers() {
+ synchronized(this) {
+ Vector keep = new Vector();
+ Vector conn = new Vector();
+ for(int i=0;i<myPeers.length;i++) {
+ PeerNode pn = myPeers[i];
+ if(pn instanceof OpennetPeerNode) continue;
+ keep.add(pn);
+ if(pn.isConnected()) conn.add(pn);
+ }
+ myPeers = (PeerNode[]) keep.toArray(new
PeerNode[keep.size()]);
+ connectedPeers = (PeerNode[]) keep.toArray(new
PeerNode[conn.size()]);
+ }
+ updatePMUserAlert();
+ }
}