On 8/16/24 8:45 AM, Martin Kletzander wrote:
Use convenience macro from libnl3
Actually the NLMSG_PAYLOAD() macro (which I had never used nor heard of
before this, but just looked it up in the header files so I could be a
know-it-all) is in the basic kernel netlink.h, not in libnl.
which does almost the same thing we
were doing, but also aligns the payload length.
"pads out the payload length to a multiple of NLMSG_ALIGNTO (4) bytes"
to be more long-winded :-)
Signed-off-by: Martin Kletzander <mkletzan@xxxxxxxxxx>
---
src/util/virarptable.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/util/virarptable.c b/src/util/virarptable.c
index 299dddd664ab..d8e41c5a8668 100644
--- a/src/util/virarptable.c
+++ b/src/util/virarptable.c
@@ -102,8 +102,7 @@ virArpTableGet(void)
return table;
VIR_WARNINGS_NO_CAST_ALIGN
- parse_rtattr(tb, NDA_MAX, NDA_RTA(r),
- nh->nlmsg_len - NLMSG_LENGTH(sizeof(*r)));
+ parse_rtattr(tb, NDA_MAX, NDA_RTA(r), NLMSG_PAYLOAD(nh, sizeof(*r)));
VIR_WARNINGS_RESET
if (tb[NDA_DST] == NULL || tb[NDA_LLADDR] == NULL)
Reviewed-by: Laine Stump <laine@xxxxxxxxxx>