diff --git a/ip/ipnexthop.c b/ip/ipnexthop.c index 83a5540e..2f448449 100644 --- a/ip/ipnexthop.c +++ b/ip/ipnexthop.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -840,7 +841,7 @@ static void parse_nh_group_type_res(struct nlmsghdr *n, int maxlen, int *argcp, NEXT_ARG(); if (get_unsigned(&idle_timer, *argv, 0) || - idle_timer >= ~0UL / 100) + idle_timer >= UINT32_MAX / 100) invarg("invalid idle timer value", *argv); addattr32(n, maxlen, NHA_RES_GROUP_IDLE_TIMER, @@ -850,7 +851,7 @@ static void parse_nh_group_type_res(struct nlmsghdr *n, int maxlen, int *argcp, NEXT_ARG(); if (get_unsigned(&unbalanced_timer, *argv, 0) || - unbalanced_timer >= ~0UL / 100) + unbalanced_timer >= UINT32_MAX / 100) invarg("invalid unbalanced timer value", *argv); addattr32(n, maxlen, NHA_RES_GROUP_UNBALANCED_TIMER,