Author: toad
Date: 2007-09-21 16:46:14 +0000 (Fri, 21 Sep 2007)
New Revision: 15240
Modified:
trunk/freenet/src/freenet/node/RequestHandler.java
Log:
Always send an FNPOpennetCompletedAck if we don't send a noderef. Then
downstream opennet nodes won't timeout even if we are pure darknet.
Modified: trunk/freenet/src/freenet/node/RequestHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestHandler.java 2007-09-21 16:41:09 UTC
(rev 15239)
+++ trunk/freenet/src/freenet/node/RequestHandler.java 2007-09-21 16:46:14 UTC
(rev 15240)
@@ -262,7 +262,15 @@
}
private void finishOpennetChecked() {
- if(!(node.passOpennetRefsThroughDarknet() ||
source.isOpennet())) return;
+ if(!(node.passOpennetRefsThroughDarknet() ||
source.isOpennet())) {
+ Message msg = DMT.createFNPOpennetCompletedAck(uid);
+ try {
+ source.sendAsync(msg, null, 0, this);
+ } catch (NotConnectedException e) {
+ // Oh well...
+ }
+ return;
+ }
finishOpennetInner();
}
@@ -282,7 +290,15 @@
}
private void finishOpennetNoRelayChecked() {
- if(!(node.passOpennetRefsThroughDarknet() ||
source.isOpennet())) return;
+ if(!(node.passOpennetRefsThroughDarknet() ||
source.isOpennet())) {
+ Message msg = DMT.createFNPOpennetCompletedAck(uid);
+ try {
+ source.sendAsync(msg, null, 0, this);
+ } catch (NotConnectedException e) {
+ // Oh well...
+ }
+ return;
+ }
finishOpennetNoRelayInner();
}