From ce349639397c8bdb53e51f7ce5cd668d42391596 Mon Sep 17 00:00:00 2001 From: zzz Date: Wed, 12 Aug 2026 10:55:45 -0400 Subject: [PATCH] i2psnark: PeerID cleanups - Make destHash final - Use destHash.hashCode() for hashCode() - Use b32 for toString() if full dest not known --- .../i2psnark/java/src/org/klomp/snark/PeerID.java | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerID.java b/apps/i2psnark/java/src/org/klomp/snark/PeerID.java index fb16e676e..fcd7484bf 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerID.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerID.java @@ -47,10 +47,9 @@ public class PeerID implements Comparable private byte[] id; private Destination address; private final int port; - private byte[] destHash; + private final byte[] destHash; /** whether we have tried to get the dest from the hash - only do once */ private boolean triedDestLookup; - private final int hash; private final I2PSnarkUtil util; private String _toStringCache; @@ -60,7 +59,6 @@ public class PeerID implements Comparable this.address = address; this.port = TrackerClient.PORT; this.destHash = address.calculateHash().getData(); - hash = calculateHash(); util = null; } @@ -100,7 +98,6 @@ public class PeerID implements Comparable port = TrackerClient.PORT; this.destHash = address.calculateHash().getData(); - hash = calculateHash(); util = null; } @@ -116,7 +113,6 @@ public class PeerID implements Comparable if (dest_hash.length != 32) throw new InvalidBEncodingException("bad hash length"); destHash = dest_hash; - hash = DataHelper.hashCode(dest_hash); this.util = util; } @@ -159,18 +155,13 @@ public class PeerID implements Comparable return destHash; } - private int calculateHash() - { - return DataHelper.hashCode(destHash); - } - /** * The hash code of a PeerID is the hashcode of the desthash */ @Override public int hashCode() { - return hash; + return (int) DataHelper.fromLong(destHash, 0, 4); } /** @@ -239,7 +230,7 @@ public class PeerID implements Comparable return _toStringCache; } if (id == null || address == null) - return "unkn@" + Base64.encode(destHash, 0, 3); + return "unkn@" + Base32.encode(destHash) + ".b32.i2p"; int nonZero = 0; for (int i = 0; i < id.length; i++) { if (id[i] != 0) {