Author: toad
Date: 2006-09-27 00:11:52 +0000 (Wed, 27 Sep 2006)
New Revision: 10515
Modified:
trunk/freenet/src/freenet/node/NodeDispatcher.java
Log:
Probe request fixes.
Modified: trunk/freenet/src/freenet/node/NodeDispatcher.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeDispatcher.java 2006-09-26 23:18:01 UTC
(rev 10514)
+++ trunk/freenet/src/freenet/node/NodeDispatcher.java 2006-09-27 00:11:52 UTC
(rev 10515)
@@ -477,10 +477,12 @@
synchronized(recentProbeContexts) {
if(checkRecent) {
long now = System.currentTimeMillis();
- if(now - tLastReceivedProbeRequest < 1000) {
+ if(now - tLastReceivedProbeRequest < 500) {
rejected = true;
- } else
+ } else {
tLastReceivedProbeRequest = now;
+ counter++; // Accepted it; another hop
+ }
}
if(!rejected) {
ctx = (ProbeContext)
recentProbeContexts.get(lid);
@@ -529,6 +531,9 @@
if(myLoc > target && myLoc < best)
best = myLoc;
+ if(ctx.best > target && ctx.best < best)
+ best = ctx.best;
+
for(int i=0;i<peers.length;i++) {
if(!peers[i].isConnected()) {
if(logMINOR)
@@ -550,7 +555,7 @@
// Update nearest
- if(PeerManager.distance(myLoc, target) >
PeerManager.distance(nearest, target)) {
+ if(PeerManager.distance(myLoc, target) <
PeerManager.distance(nearest, target)) {
nearest = myLoc;
htl = Node.MAX_HTL;
} else {