replace mode with flags (only a PROXY flag so far)
diff --git a/libtelnet.h b/libtelnet.h
index f9950ee..6a698c6 100644
--- a/libtelnet.h
+++ b/libtelnet.h
@@ -89,12 +89,8 @@
#define LIBTELNET_TELOPT_ZMP 93
#define LIBTELNET_TELOPT_EXOPL 255
-/* libtelnet modes */
-enum libtelnet_mode_t {
- LIBTELNET_MODE_SERVER = 0,
- LIBTELNET_MODE_CLIENT,
- LIBTELNET_MODE_PROXY
-};
+/* libtelnet feature flags */
+#define LIBTELNET_FLAG_PROXY (1<<0)
/* telnet states */
enum libtelnet_state_t {
@@ -167,15 +163,15 @@
unsigned int length;
/* current state */
enum libtelnet_state_t state;
- /* processing mode */
- enum libtelnet_mode_t mode;
+ /* option flags */
+ unsigned char flags;
/* current subnegotiation telopt */
unsigned char sb_telopt;
};
/* initialize a telnet state tracker */
extern void libtelnet_init(libtelnet_t *telnet, libtelnet_event_handler_t eh,
- libtelnet_mode_t mode, void *user_data);
+ unsigned char flags, void *user_data);
/* free up any memory allocated by a state tracker */
extern void libtelnet_free(libtelnet_t *telnet);