ripngd: limit max of "timers basic" to 65535 as documented

and use VTY_GET_INTEGER_RANGE instead of calling strtoul
This commit is contained in:
Ulrich Weber 2011-11-17 21:35:08 +04:00 committed by Denis Ovsienko
parent 5009160c74
commit c0cad43688

View File

@ -2485,28 +2485,10 @@ DEFUN (ripng_timers,
unsigned long update;
unsigned long timeout;
unsigned long garbage;
char *endptr = NULL;
update = strtoul (argv[0], &endptr, 10);
if (update == ULONG_MAX || *endptr != '\0')
{
vty_out (vty, "update timer value error%s", VTY_NEWLINE);
return CMD_WARNING;
}
timeout = strtoul (argv[1], &endptr, 10);
if (timeout == ULONG_MAX || *endptr != '\0')
{
vty_out (vty, "timeout timer value error%s", VTY_NEWLINE);
return CMD_WARNING;
}
garbage = strtoul (argv[2], &endptr, 10);
if (garbage == ULONG_MAX || *endptr != '\0')
{
vty_out (vty, "garbage timer value error%s", VTY_NEWLINE);
return CMD_WARNING;
}
VTY_GET_INTEGER_RANGE("update timer", update, argv[0], 0, 65535);
VTY_GET_INTEGER_RANGE("timeout timer", timeout, argv[1], 0, 65535);
VTY_GET_INTEGER_RANGE("garbage timer", garbage, argv[2], 0, 65535);
/* Set each timer value. */
ripng->update_time = update;