X-Git-Url: http://git.madism.org/?p=apps%2Fpfixtools.git;a=blobdiff_plain;f=common%2Fserver.h;h=85cbae4edc3b2a346bc6d432e0ca96e46872aa55;hp=a552dbed61cfa50d2553e52fcd7a044bea5b0d47;hb=ae0c2eb5d2ea501fd9e458fc138696c268a14569;hpb=a195f9a648c32226b3b2ec4bb44a69a44ff5e51d diff --git a/common/server.h b/common/server.h index a552dbe..85cbae4 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,7 +47,7 @@ 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; @@ -67,8 +66,12 @@ ARRAY(server_t); int start_server(int port, start_listener_t starter, delete_client_t deleter); -event_t event_register(int fd, void *data); -bool event_fire(event_t event); +void server_release(server_t *server); + +server_t *event_register(int fd, void *data); +bool event_fire(server_t *event); +bool event_cancel(server_t *event); +void event_release(server_t *event); #define event_data(event) ((event)->data) int server_loop(start_client_t starter, delete_client_t deleter,