Added public files
Roughly added all public files. Probably missed some, though.
diff --git a/secure/telnetneg-structs.c b/secure/telnetneg-structs.c
new file mode 100644
index 0000000..3efeeae
--- /dev/null
+++ b/secure/telnetneg-structs.c
@@ -0,0 +1,47 @@
+// MorgenGrauen MUDlib
+//
+// telnetneg-structs.c -- Structs fuer die Telnet Option handler
+//
+#pragma strict_types,save_types
+#pragma range_check
+#pragma no_clone
+#pragma no_shadow
+#pragma pedantic
+
+struct to_state_s {
+ int localside; // wish for the local side (MUD)
+ int remoteside; // wish for the remote side (CLIENT)
+ int *sbdata; // last SB data sent/received by us
+};
+
+struct telopt_s {
+ int option;
+ // Receivehandler, wird gerufen, wenn wir vom Client irgendwas bzgl. dieser
+ // Telnet Option empfangen. Wenn gesetzt, darf der Client die Option
+ // einschalten.
+ closure remotehandler;
+ // Wird gerufen, wenn die Option auf unserer Seite eingeschaltet wurde.
+ // Wenn gesetzt, soll versucht werden, die Option auf Mudseite
+ // einzuschalten
+ closure localhandler;
+ // Die Wuensche _waehrend_ einer Verhandlung (bzw. gesendete (lo_wishes) und
+ // empfangene (re_wishes) SB-Daten auch ausserhalb von Verhandlungen).
+ struct to_state_s lo_wishes; // our wishes (sent by us)
+ struct to_state_s re_wishes; // remote wishes (received by us)
+ // currently effective/active state
+ struct to_state_s state;
+ // data used by the handlers - NOT USED BY this program!
+ mixed data;
+};
+/* explanations:
+ telopt_s->lo_wishes->localside: the state we want to be in (WILL/WONT)
+ telopt_s->lo_wishes->remoteside: the state we want the other side to
+ be in (DO/DONT)
+ telopt_s->re_wishes->localside: the state the other side wants US to be in
+ (DO/DONT)
+ telopt_s->re_wishes->remoteside: the state the other side wants to be in
+ (WILL/WONT)
+ telopt_s->state: the currently effective state of the option on the two
+ sides.
+ */
+