Merge branch 'master' of ssh://mgg/mudlib-public
diff --git a/secure/master/network.c b/secure/master/network.c
index 35f202d..31a59b3 100644
--- a/secure/master/network.c
+++ b/secure/master/network.c
@@ -109,13 +109,29 @@
   // gewesen. Davon geht auch aller hier gerufener Code aus. Daher wird jetzt
   // hier zentral die Bytesequenz als ASCII interpretiert und in string
   // gewandelt, der dann wie bislang auch verarbeitet wird.
+  // Fuer Nachrichten von unserem eigenen IP-Lookup-Dienst gibts aber eine
+  // Ausnahme.
   string msg_text;
-  if (catch(msg_text = to_text(message, "ASCII");publish))
+  
+  if (host=="127.0.0.1" && port==8711)
   {
-    msg_text = to_text(message, "ISO8859-1");
-    log_file("UDP_INVALID",sprintf(
-      "Nachricht von %s mit nicht-ASCII-Zeichen: %s\n",
-      host, msg_text));
+    if (catch(msg_text = to_text(message, "UTF-8");publish))
+    {
+      msg_text = to_text(message, "ISO8859-1");
+      log_file("UDP_INVALID",sprintf(
+        "Nachricht von %s:%d mit nicht-UTF8-Zeichen: %s\n",
+        host, port, msg_text));
+    }
+  }
+  else
+  {
+    if (catch(msg_text = to_text(message, "ASCII");publish))
+    {
+      msg_text = to_text(message, "ISO8859-1");
+      log_file("UDP_INVALID",sprintf(
+        "Nachricht von %s:%d mit nicht-ASCII-Zeichen: %s\n",
+        host, port, msg_text));
+    }
   }
 
   UDP_DEBUG(sprintf("%s %s:%d: %s\n",strftime(),host,port,msg_text));