From: Florian Westphal Date: Tue, 11 Nov 2014 00:38:21 +0000 (+0100) Subject: utils: relax strtoX checking in get_time_rtt X-Git-Tag: v3.18.0~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4d9a264f09cd41fdf5896b03db8443fe1af32f14;p=thirdparty%2Fiproute2.git utils: relax strtoX checking in get_time_rtt ip route change dev tap0 192.168.7.0/24 rto_min 1ms Error: argument "1ms" is wrong: "rto_min" value is invalid get_time_rtt() checks for 's' or 'msec' and converts to milliseconds if needed. Fixes: 697ac63905 (utils: fix range checking for get_u32/get_u64 et all) Signed-off-by: Florian Westphal --- diff --git a/lib/utils.c b/lib/utils.c index dc21567ac..987377b68 100644 --- a/lib/utils.c +++ b/lib/utils.c @@ -144,8 +144,8 @@ int get_time_rtt(unsigned *val, const char *arg, int *raw) if (t < 0.0) return -1; - /* extra non-digits */ - if (!p || p == arg || *p) + /* no digits? */ + if (!p || p == arg) return -1; /* over/underflow */ @@ -154,8 +154,8 @@ int get_time_rtt(unsigned *val, const char *arg, int *raw) } else { res = strtoul(arg, &p, 0); - /* empty string or trailing non-digits */ - if (!p || p == arg || *p) + /* empty string? */ + if (!p || p == arg) return -1; /* overflow */