diff options
author | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2008-01-17 17:16:54 +0000 |
---|---|---|
committer | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2008-01-17 17:16:54 +0000 |
commit | 5c7db5abef470bc6a0f2e3858a5fc75731c9f3bd (patch) | |
tree | 09816bc288f987c2ef33d1594f94824b9a963bf9 /src/sync-mode.c | |
parent | ab4f7c0abd2d42f20b8675b3bc552a88204ce4ad (diff) | |
download | conntrack-tools-5c7db5abef470bc6a0f2e3858a5fc75731c9f3bd.tar.gz conntrack-tools-5c7db5abef470bc6a0f2e3858a5fc75731c9f3bd.zip |
Max Kellermann <max@duempel.org>:
fix memory leaks in several error output paths
Diffstat (limited to 'src/sync-mode.c')
-rw-r--r-- | src/sync-mode.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/sync-mode.c b/src/sync-mode.c index f2bfc9f..1632019 100644 --- a/src/sync-mode.c +++ b/src/sync-mode.c @@ -180,11 +180,14 @@ static int init_sync(void) STATE_SYNC(mcast_client) = mcast_client_create(&CONFIG(mcast)); if (STATE_SYNC(mcast_client) == NULL) { dlog(STATE(log), LOG_ERR, "can't open client multicast socket"); + mcast_server_destroy(STATE_SYNC(mcast_server)); return -1; } if (mcast_buffered_init(&CONFIG(mcast)) == -1) { dlog(STATE(log), LOG_ERR, "can't init tx buffer!"); + mcast_server_destroy(STATE_SYNC(mcast_server)); + mcast_client_destroy(STATE_SYNC(mcast_client)); return -1; } |