return 0;
}
+int fr_io_listen_free(fr_listen_t *li)
+{
+ if (!li->thread_instance) return 0;
+
+ talloc_free(li->thread_instance);
+ return 0;
+}
+
int fr_master_io_listen(TALLOC_CTX *ctx, fr_io_instance_t *inst, fr_schedule_t *sc,
size_t default_message_size, size_t num_messages)
{
* back again.
*/
MEM(li = talloc_zero(ctx, fr_listen_t));
+ talloc_set_destructor(li, fr_io_listen_free);
/*
* The first listener is the one for the application
fr_trie_t *fr_master_io_network(TALLOC_CTX *ctx, int af, fr_ipaddr_t *allow, fr_ipaddr_t *deny);
int fr_master_io_listen(TALLOC_CTX *ctx, fr_io_instance_t *io, fr_schedule_t *sc,
size_t default_message_size, size_t num_messages) CC_HINT(nonnull);
+int fr_io_listen_free(fr_listen_t *li);
int fr_app_process_bootstrap(dl_instance_t **type_submodule, CONF_SECTION *conf, CONF_SECTION *server_cs);
int fr_app_process_instantiate(dl_instance_t **type_submodule, dl_instance_t **type_submodule_by_code, int code_max, CONF_SECTION *conf);