Author: toad
Date: 2007-07-04 22:59:32 +0000 (Wed, 04 Jul 2007)
New Revision: 13934
Modified:
trunk/freenet/src/freenet/node/FNPPacketMangler.java
Log:
Fix a connectivity bug (we were looping the first connectedPeers.length of
myPeers!).
Debugging opennet failure to connect.
Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java 2007-07-04
22:25:01 UTC (rev 13933)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java 2007-07-04
22:59:32 UTC (rev 13934)
@@ -113,6 +113,10 @@
* occasionally change their IP addresses).
*/
PeerNode opn = node.peers.getByPeer(peer);
+ if(opn.getOutgoingMangler() != this) {
+ Logger.error(this, "Apparently contacted by "+opn+") on "+this);
+ opn = null;
+ }
PeerNode pn;
if(opn != null) {
@@ -129,9 +133,10 @@
if(tryProcessAuth(buf, offset, length, opn, peer)) return;
}
}
+ PeerNode[] peers = crypto.getPeerNodes();
if(length > HASH_LENGTH + RANDOM_BYTES_LENGTH + 4 + 6) {
- for(int i=0;i<node.peers.connectedPeers.length;i++) {
- pn = node.peers.myPeers[i];
+ for(int i=0;i<peers.length;i++) {
+ pn = peers[i];
if(pn == opn) continue;
if(tryProcess(buf, offset, length, pn.getCurrentKeyTracker()))
{
// IP address change
@@ -151,8 +156,8 @@
}
}
if(length > Node.SYMMETRIC_KEY_LENGTH /* iv */ + HASH_LENGTH + 2) {
- for(int i=0;i<node.peers.myPeers.length;i++) {
- pn = node.peers.myPeers[i];
+ for(int i=0;i<peers.length;i++) {
+ pn = peers[i];
if(pn == opn) continue;
if(tryProcessAuth(buf, offset, length, pn, peer)) return;
}