From: Jan Engelhardt Date: Sun, 15 Jul 2012 20:21:00 +0000 (+0200) Subject: libxt_LED: guard against negative numbers X-Git-Tag: v1.4.16~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a19988f2795770ce470562c1795e1cf53e3aa54b;p=thirdparty%2Fiptables.git libxt_LED: guard against negative numbers Signed-off-by: Jan Engelhardt --- diff --git a/extensions/libxt_LED.c b/extensions/libxt_LED.c index 9d68fa27..e6cf8497 100644 --- a/extensions/libxt_LED.c +++ b/extensions/libxt_LED.c @@ -49,6 +49,7 @@ static void LED_help(void) static void LED_parse(struct xt_option_call *cb) { struct xt_led_info *led = cb->data; + unsigned int delay; xtables_option_parse(cb); switch (cb->entry->id) { @@ -59,8 +60,10 @@ static void LED_parse(struct xt_option_call *cb) case O_LED_DELAY: if (strncasecmp(cb->arg, "inf", 3) == 0) led->delay = -1; - else - led->delay = strtoul(cb->arg, NULL, 0); + else if (!xtables_strtoui(cb->arg, NULL, &delay, 0, UINT32_MAX)) + xtables_error(PARAMETER_PROBLEM, + "Delay value must be within range 0..%u", + UINT32_MAX); break; case O_LED_ALWAYS_BLINK: led->always_blink = 1;