diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-12 07:21:50 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-12 07:21:50 +0000 |
| commit | 6cc647ce9a9f6c34473cec22b1a1a457409fc25e (patch) | |
| tree | 3eeb77deb9e1ab16a953527aa19cada328f80c83 /src/include | |
| parent | a145c0051194faa705be1e2512e1b6331c4e4659 (diff) | |
| download | skalibs-6cc647ce9a9f6c34473cec22b1a1a457409fc25e.tar.gz | |
Add a cleanup hook to sassserver
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/skalibs/sassserver.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/include/skalibs/sassserver.h b/src/include/skalibs/sassserver.h index 4294e59..a5a4453 100644 --- a/src/include/skalibs/sassserver.h +++ b/src/include/skalibs/sassserver.h @@ -6,6 +6,7 @@ #include <sys/uio.h> #include <stdint.h> +#include <skalibs/functypes.h> #include <skalibs/tai.h> #include <skalibs/iopause.h> #include <skalibs/gensetdyn.h> @@ -23,14 +24,16 @@ struct sassserver_s sassserver_send_func_ref sendf ; sassserver_cancel_func_ref cancelf ; size_t datasize ; + free_func_ref cleanupf ; + void *aux ; 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 } +#define SASSSERVER_ZERO { .sendf = 0, .cancelf = 0, .datasize = 0, .cleanupf = 0, .aux = 0, .queries = GENSETDYN_ZERO, .by_deadline = AVLTREE_ZERO, .by_id = AVLTREE_ZERO } -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 void sassserver_init (sassserver *, char const *, char const *, sassserver_send_func_ref, sassserver_cancel_func_ref, size_t, free_func_ref, void *, tain const *, tain *stamp) ; +#define sassserver_init_g(a, banner1, banner2, sendf, cancelf, esize, cleanupf, aux, deadline) sassserver_init(a, banner1, banner2, sendf, cancelf, esize, cleanupf, aux, (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 *) ; |
