Author: toad
Date: 2007-12-04 17:46:07 +0000 (Tue, 04 Dec 2007)
New Revision: 16269

Modified:
   trunk/freenet/src/freenet/node/NodeDispatcher.java
Log:
Reject announcements if the source is not an opennet peer and 
passOpennetRefsThroughDarknet is not enabled.
As well as rejecting if opennet is disabled, which we already did.

Modified: trunk/freenet/src/freenet/node/NodeDispatcher.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeDispatcher.java  2007-12-04 17:36:04 UTC 
(rev 16268)
+++ trunk/freenet/src/freenet/node/NodeDispatcher.java  2007-12-04 17:46:07 UTC 
(rev 16269)
@@ -270,7 +270,8 @@
        private boolean handleAnnounceRequest(Message m, PeerNode source) {
                long uid = m.getLong(DMT.UID);
                OpennetManager om = node.getOpennet();
-               if(om == null) {
+               if(om == null || 
+                               ((!source.isOpennet()) && 
(!node.passOpennetRefsThroughDarknet()))) {
                        Message msg = DMT.createFNPOpennetDisabled(uid);
                        try {
                                source.sendAsync(msg, null, 0, null);


Reply via email to