remove() eingebaut.

Auch der INETD darf sich ruhig kontrolliert entfernen lassen
statt nur hart per destruct. Ausserdem sollte beim Entladen
die aktuelle Hostliste geschrieben/gedumpt werden.

Allerdings benoetigt es nun fuer das Entladen per remove()
EM+-Rechte.

Change-Id: I6b9701b02ef26234ec81df688d6d5e93f7758bce
diff --git a/secure/inetd.c b/secure/inetd.c
index 9c6baa5..23ab51c 100644
--- a/secure/inetd.c
+++ b/secure/inetd.c
@@ -22,6 +22,7 @@
 #define ZDEBUG(x)
 
 #include <udp.h>
+#include <wizlevels.h>
 
 /* --- Configurable definitions. --- */
 
@@ -252,6 +253,18 @@
       call_out(#'startup, 4, muds);
 }
 
+varargs int remove(int silent)
+{
+  if (!ARCH_SECURITY)
+    return 0;
+
+  // Hostliste dumpen bevor die verlorengeht.
+  dump_hosts_list();
+
+  destruct(this_object());
+  return 1;
+}
+
 /*
  * Remove a buffered packet from the "incoming_packets" mapping.
  */