From 6aa3d40199e30dc0003bbf2fbffc4d1b737b88c3 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) (cherry picked from commit ef1587bd88ec39b65f8c372a489b32c7af133ae5) --- 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 bcf942005b..ecf0761d81 100644 --- a/src/libnm-platform/nm-linux-platform.c +++ b/src/libnm-platform/nm-linux-platform.c @@ -3435,12 +3435,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;