From c0ba6a9f5392be82de6844ab57e13f3b42758503 Mon Sep 17 00:00:00 2001 From: Sean Gilligan Date: Fri, 19 Aug 2022 03:21:25 -0700 Subject: [PATCH] PeerAddress: Add I2P hostname parsing (WIP) Note: this is not verified as correct encoding yet. --- core/src/main/java/org/bitcoinj/core/PeerAddress.java | 5 +++++ 1 file changed, 5 insertions(+) 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;