Author: toad
Date: 2007-06-13 14:56:55 +0000 (Wed, 13 Jun 2007)
New Revision: 13557

Modified:
   trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
   trunk/freenet/src/freenet/io/xfer/BulkTransmitter.java
Log:
Don't feed local addresses through the bwlimiter

Modified: trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java     2007-06-13 
14:48:02 UTC (rev 13556)
+++ trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java     2007-06-13 
14:56:55 UTC (rev 13557)
@@ -36,6 +36,7 @@
 import freenet.support.DoubleTokenBucket;
 import freenet.support.Logger;
 import freenet.support.TimeUtil;
+import freenet.support.transport.ip.IPUtil;

 /**
  * @author ian
@@ -144,7 +145,8 @@
                                // Get the current inter-packet delay
                                long end = 
throttle.scheduleDelay(startThrottle);

-                               _masterThrottle.blockingGrab(PACKET_SIZE);
+                               
if(IPUtil.isValidAddress(_destination.getPeer().getAddress(), false))
+                                       
_masterThrottle.blockingGrab(PACKET_SIZE);

                                long now = System.currentTimeMillis();


Modified: trunk/freenet/src/freenet/io/xfer/BulkTransmitter.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BulkTransmitter.java      2007-06-13 
14:48:02 UTC (rev 13556)
+++ trunk/freenet/src/freenet/io/xfer/BulkTransmitter.java      2007-06-13 
14:56:55 UTC (rev 13557)
@@ -13,6 +13,7 @@
 import freenet.support.BitArray;
 import freenet.support.DoubleTokenBucket;
 import freenet.support.Logger;
+import freenet.support.transport.ip.IPUtil;

 /**
  * Bulk data transfer (not block). Bulk transfer is designed for files which 
may be much bigger than a 
@@ -191,7 +192,8 @@
                        long now = System.currentTimeMillis();
                        long waitUntil = peer.getThrottle().scheduleDelay(now);

-                       masterThrottle.blockingGrab(packetSize);
+                       if(IPUtil.isValidAddress(peer.getPeer().getAddress(), 
false))
+                               masterThrottle.blockingGrab(packetSize);

                        while((now = System.currentTimeMillis()) < waitUntil) {
                                long sleepTime = waitUntil - now;


Reply via email to