aboutsummaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2026-03-12 07:21:50 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2026-03-12 07:21:50 +0000
commit6cc647ce9a9f6c34473cec22b1a1a457409fc25e (patch)
tree3eeb77deb9e1ab16a953527aa19cada328f80c83 /src/include
parenta145c0051194faa705be1e2512e1b6331c4e4659 (diff)
downloadskalibs-6cc647ce9a9f6c34473cec22b1a1a457409fc25e.tar.gz
Add a cleanup hook to sassserver
Diffstat (limited to 'src/include')
-rw-r--r--src/include/skalibs/sassserver.h9
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 *) ;