Author: toad
Date: 2007-12-14 15:02:20 +0000 (Fri, 14 Dec 2007)
New Revision: 16540

Modified:
   trunk/freenet/src/freenet/node/AnnounceSender.java
   trunk/freenet/src/freenet/node/FNPPacketMangler.java
   trunk/freenet/src/freenet/node/NodeCrypto.java
   trunk/freenet/src/freenet/node/OpennetManager.java
   trunk/freenet/src/freenet/node/RequestHandler.java
   trunk/freenet/src/freenet/node/RequestSender.java
Log:
Anon initiator: opennet= is specified by the setup type

Modified: trunk/freenet/src/freenet/node/AnnounceSender.java
===================================================================
--- trunk/freenet/src/freenet/node/AnnounceSender.java  2007-12-14 14:57:50 UTC 
(rev 16539)
+++ trunk/freenet/src/freenet/node/AnnounceSender.java  2007-12-14 15:02:20 UTC 
(rev 16540)
@@ -340,7 +340,7 @@
                if(noderefBuf == null) {
                        return true; // Don't relay
                }
-               SimpleFieldSet fs = om.validateNoderef(noderefBuf, 0, 
noderefLength, next);
+               SimpleFieldSet fs = om.validateNoderef(noderefBuf, 0, 
noderefLength, next, false);
                if(fs == null) {
                        if(cb != null) cb.bogusNoderef("invalid noderef");
                        return true; // Don't relay
@@ -436,7 +436,7 @@
                if(noderefBuf == null) {
                        return false;
                }
-               SimpleFieldSet fs = om.validateNoderef(noderefBuf, 0, 
noderefLength, source);
+               SimpleFieldSet fs = om.validateNoderef(noderefBuf, 0, 
noderefLength, source, false);
                if(fs == null) {
                        om.rejectRef(uid, source, DMT.NODEREF_REJECTED_INVALID, 
this);
                        return false;

Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java        2007-12-14 
14:57:50 UTC (rev 16539)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java        2007-12-14 
15:02:20 UTC (rev 16540)
@@ -1160,7 +1160,7 @@
                                // FIXME Send some sort of explicit rejection 
message.
                                return null;
                        }
-                       SimpleFieldSet ref = om.validateNoderef(hisRef, 0, 
hisRef.length, null);
+                       SimpleFieldSet ref = om.validateNoderef(hisRef, 0, 
hisRef.length, null, true);
                        if(ref == null) {
                                Logger.error(this, "Invalid noderef");
                                // FIXME Send some sort of explicit rejection 
message.

Modified: trunk/freenet/src/freenet/node/NodeCrypto.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeCrypto.java      2007-12-14 14:57:50 UTC 
(rev 16539)
+++ trunk/freenet/src/freenet/node/NodeCrypto.java      2007-12-14 15:02:20 UTC 
(rev 16540)
@@ -297,15 +297,17 @@
                // Negotiation types
                fs.putSingle("version", Version.getVersionString()); // Keep, 
vital that peer know our version. For example, some types may be sent in 
different formats to different node versions (e.g. Peer).
                fs.putSingle("lastGoodVersion", 
Version.getLastGoodVersionString()); // Also vital
-               fs.put("testnet", node.testnetEnabled); // Vital that peer know 
this!
+               // FIXME move inside bracket after next mandatory.
+               fs.put("testnet", node.testnetEnabled);
                if(node.testnetEnabled) {
                        fs.put("testnetPort", node.testnetHandler.getPort()); 
// Useful, saves a lot of complexity
                }
                if(!isOpennet)
                        fs.putSingle("myName", node.getMyName()); // FIXME see 
#942
-               fs.put("opennet", isOpennet);

-               //if(!forAnonInitiator) { FIXME re-enable check once related 
changes are mandatory
+               if(!forAnonInitiator) {
+                       // Anonymous initiator setup type specifies whether the 
node is opennet or not.
+                       fs.put("opennet", isOpennet);
                        synchronized (referenceSync) {
                                if(myReferenceSignature == null || 
mySignedReference == null || !mySignedReference.equals(fs.toOrderedString())){
                                        mySignedReference = 
fs.toOrderedString();
@@ -317,7 +319,7 @@
                                }
                                fs.putSingle("sig", 
myReferenceSignature.toLongString());
                        }
-               //}
+               }

                if(logMINOR) Logger.minor(this, "My reference: 
"+fs.toOrderedString());
                return fs;

Modified: trunk/freenet/src/freenet/node/OpennetManager.java
===================================================================
--- trunk/freenet/src/freenet/node/OpennetManager.java  2007-12-14 14:57:50 UTC 
(rev 16539)
+++ trunk/freenet/src/freenet/node/OpennetManager.java  2007-12-14 15:02:20 UTC 
(rev 16540)
@@ -632,7 +632,7 @@
                }
        }

-       public SimpleFieldSet validateNoderef(byte[] noderef, int offset, int 
length, PeerNode from) {
+       public SimpleFieldSet validateNoderef(byte[] noderef, int offset, int 
length, PeerNode from, boolean forceOpennetEnabled) {
        SimpleFieldSet ref;
                try {
                        ref = PeerNode.compressedNoderefToFieldSet(noderef, 0, 
noderef.length);
@@ -640,6 +640,8 @@
                        Logger.error(this, "Invalid noderef: "+e, e);
                        return null;
                }
+               if(forceOpennetEnabled)
+                       ref.put("opennet", true);

                if(!OpennetPeerNode.validateRef(ref)) {
                        Logger.error(this, "Could not parse opennet noderef for 
"+this+" from "+from);

Modified: trunk/freenet/src/freenet/node/RequestHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestHandler.java  2007-12-14 14:57:50 UTC 
(rev 16539)
+++ trunk/freenet/src/freenet/node/RequestHandler.java  2007-12-14 15:02:20 UTC 
(rev 16540)
@@ -392,7 +392,7 @@
                if(noderef == null)
                        return false;

-               SimpleFieldSet ref = om.validateNoderef(noderef, 0, 
noderef.length, source);
+               SimpleFieldSet ref = om.validateNoderef(noderef, 0, 
noderef.length, source, false);

                if(ref == null) 
                        return false;
@@ -443,7 +443,7 @@

                // Send it forward to the data source, if it is valid.

-               if(om.validateNoderef(newNoderef, 0, newNoderef.length, source) 
!= null) {
+               if(om.validateNoderef(newNoderef, 0, newNoderef.length, source, 
false) != null) {
                        try {
                                om.sendOpennetRef(true, uid, dataSource, 
newNoderef, this);
                        } catch (NotConnectedException e) {

Modified: trunk/freenet/src/freenet/node/RequestSender.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestSender.java   2007-12-14 14:57:50 UTC 
(rev 16539)
+++ trunk/freenet/src/freenet/node/RequestSender.java   2007-12-14 15:02:20 UTC 
(rev 16540)
@@ -682,7 +682,7 @@

                if(noderef == null) return;

-               SimpleFieldSet ref = om.validateNoderef(noderef, 0, 
noderef.length, next);
+               SimpleFieldSet ref = om.validateNoderef(noderef, 0, 
noderef.length, next, false);

                if(ref == null) return;



Reply via email to