Author: nextgens
Date: 2006-06-09 11:29:13 +0000 (Fri, 09 Jun 2006)
New Revision: 9092
Modified:
trunk/freenet/src/freenet/node/PeerNode.java
trunk/freenet/src/freenet/node/Version.java
Log:
788: revert r9079 : it seems to be harmfull ; no time to investigate
Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java 2006-06-08 22:39:53 UTC
(rev 9091)
+++ trunk/freenet/src/freenet/node/PeerNode.java 2006-06-09 11:29:13 UTC
(rev 9092)
@@ -819,14 +819,20 @@
}
boolean firstHandshake = true;
-
- private void calcNextHandshake(boolean couldSendHandshake) {
+
+ /**
+ * Call this method when a handshake request has been
+ * sent.
+ */
+ public void sentHandshake() {
+ Logger.debug(this, "sentHandshake(): "+this);
long now = -1;
synchronized(this) {
now = System.currentTimeMillis();
if(verifiedIncompatibleOlderVersion ||
verifiedIncompatibleNewerVersion) {
// Let them know we're here, but have no hope of connecting
sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_VERSION_SENDS
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_SENDS)
+
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_SENDS);
} else if(invalidVersion() && !firstHandshake) {
sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_VERSION_PROBES
@@ -835,11 +841,7 @@
sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_HANDSHAKE_SENDS
+
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_HANDSHAKE_SENDS);
}
- if(couldSendHandshake) {
- firstHandshake = false;
- } else {
- handshakeIPs = null;
- }
+ firstHandshake = false;
this.handshakeCount++;
}
// Don't fetch ARKs for peers we have verified (through handshake) to
be incompatible with us
@@ -860,21 +862,36 @@
}
/**
- * Call this method when a handshake request has been
- * sent.
- */
- public void sentHandshake() {
- Logger.debug(this, "sentHandshake(): "+this);
- calcNextHandshake(true);
- }
-
- /**
* Call this method when a handshake request could not be sent (i.e. no IP
address available)
* sent.
*/
public void couldNotSendHandshake() {
Logger.minor(this, "couldNotSendHandshake(): "+this);
- calcNextHandshake(false);
+ long now = -1;
+ synchronized(this) {
+ now = System.currentTimeMillis();
+ if(verifiedIncompatibleOlderVersion ||
verifiedIncompatibleNewerVersion) {
+ // Let them know we're here, but have no hope of connecting
+ sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_VERSION_SENDS
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_SENDS)
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_SENDS);
+ } else if(invalidVersion() && !firstHandshake) {
+ sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_VERSION_PROBES
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_PROBES)
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_VERSION_PROBES);
+ } else {
+ sendHandshakeTime = now + Node.MIN_TIME_BETWEEN_HANDSHAKE_SENDS
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_HANDSHAKE_SENDS)
+ +
node.random.nextInt(Node.RANDOMIZED_TIME_BETWEEN_HANDSHAKE_SENDS);
+ }
+ handshakeIPs = null;
+ this.handshakeCount++;
+ }
+ // Don't fetch ARKs for peers we have verified (through handshake) to
be incompatible with us
+ if(handshakeCount == MAX_HANDSHAKE_COUNT &&
!(verifiedIncompatibleOlderVersion || verifiedIncompatibleNewerVersion)) {
+ Logger.normal( this, "Starting ARK Fetcher after
"+handshakeCount+" failed handshakes(2) for "+getPeer()+" with identity
'"+getIdentityString()+"'");
+ arkFetcher.start();
+ }
}
/**
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-06-08 22:39:53 UTC (rev
9091)
+++ trunk/freenet/src/freenet/node/Version.java 2006-06-09 11:29:13 UTC (rev
9092)
@@ -18,7 +18,7 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- private static final int buildNumber = 787;
+ private static final int buildNumber = 788;
/** Oldest build of Fred we will talk to */
private static final int lastGoodBuild = 765;