From c7f21bebbeadf36f71251b6b0c62f2d93b308a5c Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Fri, 29 Apr 2016 10:48:05 +0200 Subject: iface: Fix memory leak in error case If add from leaking in case the address was (unexpectedly) not found. This addresses CID 99695 discovered by the Coverity scanner. Signed-off-by: Tobias Klauser --- iface.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/iface.c b/iface.c index b069532..4bc9b5e 100644 --- a/iface.c +++ b/iface.c @@ -145,10 +145,13 @@ static void iface_record_addr_del(struct iface_record *rec, struct sockaddr_stor rec->size--; } else { char as[NI_MAXHOST]; + if (getnameinfo((struct sockaddr *)addr, sizeof(*addr), as, sizeof(as), NULL, 0, NI_NUMERICHOST)) strncpy(as, "", sizeof(as) - 1); log_err("Address %s to delete not found in records\n", as); + + free(addrs); } } else if (rec->size == 1) { free(rec->addrs); -- cgit v1.2.3-54-g00ecf