diff --git a/core/src/main/java/org/bitcoinj/core/PeerAddress.java b/core/src/main/java/org/bitcoinj/core/PeerAddress.java index 03fbe829a..089d972ae 100644 --- a/core/src/main/java/org/bitcoinj/core/PeerAddress.java +++ b/core/src/main/java/org/bitcoinj/core/PeerAddress.java @@ -282,6 +282,11 @@ public class PeerAddress extends ChildMessage { addr = null; break; case I2P: + if (addrLen != 32) + throw new ProtocolException("invalid length of I2P address: " + addrLen); + hostname = BASE32.encode(addrBytes).replace("=","") + ".b32.i2p"; + addr = null; + break; case CJDNS: // ignore unimplemented network IDs for now addr = null;