From 0f3bd99c40594c46b5b4bb0603085ec9cc111e0e Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Mon, 7 Dec 2015 17:48:32 -0500 Subject: child-parent communication --- src/netcosm.h | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'src/netcosm.h') diff --git a/src/netcosm.h b/src/netcosm.h index be6d1a2..f9f0fc4 100644 --- a/src/netcosm.h +++ b/src/netcosm.h @@ -12,6 +12,8 @@ #include #include #include +#include +#include #include #include #include @@ -34,7 +36,7 @@ struct authinfo_t { int authlevel; }; -void client_main(int fd, struct sockaddr_in *addr, int); +void client_main(int sock, struct sockaddr_in *addr, int, int to_parent, int from_parent); void __attribute__((noreturn)) error(const char *fmt, ...); void first_run_setup(void); struct authinfo_t auth_check(const char*, const char*); @@ -48,3 +50,24 @@ void telnet_handle_command(const unsigned char*); void out(const char *fmt, ...) __attribute__((format(printf,1,2))); void out_raw(const unsigned char*, size_t); void telnet_init(void); +void telnet_echo_on(void); +void telnet_echo_off(void); +#define MSG_MAX 512 + +void remove_cruft(char*); + +/* child->master commands */ +#define REQ_INVALID 0 +#define REQ_BCASTMSG 1 +#define REQ_LISTCLIENTS 2 +#define REQ_CHANGESTATE 3 +#define REQ_CHANGEUSER 4 + +#define STATE_INIT 0 +#define STATE_AUTH 1 +#define STATE_CHECKING 2 +#define STATE_LOGGEDIN 3 +#define STATE_ADMIN 4 +#define STATE_FAILED 5 + +void auth_list_users(void); -- cgit v1.1