From: Felix Fietkau Date: Thu, 29 Oct 2015 14:58:30 +0000 (+0100) Subject: system-linux: fix memory leak in system_addr() X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=bb99e8017b5b99e5ccd2c05c11b516b6e629ab20;p=project%2Fnetifd.git system-linux: fix memory leak in system_addr() Detected by Coverity CID 1330178 Signed-off-by: Felix Fietkau --- diff --git a/system-linux.c b/system-linux.c index f51c078..27c0f1e 100644 --- a/system-linux.c +++ b/system-linux.c @@ -1532,8 +1532,10 @@ static int system_addr(struct device *dev, struct device_addr *addr, int cmd) if (addr->valid_until) { int64_t valid = addr->valid_until - now; - if (valid <= 0) + if (valid <= 0) { + nlmsg_free(msg); return -1; + } else if (valid > UINT32_MAX) valid = UINT32_MAX;