From ef1587bd88ec39b65f8c372a489b32c7af133ae5 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 10 Feb 2022 21:19:34 +0100 Subject: [PATCH] platform: fix parsing RTA_MULTIHOP netlink attribute to use no policy To parse the RTA_MULTIHOP message, "policy" is not right (which is used to parse the overall message). Instead, we don't really have a special policy that we should use. This was not a severe issue, because the allocated buffer (with G_N_ELEMENTS(policy) elements) was larger than need be. And apparently, using the wrong policy also didn't cause us to reject important messages. (cherry picked from commit 997d72932da9bfd2af52eb1d78e6a66504254ccc) (cherry picked from commit 21b19780729de969847461e0220e678fb54e6bec) --- src/libnm-platform/nm-linux-platform.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libnm-platform/nm-linux-platform.c b/src/libnm-platform/nm-linux-platform.c index 78df53e7f5..b88603713c 100644 --- a/src/libnm-platform/nm-linux-platform.c +++ b/src/libnm-platform/nm-linux-platform.c @@ -3446,12 +3446,12 @@ _new_from_nl_route(struct nlmsghdr *nlh, gboolean id_only) nh.ifindex = rtnh->rtnh_ifindex; if (rtnh->rtnh_len > sizeof(*rtnh)) { - struct nlattr *ntb[G_N_ELEMENTS(policy)]; + struct nlattr *ntb[RTA_GATEWAY + 1]; if (nla_parse_arr(ntb, (struct nlattr *) RTNH_DATA(rtnh), rtnh->rtnh_len - sizeof(*rtnh), - policy) + NULL) < 0) return NULL;