diff --git a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java index 5dd10771c61bc255dc25db0f64cfe538b77bda8f..37be6c0cd0619bca7007a8709f46f9834bf701ce 100644 --- a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java +++ b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java @@ -1332,6 +1332,7 @@ class PeerTestManager { state.getAliceIntroKey(), false, sendId, rcvId, data); _transport.send(packet); + // for now, ignore address block, we could pass it to externalAddressReceived() break; } @@ -1350,13 +1351,17 @@ class PeerTestManager { test.setReceiveCharlieTime(now); // use the IP/port from the address block test.setAlicePortFromCharlie(addrBlockPort); - try { - InetAddress addr = InetAddress.getByAddress(addrBlockIP); - test.setAliceIPFromCharlie(addr); - } catch (UnknownHostException uhe) { - if (_log.shouldWarn()) - _log.warn("Charlie @ " + from + " said we were an invalid IP address: " + uhe.getMessage(), uhe); - _context.statManager().addRateData("udp.testBadIP", 1); + if (addrBlockIP != null) { + try { + InetAddress addr = InetAddress.getByAddress(addrBlockIP); + test.setAliceIPFromCharlie(addr); + } catch (UnknownHostException uhe) { + if (_log.shouldWarn()) + _log.warn("Charlie @ " + from + " said we were an invalid IP address: " + uhe.getMessage(), uhe); + _context.statManager().addRateData("udp.testBadIP", 1); + } + } else { + test.setAliceIPFromCharlie(test.getAliceIP()); } if (test.getReceiveBobTime() > 0) testComplete();