summaryrefslogtreecommitdiff
path: root/ripngd
diff options
context:
space:
mode:
authorUlrich Weber <ulrich.weber@sophos.com>2011-11-17 21:35:08 +0400
committerDenis Ovsienko <infrastation@yandex.ru>2011-12-13 14:10:04 +0400
commitc0cad4368858d24caedd7e7d2bb776b6d4dd6eb3 (patch)
treef5d77cf7d32df711120749db6e23ef70852fcf3f /ripngd
parent5009160c748b19a543a2f4fbd01d9de69ca71955 (diff)
ripngd: limit max of "timers basic" to 65535 as documented
and use VTY_GET_INTEGER_RANGE instead of calling strtoul
Diffstat (limited to 'ripngd')
-rw-r--r--ripngd/ripngd.c24
1 files changed, 3 insertions, 21 deletions
diff --git a/ripngd/ripngd.c b/ripngd/ripngd.c
index d416255c..8e97c2f8 100644
--- a/ripngd/ripngd.c
+++ b/ripngd/ripngd.c
@@ -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;