summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Sommerseth <dazo@users.sourceforge.net>2010-12-05 23:57:28 +0100
committerDavid Sommerseth <dazo@users.sourceforge.net>2010-12-06 09:21:51 +0100
commit81ce1e10bdb42f41cca80adedbdef47e5b39e8cb (patch)
tree6b6669b41424f702e2ba61f807cc86b8fd6eaece
parent30f21cbf036830b5d1c66f923d67f75c7de65aee (diff)
downloadeurephia-81ce1e10bdb42f41cca80adedbdef47e5b39e8cb.tar.gz
eurephia-81ce1e10bdb42f41cca80adedbdef47e5b39e8cb.tar.xz
eurephia-81ce1e10bdb42f41cca80adedbdef47e5b39e8cb.zip
Fixed memory leak in eurephiaInit()
This memory leak got introduced with commit 525d75316848f79208101e48a54e2 which moves the daemonisation of the firewall thread. Two environment variables was not freed after usage. Signed-off-by: David Sommerseth <dazo@users.sourceforge.net> (cherry picked from commit f4805d70cc4514b2569f8864ac138b5b21409cbc)
-rw-r--r--plugin/eurephia.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/plugin/eurephia.c b/plugin/eurephia.c
index 74076fe..260d3ed 100644
--- a/plugin/eurephia.c
+++ b/plugin/eurephia.c
@@ -187,13 +187,15 @@ eurephiaCTX *eurephiaInit(const char const **argv, const char const **envp)
fwintf = eGet_value(ctx->dbc->config, "firewall_interface");
if( fwintf != NULL ) {
if( eFW_load(ctx, fwintf) ) {
- const char *daemon_s = GETENV_DAEMON(envp);
- const char *logredir_s = GETENV_DAEMONLOGREDIR(envp);
+ char *daemon_s = GETENV_DAEMON(envp);
+ char *logredir_s = GETENV_DAEMONLOGREDIR(envp);
eurephia_log(ctx, LOG_INFO, 0, "Loaded firewall interface: %s", fwintf);
eFW_StartFirewall(ctx,
(daemon_s && (daemon_s[0] == '1')),
(logredir_s && logredir_s[0] == '1'));
+ free_nullsafe(ctx, daemon_s);
+ free_nullsafe(ctx, logredir_s);
} else {
eurephia_log(ctx, LOG_FATAL, 0, "Loading of firewall interface failed (%s)", fwintf);
ctx->eurephia_fw_intf = NULL;