X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=common%2Fserver.h;h=33d7157630975e581376be843c8c4b8cd2a41b43;hb=6deab7a7086ccb592daa0c41e12759ec0b9c7aa0;hp=dfa7eb04ee35ee30db05379f93a297ad44cc08a6;hpb=521bf8a6290d26b27c332639fe8cc4e47c3d5c4f;p=apps%2Fpfixtools.git diff --git a/common/server.h b/common/server.h index dfa7eb0..33d7157 100644 --- a/common/server.h +++ b/common/server.h @@ -39,7 +39,6 @@ #include "buffer.h" typedef struct server_t server_t; -typedef server_t *event_t; #define INVALID_EVENT (NULL) @@ -48,18 +47,17 @@ typedef void (*delete_client_t)(void*); typedef void *(*start_client_t)(server_t*); typedef int (*run_client_t)(server_t*, void*); typedef bool (*refresh_t)(void*); -typedef bool (*event_handler_t)(event_t, void*); +typedef bool (*event_handler_t)(server_t *, void*); struct server_t { unsigned listener : 1; - unsigned event : 1; int fd; - int fd2; buffer_t ibuf; buffer_t obuf; + run_client_t run; delete_client_t clear_data; void* data; }; @@ -67,12 +65,10 @@ ARRAY(server_t); int start_server(int port, start_listener_t starter, delete_client_t deleter); -event_t event_register(void *data); -bool event_fire(event_t event); -#define event_data(event) ((event)->data) +server_t *server_register(int fd, run_client_t runner, void *data); +void server_release(server_t *server); int server_loop(start_client_t starter, delete_client_t deleter, - run_client_t runner, event_handler_t handler, - refresh_t refresh, void *config); + run_client_t runner, refresh_t refresh, void *config); #endif