From 978703348172c8d7753d552543469fdf6e1bef21 Mon Sep 17 00:00:00 2001 From: Hangbin Liu Date: Tue, 19 Nov 2013 23:46:20 +0800 Subject: [PATCH] ipaddrlabel: use uint32_t instead of int32_t As both linux kernel and function ipaddrlabel_modify use unsigned int for label. We should also use unsigned int value when print addrlabel in case of misunderstanding. Signed-off-by: Hangbin Liu --- ip/ipaddrlabel.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ip/ipaddrlabel.c b/ip/ipaddrlabel.c index 1789d9c1..68a94ddf 100644 --- a/ip/ipaddrlabel.c +++ b/ip/ipaddrlabel.c @@ -86,10 +86,10 @@ int print_addrlabel(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg if (ifal->ifal_index) fprintf(fp, "dev %s ", ll_index_to_name(ifal->ifal_index)); - if (tb[IFAL_LABEL] && RTA_PAYLOAD(tb[IFAL_LABEL]) == sizeof(int32_t)) { - int32_t label; + if (tb[IFAL_LABEL] && RTA_PAYLOAD(tb[IFAL_LABEL]) == sizeof(uint32_t)) { + uint32_t label; memcpy(&label, RTA_DATA(tb[IFAL_LABEL]), sizeof(label)); - fprintf(fp, "label %d ", label); + fprintf(fp, "label %u ", label); } fprintf(fp, "\n");