diff -r 3887fd7e8bd7 -r 3e4f9cdd70b8 src/server/daemon/config.c --- a/src/server/daemon/config.c Fri Dec 05 17:37:48 2025 +0100 +++ b/src/server/daemon/config.c Sun Dec 07 16:31:21 2025 +0100 @@ -167,6 +167,8 @@ CxAllocator *allocator = pool_allocator(serverconfig->pool); serverconfig->a = allocator; + serverconfig->destr = cxArrayListCreate(serverconfig->a, NULL, sizeof(ScfgDestr), 32); + serverconfig->listeners = cxLinkedListCreate(serverconfig->a, NULL, CX_STORE_POINTERS); serverconfig->logfiles = cxLinkedListCreate(serverconfig->a, NULL, CX_STORE_POINTERS); serverconfig->host_vs = cxHashMapCreate(serverconfig->a, CX_STORE_POINTERS, 16); @@ -1329,3 +1331,11 @@ } return pb; } + +void server_config_destroy(ServerConfiguration *cfg) { + CxIterator i = cxListIterator(cfg->destr); + cx_foreach(ScfgDestr *, d, i) { + d->destr(d->data); + } + pool_destroy(cfg->pool); +}