diff options
Diffstat (limited to 'src/server.h')
| -rw-r--r-- | src/server.h | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/server.h b/src/server.h index af7e9fc..95e537a 100644 --- a/src/server.h +++ b/src/server.h @@ -26,21 +26,29 @@ #include "server_reqs.h" #include "room.h" +/* everything the server needs to manage its children */ struct child_data { - pid_t pid; - int readpipe[2]; - int outpipe[2]; + pid_t pid; - int state; - room_id room; - char *user; + /* pipes, packet mode */ + int readpipe[2]; + int outpipe[2]; - ev_io *io_watcher; + /* user state */ + int state; + room_id room; + char *user; + + /* libev watchers */ + ev_io *io_watcher; ev_child *sigchld_watcher; + /* remote IP */ struct in_addr addr; }; +typedef struct child_data user_t; + extern volatile int num_clients; extern void *child_map; extern bool are_child; |