summaryrefslogtreecommitdiff
path: root/src/clients.h
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2015-05-25 01:21:11 +0200
committerChristian Pointner <equinox@spreadspace.org>2015-05-25 01:21:19 +0200
commit47747b07b5d90d7e90541ed657a03a06a9a3b176 (patch)
tree1110048e00ba3a155e9938034fd618a4b5b4a873 /src/clients.h
parentupdated changelog for release (diff)
try not to loose data when removing client... needs testing!!!
Diffstat (limited to 'src/clients.h')
-rw-r--r--src/clients.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/clients.h b/src/clients.h
index 0c3206a..ce0f371 100644
--- a/src/clients.h
+++ b/src/clients.h
@@ -35,11 +35,14 @@
#define BUFFER_LENGTH 102400
-enum client_state_enum { CONNECTING, CONNECTED };
+enum client_state_enum { CONNECTING, CONNECTED, CLOSING };
typedef enum client_state_enum client_state_t;
+enum client_fd_state_enum { ESTABLISHING, ESTABLISHED, FIN_PENDING, FIN_LINGER, CLOSE_PENDING, CLOSE_LINGER };
+typedef enum client_fd_state_enum client_fd_state_t;
typedef struct {
int fd_[2];
+ client_fd_state_t fd_state_[2];
buffer_t write_buf_[2];
u_int32_t write_buf_offset_[2];
client_state_t state_;