From 95237027c63399bfa178742608cf372e8df213dd Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Tue, 12 Feb 2013 23:20:03 +0100 Subject: [PATCH] free static stuff on shutdown. --- citadel/control.c | 7 ++++++- citadel/modules/smtp/serv_smtp.c | 2 ++ citadel/serv_extensions.c | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/citadel/control.c b/citadel/control.c index c26aadbf0..4a09a9adc 100644 --- a/citadel/control.c +++ b/citadel/control.c @@ -826,7 +826,10 @@ void cmd_gvdn(char *argbuf) /* MODULE INITIALIZATION STUFF */ /*****************************************************************************/ - +void control_cleanup(void) +{ + DeleteHash(&CfgNameHash); +} CTDL_MODULE_INIT(control) { if (!threading) { @@ -838,6 +841,8 @@ CTDL_MODULE_INIT(control) CtdlRegisterProtoHook(cmd_gvdn, "GVDN", "get valid domain names"); CtdlRegisterProtoHook(cmd_conf, "CONF", "get/set system configuration"); + CtdlRegisterCleanupHook(control_cleanup); + } /* return our id for the Log */ return "control"; diff --git a/citadel/modules/smtp/serv_smtp.c b/citadel/modules/smtp/serv_smtp.c index 69a4c77ef..cf8f6eb74 100644 --- a/citadel/modules/smtp/serv_smtp.c +++ b/citadel/modules/smtp/serv_smtp.c @@ -1007,6 +1007,7 @@ CTDL_MODULE_INIT(smtp) if (!threading) { SMTPCmds = NewHash(1, NULL); + RegisterSmtpCMD("AUTH", smtp_auth, 0); RegisterSmtpCMD("DATA", smtp_data, 0); RegisterSmtpCMD("HELO", smtp_hello, HELO); @@ -1060,6 +1061,7 @@ CTDL_MODULE_INIT(smtp) NULL, CitadelServiceSMTP_LMTP_UNF); + CtdlRegisterCleanupHook(smtp_cleanup); CtdlRegisterSessionHook(smtp_cleanup_function, EVT_STOP, PRIO_STOP + 250); } diff --git a/citadel/serv_extensions.c b/citadel/serv_extensions.c index dee82748d..cf1270cc6 100644 --- a/citadel/serv_extensions.c +++ b/citadel/serv_extensions.c @@ -579,6 +579,7 @@ void CtdlDestroyEVCleanupHooks(void) { MODM_syslog(LOG_DEBUG, "Destroyed cleanup function\n"); p = cur->next; + cur->h_function_pointer(); free(cur); cur = p; } -- 2.30.2