Author: zothar
Date: 2008-01-21 16:59:13 +0000 (Mon, 21 Jan 2008)
New Revision: 17186

Modified:
   trunk/freenet/src/freenet/node/PeerNode.java
Log:
physical.udp is now clearly completely optional as a field in ARKs and other 
ref processing for an already existing peer

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2008-01-21 15:26:20 UTC 
(rev 17185)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2008-01-21 16:59:13 UTC 
(rev 17186)
@@ -2156,7 +2156,11 @@
                        throw new FSParseException(e1);
                }

-               if(!forDiffNodeRef || refHadPhysicalUDP) {
+               // Don't act as if we got an empty physical.udp if we didn't
+               // even have that field in our ref for builds 1102 and later,
+               // making the physical.udp field itself clearly optional in all
+               // new-ref-for-existing-peer contexts
+               if(refHadPhysicalUDP || (!forDiffNodeRef && 1102 > 
simpleVersion)) {
                        if(!Arrays.equals(oldPeers, nominalPeer.toArray(new 
Peer[nominalPeer.size()]))) {
                                changedAnything = true;
                                lastAttemptedHandshakeIPUpdateTime = 0;


Reply via email to