From 66e1c94bee7d7988207c1e5c75a0104a8f0b6466 Mon Sep 17 00:00:00 2001
From: zzz <zzz@i2pmail.org>
Date: Wed, 6 Apr 2022 08:22:12 -0400
Subject: [PATCH] Console: Use full hash for links to RI

for efficient lookup and to prevent display of dup prefixes
---
 .../java/src/net/i2p/router/web/helpers/SybilRenderer.java  | 6 +++---
 .../src/net/i2p/router/transport/CommSystemFacadeImpl.java  | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java
index 6655ace1a5..e13c112178 100644
--- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java
+++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java
@@ -716,7 +716,7 @@ public class SybilRenderer {
      *
      */
     private void renderIPGroupsFamily(Writer out, StringBuilder buf, Map<String, List<RouterInfo>> map) throws IOException {
-        buf.append("<h3 id=\"samefamily\" class=\"sybils\">Routers in the same Family</h3><div class=\"sybil_container\">");
+        buf.append("<h3 id=\"samefamily\" class=\"sybils\">Routers in the same family</h3><div class=\"sybil_container\">");
         List<String> foo = new ArrayList<String>(map.keySet());
         Collections.sort(foo, new FoofComparator(map));
         FamilyKeyCrypto fkc = _context.router().getFamilyKeyCrypto();
@@ -836,8 +836,8 @@ public class SybilRenderer {
                            " src=\"/flags.jsp?c=").append(country).append("\"> ").append("</a>");
             }
             if (!full) {
-                buf.append("<a title=\"View extended router info\" class=\"viewfullentry\" href=\"netdb?r=")
-                   .append(hash, 0, 6).append("\" >[").append(_t("Full entry")).append("]</a>");
+                buf.append("<a title=\"").append(_t("View extended router info")).append("\" class=\"viewfullentry\" href=\"netdb?r=")
+                   .append(hash).append("\" >[").append(_t("Full entry")).append("]</a>");
                 buf.append("<a title=\"View profile data\" class=\"viewfullentry\" href=\"viewprofile?peer=")
                    .append(hash).append("\" >[").append(_t("profile")).append("]</a>");
                 buf.append("<a title=\"").append(_t("Configure peer")).append("\" class=\"viewfullentry\" href=\"configpeer?peer=")
diff --git a/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java b/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java
index b81ad80f2c..9e38ec13c4 100644
--- a/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java
+++ b/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java
@@ -619,7 +619,7 @@ public class CommSystemFacadeImpl extends CommSystemFacade {
     /** Provide a consistent "look" for displaying router IDs in the console */
     @Override
     public String renderPeerHTML(Hash peer) {
-        String h = peer.toBase64().substring(0, 4);
+        String h = peer.toBase64();
         StringBuilder buf = new StringBuilder(128);
         String c = getCountry(peer);
         if (c != null) {
@@ -636,7 +636,7 @@ public class CommSystemFacadeImpl extends CommSystemFacade {
         boolean found = _context.netDb().lookupRouterInfoLocally(peer) != null;
         if (found)
             buf.append("<a title=\"").append(_t("NetDb entry")).append("\" href=\"netdb?r=").append(h).append("\">");
-        buf.append(h);
+        buf.append(h, 0, 4);
         if (found)
             buf.append("</a>");
         buf.append("</tt>");
-- 
GitLab