diff options
| -rw-r--r-- | bgpd/bgp_vty.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c index 29649c5b24..b435543e39 100644 --- a/bgpd/bgp_vty.c +++ b/bgpd/bgp_vty.c @@ -3237,12 +3237,13 @@ DEFUN (neighbor_local_as, { struct peer *peer; int ret; - + as_t as; peer = peer_and_group_lookup_vty (vty, argv[0]); if (! peer) return CMD_WARNING; - ret = peer_local_as_set (peer, atoi (argv[1]), 0, 0); + VTY_GET_INTEGER_RANGE ("Local AS", as, argv[1], 1, BGP_AS4_MAX); + ret = peer_local_as_set (peer, as, 0, 0); return bgp_vty_return (vty, ret); } @@ -3257,12 +3258,14 @@ DEFUN (neighbor_local_as_no_prepend, { struct peer *peer; int ret; + as_t as; peer = peer_and_group_lookup_vty (vty, argv[0]); if (! peer) return CMD_WARNING; - ret = peer_local_as_set (peer, atoi (argv[1]), 1, 0); + VTY_GET_INTEGER_RANGE ("Local AS", as, argv[1], 1, BGP_AS4_MAX); + ret = peer_local_as_set (peer, as, 1, 0); return bgp_vty_return (vty, ret); } @@ -3278,12 +3281,14 @@ DEFUN (neighbor_local_as_no_prepend_replace_as, { struct peer *peer; int ret; + as_t as; peer = peer_and_group_lookup_vty (vty, argv[0]); if (! peer) return CMD_WARNING; - ret = peer_local_as_set (peer, atoi (argv[1]), 1, 1); + VTY_GET_INTEGER_RANGE ("Local AS", as, argv[1], 1, BGP_AS4_MAX); + ret = peer_local_as_set (peer, as, 1, 1); return bgp_vty_return (vty, ret); } |
