Vor Senden von UDP in bytes wandeln.

send_udp() benoetigt (natuerlich) eine Byte-Sequenz. Und klassisch
wird im Intermud nur ASCII benutzt, daher Wandlung nach ASCII-only.
Eigentlich waere deutlich vorher praktischer (da man dann auch
transliterieren kann), aber dazu muesste man den Code deutlich
umbauen.

Change-Id: I39b9644e067589e53a72d3658854950dc31571a4
diff --git a/secure/inetd.c b/secure/inetd.c
index 921a41e..31a63de 100644
--- a/secure/inetd.c
+++ b/secure/inetd.c
@@ -596,11 +596,15 @@
         }
         header = encode(indices[i]);
         body = encode(data[indices[i]]);
+        // Eigentlich sollte encode auch die Wandlung in bytes uebernehmen und
+        // dabei nach ASCII wandeln und ggf. transliterieren. Aber sscanf
+        // braucht wieder strings, daher muss es spaeter passieren (direkt vor
+        // Senden).
         if (sscanf(header, "%s:%s", t1, t2) ||
             sscanf(header + body, "%s" + DELIMITER + "%s", t1, t2)
         )
             return 0;
-        
+
         ret += ({ header + ":" + body });
     }
     if (data_flag)
@@ -719,7 +723,7 @@
             PACKET + ":" + lower_case(LOCAL_NAME) + ":" +
             ((expect_reply || data[REQUEST] != REPLY)&& data[ID] ?
             data[ID] : ++packet_id) + ":";
-        
+
         /* Allow 8 extra chars: 3 digits + "/" + 3 digits + DELIMITER */
         packet_arr = explode_packet(packet,
             MAX_PACKET_LEN - (sizeof(header) + 8));
@@ -728,12 +732,15 @@
             packet_arr[i] =
             header + (i+1) + "/" + max + DELIMITER + packet_arr[i];
     }
-    
+
     for(i = sizeof(packet_arr); i--; )
     {
       ZDEBUG(sprintf("%O <- %.500O\n",host_data[HOST_IP], packet_arr[i]));
-      if (!send_udp(
-        host_data[HOST_IP], host_data[HOST_UDP_PORT], packet_arr[i]))
+      // Transliterationen koennten in : oder DELIMETER
+      // resultieren, weswegen das (hier) nicht geht. Daher bleibt nur
+      // uebrig, alles nicht-ASCII wegzuwerfen.
+      if (!send_udp(host_data[HOST_IP], host_data[HOST_UDP_PORT],
+                    to_bytes(packet_arr[i], "ASCII")))
             return "inetd: Error in sending packet.\n";
     }
     return 0;