site

(djk)
2011-04-02: Fix display of human readable names.

Fix display of human readable names.

diff --git a/alien/src/fmsutil/FMSConnection.java b/alien/src/fmsutil/FMSConnection.java
--- a/alien/src/fmsutil/FMSConnection.java
+++ b/alien/src/fmsutil/FMSConnection.java
@@ -1,3 +1,4 @@
+// LATER: Rename this file. It is used for both FMS and Freetalk.
 /* Subclass the GNU inetlib NNTPClass to support FMS XGETTRUST.
  *
  *  Copyright (C) 2010, 2011 Darrell Karbott
@@ -50,11 +51,18 @@ class FMSConnection extends NNTPConnecti
         super(host, port);
     }
 
+    public boolean supportsXGETTRUST() {
+        if (getWelcome() == null) {
+            return false;
+        }
+        return getWelcome().indexOf("Freetalk") == -1;
+    }
+
     // Hmmmm... would be better to raise NNTPExceptions here.
     // Returns -1 for 'null' trust.
     public int xgettrust(int kind, String fmsId) throws IOException {
-        if (fmsId.indexOf("@") != -1) {
-            return -1;
+        if (!supportsXGETTRUST()) {
+            return -1; // Freetalk doesn't support trust extensions.
         }
         send(String.format("XGETTRUST %s %s", trustKindToString(kind), fmsId));
         String reply = read();
diff --git a/src/fniki/wiki/ArchiveManager.java b/src/fniki/wiki/ArchiveManager.java
--- a/src/fniki/wiki/ArchiveManager.java
+++ b/src/fniki/wiki/ArchiveManager.java
@@ -323,6 +323,14 @@ public class ArchiveManager {
             if (fields.length != 2) {
                 continue;
             }
+
+            if (fields[1].endsWith(".freetalk")) {
+                // Scrub .freetalk suffix. i.e. we want only the raw public hash part
+                // so we can lookup from public SSK's.
+                fields[1] = fields[1].substring(0, fields[1].lastIndexOf(".freetalk"));
+            }
+
+            System.err.println("SETTING: " + fields[1] + "->" + fields[0]);
             mNymLut.put(fields[1].trim(), fields[0].trim());
         }