[freenet-cvs] r15493 - trunk/freenet/src/freenet/node

toad at freenetproject.org toad at freenetproject.org
Tue Oct 23 00:30:47 UTC 2007


Author: toad
Date: 2007-10-23 00:30:47 +0000 (Tue, 23 Oct 2007)
New Revision: 15493

Modified:
   trunk/freenet/src/freenet/node/RequestHandler.java
Log:
Send a noderef to the requestor if either we are passing opennet refs through darknet (we *didn't* do before) or the node is opennet (we did do before).
Do the check in finishOpennetNoRelayInner(). Remove the wrapper.

Modified: trunk/freenet/src/freenet/node/RequestHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestHandler.java	2007-10-23 00:25:04 UTC (rev 15492)
+++ trunk/freenet/src/freenet/node/RequestHandler.java	2007-10-23 00:30:47 UTC (rev 15493)
@@ -151,7 +151,7 @@
             		// We've fetched it from our datastore, so there won't be a downstream noderef.
             		// But we want to send at least an FNPOpennetCompletedAck, otherwise the request source
             		// may have to timeout waiting for one.
-           			finishOpennetNoRelayChecked();
+           			finishOpennetNoRelayInner();
             	}
             }
             return;
@@ -292,24 +292,11 @@
     	finishOpennetRelay(noderef);
     }
     
-	private void finishOpennetNoRelayChecked() {
-		if(!source.isOpennet()) {
-			Message msg = DMT.createFNPOpennetCompletedAck(uid);
-			try {
-				source.sendAsync(msg, null, 0, this);
-			} catch (NotConnectedException e) {
-				// Oh well...
-			}
-			return;
-		}
-		finishOpennetNoRelayInner();
-	}
-	
     private void finishOpennetNoRelayInner() {
     	if(logMINOR)
     		Logger.minor(this, "Finishing opennet: sending own reference");
 		OpennetManager om = node.getOpennet();
-		if(om != null) {
+		if(om != null && (source.isOpennet() || node.passOpennetRefsThroughDarknet())) {
 			if(om.wantPeer(null, false)) {
     			Message msg = DMT.createFNPOpennetConnectDestination(uid, new ShortBuffer(om.crypto.myCompressedFullRef()));
 				try {




More information about the cvs mailing list