From 548a3e9dbc1b111e9bdd0be5df0056d12b77836f Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Tue, 30 Jun 2026 14:24:19 +0200 Subject: [PATCH] netlink: Catch unknown types when deserializing objects JIRA: https://issues.redhat.com/browse/RHEL-190549 Upstream Status: nftables commit 690f19eadde5cb607ec3d8d471c86d558c7229bd commit 690f19eadde5cb607ec3d8d471c86d558c7229bd Author: Phil Sutter Date: Fri May 16 19:41:19 2025 +0200 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 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 9fa95ea..6130e56 100644 --- a/src/netlink.c +++ b/src/netlink.c @@ -1733,6 +1733,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;