diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-10 14:50:45 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-10 14:50:45 +0000 |
| commit | 327d253a06da5688d696a4f17f8c74cafe114fda (patch) | |
| tree | 14653a1a2c136cd7c686d18d92b33610a50613e4 /src/include | |
| parent | 209f4ee81fa0d0df1c60bb8ea65a06c6287abd6d (diff) | |
| download | skalibs-327d253a06da5688d696a4f17f8c74cafe114fda.tar.gz | |
No global definitions for sassserver
Except for textmessage_receiver_0 and the textmessage_senders, but
these are like buffer_0 and buffer_1, so.
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/skalibs/sassserver.h | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/src/include/skalibs/sassserver.h b/src/include/skalibs/sassserver.h index f43ea4c..4294e59 100644 --- a/src/include/skalibs/sassserver.h +++ b/src/include/skalibs/sassserver.h @@ -8,6 +8,8 @@ #include <skalibs/tai.h> #include <skalibs/iopause.h> +#include <skalibs/gensetdyn.h> +#include <skalibs/avltree.h> typedef int sassserver_send_func (void *, uint32_t, uint32_t, uint32_t, char const *, size_t) ; typedef sassserver_send_func *sassserver_send_func_ref ; @@ -15,15 +17,27 @@ typedef sassserver_send_func *sassserver_send_func_ref ; typedef void sassserver_cancel_func (void *) ; typedef sassserver_cancel_func *sassserver_cancel_func_ref ; -extern void sassserver_init (char const *, char const *, sassserver_send_func_ref, sassserver_cancel_func_ref, size_t, tain const *, tain *stamp) ; -#define sassserver_init_g(banner1, banner2, sendf, cancelf, esize, deadline) sassserver_init(banner1, banner2, sendf, cancelf, esize, (deadline), &STAMP) -extern unsigned int sassserver_prepare_iopause (iopause_fd *, tain *) ; -extern void sassserver_timeout (void) ; -extern int sassserver_event (iopause_fd const *) ; -extern void *sassserver_data (uint32_t) ; +typedef struct sassserver_s sassserver, *sassserver_ref ; +struct sassserver_s +{ + sassserver_send_func_ref sendf ; + sassserver_cancel_func_ref cancelf ; + size_t datasize ; + gensetdyn queries ; + avltree by_deadline ; + avltree by_id ; +} ; +#define SASSSERVER_ZERO { .sendf = 0, .cancelf = 0, .datasize = 0, .queries = GENSETDYN_ZERO, .by_deadline = AVLTREE_ZERO, .by_id = AVLTREE_ZERO } -extern void sassserver_async_failure (uint32_t, int) ; -extern void sassserver_async_success (uint32_t, uint32_t, char const *, size_t) ; -extern void sassserver_async_successv (uint32_t, uint32_t, struct iovec const *, unsigned int) ; +extern void sassserver_init (sassserver *, char const *, char const *, sassserver_send_func_ref, sassserver_cancel_func_ref, size_t, tain const *, tain *stamp) ; +#define sassserver_init_g(a, banner1, banner2, sendf, cancelf, esize, deadline) sassserver_init(a, banner1, banner2, sendf, cancelf, esize, (deadline), &STAMP) +extern unsigned int sassserver_prepare_iopause (sassserver const *, iopause_fd *, tain *) ; +extern void sassserver_timeout (sassserver *) ; +extern int sassserver_event (sassserver *, iopause_fd const *) ; +extern void *sassserver_data (sassserver const *, uint32_t) ; + +extern void sassserver_async_failure (sassserver *, uint32_t, int) ; +extern void sassserver_async_success (sassserver *, uint32_t, uint32_t, char const *, size_t) ; +extern void sassserver_async_successv (sassserver *, uint32_t, uint32_t, struct iovec const *, unsigned int) ; #endif |
