From a59b71095a84dcbd7c3684639acf3dd3097bd3f2 Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Sun, 16 Feb 2020 16:17:20 +0100 Subject: ipcpd: Fix double free, memleak and malloc check Some fixes in the multipath implementation related to memory management that showed up with the static analyzer. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/ipcpd/unicast/pol/multipath_pff.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/ipcpd/unicast/pol/multipath_pff.c') diff --git a/src/ipcpd/unicast/pol/multipath_pff.c b/src/ipcpd/unicast/pol/multipath_pff.c index 8f619006..0fe101bc 100644 --- a/src/ipcpd/unicast/pol/multipath_pff.c +++ b/src/ipcpd/unicast/pol/multipath_pff.c @@ -132,7 +132,7 @@ int multipath_pff_update(struct pff_i * pff_i, assert(len > 0); tmp = malloc(sizeof(*tmp)); - if (fds == NULL) + if (tmp == NULL) return -ENOMEM; memcpy(tmp,fds, len * sizeof(*tmp)); @@ -142,7 +142,7 @@ int multipath_pff_update(struct pff_i * pff_i, return -1; } - if (pft_insert(pff_i->pft, addr, fds, 1)) { + if (pft_insert(pff_i->pft, addr, tmp, 1)) { free(tmp); return -1; } -- cgit v1.2.3