aboutsummaryrefslogtreecommitdiff
path: root/src/openvpn/openvpn.c
diff options
context:
space:
mode:
authorSteffan Karger2018-08-29 15:49:43 +0200
committerGert Doering2018-09-03 10:28:19 +0200
commit7170bef507bfe74ceb4a12f8f10df4d2d6ad39c9 (patch)
treee27f937e80431d4b7e9c1d06b6520d5e7af98dd7 /src/openvpn/openvpn.c
parentdd1da0e485a3d161feb5230b6aa57df11ea72705 (diff)
downloadopenvpn-7170bef507bfe74ceb4a12f8f10df4d2d6ad39c9.zip
openvpn-7170bef507bfe74ceb4a12f8f10df4d2d6ad39c9.tar.gz
Fix memory leak after sighup
The c.es env_set is (re)allocated for each "sighup loop iteration", while it was free'd only once at process shutdown. Move the env_set_destroy() call to match the same level as the env_set_create() call to fix that. Signed-off-by: Steffan Karger <steffan.karger@fox-it.com> Acked-by: Arne Schwabe <arne@rfc2549.org> Message-Id: <1535550583-21825-1-git-send-email-steffan.karger@fox-it.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg17429.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
Diffstat (limited to 'src/openvpn/openvpn.c')
-rw-r--r--src/openvpn/openvpn.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/openvpn/openvpn.c b/src/openvpn/openvpn.c
index b9e914a..3819889 100644
--- a/src/openvpn/openvpn.c
+++ b/src/openvpn/openvpn.c
@@ -329,6 +329,7 @@ openvpn_main(int argc, char *argv[])
}
while (c.sig->signal_received == SIGUSR1);
+ env_set_destroy(c.es);
uninit_options(&c.options);
gc_reset(&c.gc);
}
@@ -337,8 +338,6 @@ openvpn_main(int argc, char *argv[])
context_gc_free(&c);
- env_set_destroy(c.es);
-
#ifdef ENABLE_MANAGEMENT
/* close management interface */
close_management();