From 690f19eadde5cb607ec3d8d471c86d558c7229bd Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Fri, 16 May 2025 19:41:19 +0200 Subject: [PATCH] netlink: Catch unknown types when deserializing objects Print an error message and discard the object instead of returning it to the caller. At least when trying to print it, we would hit an assert() in obj_type_name() anyway. Fixes: 4756d92e517ae ("src: listing of stateful objects") Signed-off-by: Phil Sutter --- src/netlink.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/netlink.c b/src/netlink.c index 0724190a..52010c74 100644 --- a/src/netlink.c +++ b/src/netlink.c @@ -1802,6 +1802,10 @@ struct obj *netlink_delinearize_obj(struct netlink_ctx *ctx, obj->synproxy.flags = nftnl_obj_get_u32(nlo, NFTNL_OBJ_SYNPROXY_FLAGS); break; + default: + netlink_io_error(ctx, NULL, "Unknown object type %u", type); + obj_free(obj); + return NULL; } obj->type = type; -- 2.47.2