Passing the return value of RTA_DATA() to rta_getattr_u32() is wrong since that function will call RTA_DATA() by itself already.
Fixes: a7ad1c8a6845d ("ipaddrlabel: add json support") Signed-off-by: Phil Sutter <p...@nwl.cc> --- ip/ipaddrlabel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ip/ipaddrlabel.c b/ip/ipaddrlabel.c index 2f79c56dcead2..8abe5722bafd1 100644 --- a/ip/ipaddrlabel.c +++ b/ip/ipaddrlabel.c @@ -95,7 +95,7 @@ int print_addrlabel(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg } if (tb[IFAL_LABEL] && RTA_PAYLOAD(tb[IFAL_LABEL]) == sizeof(uint32_t)) { - uint32_t label = rta_getattr_u32(RTA_DATA(tb[IFAL_LABEL])); + uint32_t label = rta_getattr_u32(tb[IFAL_LABEL]); print_uint(PRINT_ANY, "label", "label %u ", label); -- 2.19.0