From 97b5d4bbcac4d3237f114c1c6a57c37968ebe0fc Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Fri, 11 Jun 2021 16:46:48 +0200 Subject: netlink: Avoid memleak in error path of netlink_delinearize_obj() If parsing udata fails, 'obj' has to be freed before returning to caller. Fixes: 293c9b114faef ("src: add comment support for objects") Signed-off-by: Phil Sutter --- src/netlink.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/netlink.c') diff --git a/src/netlink.c b/src/netlink.c index be98bfb7..f2c1a4a1 100644 --- a/src/netlink.c +++ b/src/netlink.c @@ -1450,6 +1450,7 @@ struct obj *netlink_delinearize_obj(struct netlink_ctx *ctx, udata = nftnl_obj_get_data(nlo, NFTNL_OBJ_USERDATA, &ulen); if (nftnl_udata_parse(udata, ulen, obj_parse_udata_cb, ud) < 0) { netlink_io_error(ctx, NULL, "Cannot parse userdata"); + obj_free(obj); return NULL; } if (ud[NFTNL_UDATA_OBJ_COMMENT]) -- cgit v1.2.3