Author: toad
Date: 2007-12-14 14:22:07 +0000 (Fri, 14 Dec 2007)
New Revision: 16531

Modified:
   trunk/freenet/src/freenet/node/PeerNode.java
Log:
comment

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2007-12-14 14:20:46 UTC 
(rev 16530)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2007-12-14 14:22:07 UTC 
(rev 16531)
@@ -313,8 +313,9 @@
        * @param fs The SimpleFieldSet to parse
        * @param node2 The running Node we are part of.
        */
-       public PeerNode(SimpleFieldSet fs, Node node2, NodeCrypto crypto, 
PeerManager peers, boolean fromLocal, boolean noSig, OutgoingPacketMangler 
mangler, boolean isOpennet) throws FSParseException, PeerParseException, 
ReferenceSignatureVerificationException {
-               if(fromLocal) noSig = true;
+       public PeerNode(SimpleFieldSet fs, Node node2, NodeCrypto crypto, 
PeerManager peers, boolean fromLocal, boolean fromAnonymousInitiator, 
OutgoingPacketMangler mangler, boolean isOpennet) throws FSParseException, 
PeerParseException, ReferenceSignatureVerificationException {
+               boolean noSig = false;
+               if(fromLocal || fromAnonymousInitiator) noSig = true;
                logMINOR = Logger.shouldLog(Logger.MINOR, PeerNode.class);
                myRef = new WeakReference(this);
                this.outgoingMangler = mangler;
@@ -393,8 +394,12 @@
                        detectedPeer = (Peer) nominalPeer.firstElement();
                }
                negTypes = fs.getIntArray("auth.negTypes");
-               if(negTypes == null || negTypes.length == 0)
-                       negTypes = new int[]{0};
+               if(negTypes == null || negTypes.length == 0) {
+                       if(fromAnonymousInitiator)
+                               negTypes = mangler.supportedNegTypes(); // 
Assume compatible. Anonymous initiator = short-lived, and we already connected 
so we know we are.
+                       else
+                               throw new FSParseException("No negTypes!");
+               }

                if((!fromLocal) && fs.getBoolean("opennet", false) != isOpennet)
                        throw new FSParseException("Trying to parse a darknet 
peer as opennet or an opennet peer as darknet");


Reply via email to