Author: toad
Date: 2006-05-10 16:08:22 +0000 (Wed, 10 May 2006)
New Revision: 8649

Modified:
   trunk/freenet/src/freenet/node/FNPPacketMangler.java
   trunk/freenet/src/freenet/node/Version.java
Log:
688: Logging to catch disconnection bug.
More testnet nodes would be good.

Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java        2006-05-08 
23:23:07 UTC (rev 8648)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java        2006-05-10 
16:08:22 UTC (rev 8649)
@@ -504,7 +504,7 @@
             Logger.minor(this, "Tracker == null");
             return false;
         }
-        Logger.minor(this,"Entering tryProcess: 
"+buf+","+offset+","+length+","+tracker);
+        Logger.minor(this,"Entering tryProcess: 
"+Fields.hashCode(buf)+","+offset+","+length+","+tracker);
         /**
          * E_pcbc_session(H(seq+random+data)) E_pcfb_session(seq+random+data)
          * 
@@ -517,8 +517,7 @@
             Logger.minor(this, "No cipher");
             return false;
         }
-        if(Logger.shouldLog(Logger.DEBUG, this))
-            Logger.debug(this, "Decrypting with 
"+HexUtil.bytesToHex(tracker.sessionKey));
+        Logger.minor(this, "Decrypting with 
"+HexUtil.bytesToHex(tracker.sessionKey));
         int blockSize = sessionCipher.getBlockSize() >> 3;
         if(sessionCipher.getKeySize() != sessionCipher.getBlockSize())
             throw new IllegalStateException("Block size must be equal to key 
size");
@@ -1195,6 +1194,10 @@
         plaintext[ptr++] = 0;

         System.arraycopy(buf, offset, plaintext, ptr, length);
+        
+        if(ptr + length != plaintext.length) {
+               Logger.error(this, "Inconsistent length: "+plaintext.length+" 
buffer but "+(ptr+length)+" actual");
+        }

         if(seqNumber != -1) {
             byte[] saveable = new byte[length];
@@ -1215,8 +1218,7 @@
      */
     private void processOutgoingFullyFormatted(byte[] plaintext, KeyTracker 
kt, AsyncMessageCallback[] callbacks) {
         BlockCipher sessionCipher = kt.sessionCipher;
-        if(Logger.shouldLog(Logger.DEBUG, this))
-            Logger.debug(this, "Encrypting with 
"+HexUtil.bytesToHex(kt.sessionKey));
+        Logger.minor(this, "Encrypting with 
"+HexUtil.bytesToHex(kt.sessionKey));
         if(sessionCipher == null) {
             Logger.error(this, "Dropping packet send - have not handshaked 
yet");
             return;
@@ -1249,7 +1251,7 @@

         digestTemp = md.digest();

-        //Logger.minor(this, "\nHash:      "+HexUtil.bytesToHex(digestTemp));
+        Logger.minor(this, "\nHash:      "+HexUtil.bytesToHex(digestTemp));

         // Put plaintext in output
         System.arraycopy(digestTemp, 0, output, 0, digestLength);
@@ -1260,7 +1262,7 @@
         System.arraycopy(digestTemp, 0, output, 0, digestLength);
         // Yay, we have an encrypted hash

-        //Logger.minor(this, "\nEncrypted: "+HexUtil.bytesToHex(digestTemp)+" 
("+plaintext.length+" bytes plaintext)");
+        Logger.minor(this, "\nEncrypted: "+HexUtil.bytesToHex(digestTemp)+" 
("+plaintext.length+" bytes plaintext)");

         PCFBMode pcfb = new PCFBMode(sessionCipher, digestTemp);
         pcfb.blockEncipher(output, digestLength, plaintext.length);
@@ -1270,7 +1272,7 @@
         // We have a packet
         // Send it

-        Logger.minor(this,"Sending packet of length "+output.length+" to 
"+kt.pn);
+        Logger.minor(this,"Sending packet of length "+output.length+" (" + 
Fields.hashCode(output) + " to "+kt.pn);

         // pn.getPeer() cannot be null
         usm.sendPacket(output, kt.pn.getPeer());

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-05-08 23:23:07 UTC (rev 
8648)
+++ trunk/freenet/src/freenet/node/Version.java 2006-05-10 16:08:22 UTC (rev 
8649)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 687;
+       private static final int buildNumber = 688;

        /** Oldest build of Fred we will talk to */
        private static final int lastGoodBuild = 591;


Reply via email to