summaryrefslogtreecommitdiff
path: root/babeld
diff options
context:
space:
mode:
authorJuliusz Chroboczek <jch@pps.jussieu.fr>2012-02-07 05:43:36 +0100
committerPaul Jakma <paul@quagga.net>2012-03-25 17:06:53 +0100
commit38846de1fd7fa9005933564de28360fb9bdf02bb (patch)
treeec52e9591640b5edbb3b868d487191ec9e324199 /babeld
parente19ed8c4516621be74b9a28c887185fc66b67430 (diff)
babeld: Error handling and tweaks for babeld commands.
Diffstat (limited to 'babeld')
-rw-r--r--babeld/babel_interface.c9
-rw-r--r--babeld/babel_main.c3
-rw-r--r--babeld/babeld.c7
3 files changed, 11 insertions, 8 deletions
diff --git a/babeld/babel_interface.c b/babeld/babel_interface.c
index a874289c..906f349e 100644
--- a/babeld/babel_interface.c
+++ b/babeld/babel_interface.c
@@ -429,13 +429,14 @@ DEFUN (babel_set_hello_interval,
{
struct interface *ifp;
babel_interface_nfo *babel_ifp;
+ int interval;
- int interval = atoi(argv[0]);
+ VTY_GET_INTEGER_RANGE("hello interval", interval, argv[0], 20, 10 * 0xFFFE);
ifp = vty->index;
babel_ifp = babel_get_if_nfo(ifp);
-
assert (babel_ifp != NULL);
+
babel_ifp->hello_interval = interval;
return CMD_SUCCESS;
}
@@ -450,7 +451,7 @@ DEFUN (babel_passive_interface,
if (allow_duplicates) {
return CMD_WARNING;
}
- parasitic = -1;
+ parasitic = 1;
return CMD_SUCCESS;
}
@@ -900,7 +901,7 @@ DEFUN (show_babel_running_config,
vty_out(vty, " -- Babel running configuration --%s", VTY_NEWLINE);
show_babel_main_configuration(vty);
show_babeld_configuration(vty);
- vty_out(vty, " -- ditribution lists --%s", VTY_NEWLINE);
+ vty_out(vty, " -- distribution lists --%s", VTY_NEWLINE);
config_show_distribute(vty);
return CMD_SUCCESS;
diff --git a/babeld/babel_main.c b/babeld/babel_main.c
index 951da7d1..a75171e0 100644
--- a/babeld/babel_main.c
+++ b/babeld/babel_main.c
@@ -227,8 +227,7 @@ babel_init(int argc, char **argv)
break;
case 'P':
babel_vty_port = atoi (optarg);
- if (babel_vty_port < 0 || babel_vty_port > 0xffff
- || (babel_vty_port == 0 && optarg[0] != '0'/*atoi error*/))
+ if (babel_vty_port <= 0 || babel_vty_port > 0xffff)
babel_vty_port = BABEL_VTY_PORT;
break;
case 'u':
diff --git a/babeld/babeld.c b/babeld/babeld.c
index 33b5d9e1..da074349 100644
--- a/babeld/babeld.c
+++ b/babeld/babeld.c
@@ -608,6 +608,7 @@ DEFUN (router_babel,
/* Notice to user we couldn't create Babel. */
if (ret < 0) {
zlog_warn ("can't create Babel");
+ return CMD_WARNING;
}
}
@@ -666,9 +667,11 @@ DEFUN (babel_set_protocol_port,
"Set the protocol port (default is defined in RFC).\n"
"IPv6 address")
{
- int port = atoi(argv[0]);
- protocol_port = port;
+ int port;
+ VTY_GET_INTEGER_RANGE("port", port, argv[0], 1, 0xFFFF);
+
+ protocol_port = port;
return CMD_SUCCESS;
}