Author: zothar
Date: 2006-05-05 17:21:30 +0000 (Fri, 05 May 2006)
New Revision: 8606
Modified:
trunk/freenet/src/freenet/io/comm/UdpSocketManager.java
trunk/freenet/src/freenet/node/FNPPacketMangler.java
trunk/freenet/src/freenet/node/PeerNode.java
trunk/freenet/src/freenet/node/Version.java
Log:
673: Do not sent to a peer we don't have an IP address for (probably because
DNS lookup failed) and avoid a couple of exceptions
Modified: trunk/freenet/src/freenet/io/comm/UdpSocketManager.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/UdpSocketManager.java 2006-05-05
01:57:31 UTC (rev 8605)
+++ trunk/freenet/src/freenet/io/comm/UdpSocketManager.java 2006-05-05
17:21:30 UTC (rev 8606)
@@ -464,6 +464,10 @@
* @param destination The peer to send it to.
*/
public void sendPacket(byte[] blockToSend, Peer destination) {
+ if( destination.getAddress() == null ) {
+ Logger.error(this, "Tried sending to bad destination
address: null:" + destination.getPort());
+ return;
+ }
if (_dropProbability > 0) {
if (dropRandom.nextInt() % _dropProbability == 0) {
Logger.minor(this, "DROPPED: " +
_sock.getLocalPort() + " -> " + destination.getPort());
Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java 2006-05-05
01:57:31 UTC (rev 8605)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java 2006-05-05
17:21:30 UTC (rev 8606)
@@ -1294,6 +1294,7 @@
}
for(int i=0;i<pn.getHandshakeIPs().length;i++){
+ if( pn.getHandshakeIPs()[i].getAddress() == null ) continue;
sendFirstHalfDHPacket(0, ctx.getOurExponential(), pn,
pn.getHandshakeIPs()[i]);
pn.sentHandshake();
}
Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java 2006-05-05 01:57:31 UTC
(rev 8605)
+++ trunk/freenet/src/freenet/node/PeerNode.java 2006-05-05 17:21:30 UTC
(rev 8606)
@@ -357,7 +357,7 @@
InetAddress nodeIP = node.getPrimaryIPAddress();
if(nodeIP != null && nodeIP.equals(localhost)) return p;
InetAddress peerIP = detectedPeer.getAddress();
- if(peerIP.equals(localhost)) return p;
+ if(peerIP != null && peerIP.equals(localhost)) return p;
if(nodeIP != null && nodeIP.equals(peerIP)) {
Peer[] newPeers = new Peer[p.length+1];
System.arraycopy(p, 0, newPeers, 0, p.length);
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-05-05 01:57:31 UTC (rev
8605)
+++ trunk/freenet/src/freenet/node/Version.java 2006-05-05 17:21:30 UTC (rev
8606)
@@ -20,7 +20,7 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- private static final int buildNumber = 672;
+ private static final int buildNumber = 673;
/** Oldest build of Fred we will talk to */
private static final int lastGoodBuild = 591;