Author: toad
Date: 2007-12-10 18:14:09 +0000 (Mon, 10 Dec 2007)
New Revision: 16446

Modified:
   trunk/freenet/src/freenet/node/FNPPacketMangler.java
Log:
Must not be <0

Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java        2007-12-10 
18:08:07 UTC (rev 16445)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java        2007-12-10 
18:14:09 UTC (rev 16446)
@@ -1569,6 +1569,8 @@
                if(logMINOR) Logger.minor(this, "Data hash: 
"+HexUtil.bytesToHex(hash));
                int prePaddingLength = iv.length + hash.length + 2 /* length */ 
+ output.length;
                int paddingLength = node.fastWeakRandom.nextInt(Math.min(100, 
sock.getMaxPacketSize() - HEADERS_LENGTH_MINIMUM - prePaddingLength));
+               // Sometimes we have to send oversize packets (especially 
JFK3/4 with anonymous-initiator)
+               if(paddingLength < 0) paddingLength = 0;
                byte[] data = new byte[prePaddingLength + paddingLength];
                pcfb.reset(iv);
                System.arraycopy(iv, 0, data, 0, iv.length);


Reply via email to