]> git.proxmox.com Git - mirror_frr.git/commitdiff
*: remove VTY_GET_*
authorQuentin Young <qlyoung@cumulusnetworks.com>
Tue, 27 Jun 2017 18:47:03 +0000 (18:47 +0000)
committerQuentin Young <qlyoung@cumulusnetworks.com>
Tue, 27 Jun 2017 19:04:41 +0000 (19:04 +0000)
CLI validates input tokens, so there's no need to do it in handler
functions anymore.

spatch follows
----------------

@getull@
expression v;
expression str;
@@
<...
- VTY_GET_ULL(..., v, str)
+ v = strtoull (str, NULL, 10)
...>

@getul@
expression v;
expression str;
@@
<...
- VTY_GET_ULONG(..., v, str)
+ v = strtoul (str, NULL, 10)
...>

@getintrange@
expression name;
expression v;
expression str;
@@
<...
- VTY_GET_INTEGER_RANGE(name, v, str, ...)
+ v = strtoul (str, NULL, 10)
...>

@getint@
expression v;
expression str;
@@
<...
- VTY_GET_INTEGER(..., v, str)
+ v = strtoul (str, NULL, 10)
...>

@getv4@
expression v;
expression str;
@@
<...
- VTY_GET_IPV4_ADDRESS(..., v, str)
+ inet_aton (str, &v)
...>

@getv4pfx@
expression v;
expression str;
@@
<...
- VTY_GET_IPV4_PREFIX(..., v, str)
+ str2prefix_ipv4 (str, &v)
...>

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
27 files changed:
babeld/babel_interface.c
babeld/babeld.c
bgpd/bgp_route.c
bgpd/bgp_vty.c
bgpd/rfapi/bgp_rfapi_cfg.c
bgpd/rfapi/rfapi.c
bgpd/rfapi/rfapi_vty.c
bgpd/rfp-example/librfp/rfp_example.c
eigrpd/eigrp_vty.c
isisd/isis_vty.c
lib/bfd.c
lib/command.c
lib/keychain.c
lib/ns.c
lib/routemap.c
lib/vty.h
nhrpd/nhrp_vty.c
ospf6d/ospf6_area.c
ospf6d/ospf6_spf.c
ospf6d/ospf6_top.c
ospfd/ospf_dump.c
ospfd/ospf_vty.c
ripngd/ripngd.c
zebra/interface.c
zebra/rtadv.c
zebra/zebra_routemap.c
zebra/zebra_vty.c

index 718e918bb293562b90bc0793e296d81c7cd17cde..3f589df0a03a96df86bc167316fff2eee5e32452 100644 (file)
@@ -430,7 +430,7 @@ DEFUN (babel_set_hello_interval,
     babel_interface_nfo *babel_ifp;
     int interval;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", interval, argv[2]->arg, 20, 10 * 0xFFFE);
+    interval = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -451,7 +451,7 @@ DEFUN (babel_set_update_interval,
     babel_interface_nfo *babel_ifp;
     int interval;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", interval, argv[2]->arg, 20, 10 * 0xFFFE);
+    interval = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -471,7 +471,7 @@ DEFUN (babel_set_rxcost,
     babel_interface_nfo *babel_ifp;
     int rxcost;
 
-    VTY_GET_INTEGER_RANGE("units", rxcost, argv[2]->arg, 1, 0x10000 - 1);
+    rxcost = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -491,7 +491,7 @@ DEFUN (babel_set_rtt_decay,
     babel_interface_nfo *babel_ifp;
     int decay;
 
-    VTY_GET_INTEGER_RANGE("units", decay, argv[2]->arg, 1, 256);
+    decay = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -511,7 +511,7 @@ DEFUN (babel_set_rtt_min,
     babel_interface_nfo *babel_ifp;
     int rtt;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", rtt, argv[2]->arg, 1, 65535);
+    rtt = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -531,7 +531,7 @@ DEFUN (babel_set_rtt_max,
     babel_interface_nfo *babel_ifp;
     int rtt;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", rtt, argv[2]->arg, 1, 65535);
+    rtt = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -551,7 +551,7 @@ DEFUN (babel_set_max_rtt_penalty,
     babel_interface_nfo *babel_ifp;
     int penalty;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", penalty, argv[2]->arg, 0, 65535);
+    penalty = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
@@ -604,7 +604,7 @@ DEFUN (babel_set_channel,
     babel_interface_nfo *babel_ifp;
     int channel;
 
-    VTY_GET_INTEGER_RANGE("channel", channel, argv[2]->arg, 1, 254);
+    channel = strtoul(argv[2]->arg, NULL, 10);
 
     babel_ifp = babel_get_if_nfo(ifp);
     assert (babel_ifp != NULL);
index e38c7ed50a1baced74d930780394169b620a919c..e7d4e51376709a6daaee6c36418608102d9ef7ef 100644 (file)
@@ -659,7 +659,7 @@ DEFUN (babel_diversity_factor,
 {
     int factor;
 
-    VTY_GET_INTEGER_RANGE("factor", factor, argv[2]->arg, 1, 256);
+    factor = strtoul(argv[2]->arg, NULL, 10);
 
     diversity_factor = factor;
     return CMD_SUCCESS;
@@ -675,7 +675,7 @@ DEFUN (babel_set_resend_delay,
 {
     int interval;
 
-    VTY_GET_INTEGER_RANGE("milliseconds", interval, argv[2]->arg, 20, 10 * 0xFFFE);
+    interval = strtoul(argv[2]->arg, NULL, 10);
 
     resend_delay = interval;
     return CMD_SUCCESS;
@@ -691,7 +691,7 @@ DEFUN (babel_set_smoothing_half_life,
 {
     int seconds;
 
-    VTY_GET_INTEGER_RANGE("seconds", seconds, argv[2]->arg, 0, 0xFFFE);
+    seconds = strtoul(argv[2]->arg, NULL, 10);
 
     change_smoothing_half_life(seconds);
     return CMD_SUCCESS;
index e7eb7b6d2f715fde4e1d5f66bca5fa522801f04d..52415375aba00f287bb3a0aaa873d82fe66ee8d3 100644 (file)
@@ -4576,7 +4576,7 @@ bgp_static_set_safi (afi_t afi, safi_t safi, struct vty *vty, const char *ip_str
   if (label_str)
     {
       unsigned long label_val;
-      VTY_GET_INTEGER_RANGE("Label/tag", label_val, label_str, 0, 16777215);
+      label_val = strtoul(label_str, NULL, 10);
       encode_label (label_val, tag);
     }
   else
@@ -4710,7 +4710,7 @@ bgp_static_unset_safi(afi_t afi, safi_t safi, struct vty *vty, const char *ip_st
   if (label_str)
     {
       unsigned long label_val;
-      VTY_GET_INTEGER_RANGE("Label/tag", label_val, label_str, 0, MPLS_LABEL_MAX);
+      label_val = strtoul(label_str, NULL, 10);
       encode_label (label_val, tag);
     }
   else
@@ -5021,7 +5021,7 @@ DEFUN (bgp_network_label_index,
 {
   u_int32_t label_index;
 
-  VTY_GET_INTEGER ("label-index", label_index, argv[3]->arg);
+  label_index = strtoul(argv[3]->arg, NULL, 10);
   return bgp_static_set (vty, argv[1]->arg,
                          AFI_IP, bgp_node_safi (vty), NULL, 0, label_index);
 }
@@ -5038,7 +5038,7 @@ DEFUN (bgp_network_label_index_route_map,
 {
   u_int32_t label_index;
 
-  VTY_GET_INTEGER ("label-index", label_index, argv[3]->arg);
+  label_index = strtoul(argv[3]->arg, NULL, 10);
   return bgp_static_set (vty, argv[1]->arg,
                          AFI_IP, bgp_node_safi (vty), argv[5]->arg, 0, label_index);
 }
@@ -5168,7 +5168,7 @@ DEFUN (ipv6_bgp_network_label_index,
 {
   u_int32_t label_index;
 
-  VTY_GET_INTEGER ("label-index", label_index, argv[3]->arg);
+  label_index = strtoul(argv[3]->arg, NULL, 10);
   return bgp_static_set (vty, argv[1]->arg,
                          AFI_IP6, bgp_node_safi (vty), NULL, 0, label_index);
 }
@@ -5185,7 +5185,7 @@ DEFUN (ipv6_bgp_network_label_index_route_map,
 {
   u_int32_t label_index;
 
-  VTY_GET_INTEGER ("label-index", label_index, argv[3]->arg);
+  label_index = strtoul(argv[3]->arg, NULL, 10);
   return bgp_static_set (vty, argv[1]->arg,
                          AFI_IP6, bgp_node_safi (vty), argv[5]->arg, 0, label_index);
 }
index b2635c98513290646c41fb2b6306be594525e083..df802e011c63f008408c1c0ef58b6b3e5f504cf4 100644 (file)
@@ -701,7 +701,7 @@ bgp_clear (struct vty *vty, struct bgp *bgp,  afi_t afi, safi_t safi,
       as_t as;
       int find = 0;
 
-      VTY_GET_INTEGER_RANGE ("AS", as, arg, 1, BGP_AS4_MAX);
+      as = strtoul(arg, NULL, 10);
 
       for (ALL_LIST_ELEMENTS (bgp->peer, node, nnode, peer))
        {
@@ -896,7 +896,7 @@ DEFUN_NOSH (router_bgp,
   // "router bgp X"
   else
     {
-      VTY_GET_INTEGER_RANGE ("AS", as, argv[idx_asn]->arg, 1, BGP_AS4_MAX);
+      as = strtoul (argv[idx_asn]->arg, NULL, 10);
 
       inst_type = BGP_INSTANCE_TYPE_DEFAULT;
       if (argc > 3)
@@ -970,7 +970,7 @@ DEFUN (no_router_bgp,
     }
   else
     {
-      VTY_GET_INTEGER_RANGE ("AS", as, argv[idx_asn]->arg, 1, BGP_AS4_MAX);
+      as = strtoul(argv[idx_asn]->arg, NULL, 10);
 
       if (argc > 4)
         name = argv[idx_vrf]->arg;
@@ -1108,7 +1108,7 @@ DEFUN (bgp_confederation_identifier,
   int idx_number = 3;
   as_t as;
 
-  VTY_GET_INTEGER_RANGE ("AS", as, argv[idx_number]->arg, 1, BGP_AS4_MAX);
+  as = strtoul(argv[idx_number]->arg, NULL, 10);
 
   bgp_confederation_id_set (bgp, as);
 
@@ -1145,7 +1145,7 @@ DEFUN (bgp_confederation_peers,
 
   for (i = idx_asn; i < argc; i++)
     {
-      VTY_GET_INTEGER_RANGE ("AS", as, argv[i]->arg, 1, BGP_AS4_MAX);
+      as = strtoul(argv[i]->arg, NULL, 10);
 
       if (bgp->as == as)
        {
@@ -1175,7 +1175,7 @@ DEFUN (no_bgp_confederation_peers,
 
   for (i = idx_asn; i < argc; i++)
     {
-      VTY_GET_INTEGER_RANGE ("AS", as, argv[i]->arg, 1, BGP_AS4_MAX);
+      as = strtoul(argv[i]->arg, NULL, 10);
 
       bgp_confederation_peers_remove (bgp, as);
     }
@@ -1342,8 +1342,7 @@ bgp_update_delay_config_vty (struct vty *vty, const char *delay,
   u_int16_t update_delay;
   u_int16_t establish_wait;
 
-  VTY_GET_INTEGER_RANGE ("update-delay", update_delay, delay,
-                         BGP_UPDATE_DELAY_MIN, BGP_UPDATE_DELAY_MAX);
+  update_delay = strtoul(delay, NULL, 10);
 
   if (!wait) /* update-delay <delay> */
     {
@@ -1436,8 +1435,7 @@ bgp_wpkt_quanta_config_vty (struct vty *vty, const char *num, char set)
   VTY_DECLVAR_CONTEXT(bgp, bgp);
 
   if (set)
-    VTY_GET_INTEGER_RANGE ("write-quanta", bgp->wpkt_quanta, num,
-                          1, 10000);
+    bgp->wpkt_quanta = strtoul(num, NULL, 10);
   else
     bgp->wpkt_quanta = BGP_WRITE_PACKET_MAX;
 
@@ -1651,8 +1649,8 @@ DEFUN (bgp_timers,
   unsigned long keepalive = 0;
   unsigned long holdtime = 0;
 
-  VTY_GET_INTEGER ("keepalive", keepalive, argv[idx_number]->arg);
-  VTY_GET_INTEGER ("holdtime", holdtime, argv[idx_number_2]->arg);
+  keepalive = strtoul(argv[idx_number]->arg, NULL, 10);
+  holdtime = strtoul(argv[idx_number_2]->arg, NULL, 10);
 
   /* Holdtime value check. */
   if (holdtime < 3 && holdtime != 0)
@@ -1842,7 +1840,7 @@ DEFUN (bgp_graceful_restart_stalepath_time,
   int idx_number = 3;
   u_int32_t stalepath;
 
-  VTY_GET_INTEGER_RANGE ("stalepath-time", stalepath, argv[idx_number]->arg, 1, 3600);
+  stalepath = strtoul(argv[idx_number]->arg, NULL, 10);
   bgp->stalepath_time = stalepath;
   return CMD_SUCCESS;
 }
@@ -1859,7 +1857,7 @@ DEFUN (bgp_graceful_restart_restart_time,
   int idx_number = 3;
   u_int32_t restart;
 
-  VTY_GET_INTEGER_RANGE ("restart-time", restart, argv[idx_number]->arg, 1, 3600);
+  restart = strtoul(argv[idx_number]->arg, NULL, 10);
   bgp->restart_time = restart;
   return CMD_SUCCESS;
 }
@@ -2295,7 +2293,7 @@ DEFUN (bgp_default_local_preference,
   int idx_number = 3;
   u_int32_t local_pref;
 
-  VTY_GET_INTEGER ("local preference", local_pref, argv[idx_number]->arg);
+  local_pref = strtoul(argv[idx_number]->arg, NULL, 10);
 
   bgp_default_local_preference_set (bgp, local_pref);
   bgp_clear_star_soft_in (vty, bgp->name);
@@ -2332,7 +2330,7 @@ DEFUN (bgp_default_subgroup_pkt_queue_max,
   int idx_number = 3;
   u_int32_t max_size;
 
-  VTY_GET_INTEGER ("subgroup packet queue max", max_size, argv[idx_number]->arg);
+  max_size = strtoul(argv[idx_number]->arg, NULL, 10);
 
   bgp_default_subgroup_pkt_queue_max_set (bgp, max_size);
 
@@ -2405,9 +2403,7 @@ DEFUN (bgp_listen_limit,
   int idx_number = 3;
   int listen_limit;
 
-  VTY_GET_INTEGER_RANGE ("listen limit", listen_limit, argv[idx_number]->arg,
-                         BGP_DYNAMIC_NEIGHBORS_LIMIT_MIN,
-                         BGP_DYNAMIC_NEIGHBORS_LIMIT_MAX);
+  listen_limit = strtoul(argv[idx_number]->arg, NULL, 10);
 
   bgp_listen_limit_set (bgp, listen_limit);
 
@@ -2560,8 +2556,6 @@ DEFUN (no_bgp_listen_range,
   argv_find (argv, argc, "WORD", &idx);
   char *peergroup = argv[idx]->arg;
 
-  // VTY_GET_IPV4_PREFIX ("listen range", range, argv[idx_ipv4_prefixlen]->arg);
-
   /* Convert IP prefix string to struct prefix. */
   ret = str2prefix (prefix, &range);
   if (! ret)
@@ -2673,7 +2667,7 @@ peer_remote_as_vty (struct vty *vty, const char *peer_str,
   else
     {
       /* Get AS number.  */
-      VTY_GET_INTEGER_RANGE ("AS", as, as_str, 1, BGP_AS4_MAX);
+      as = strtoul(as_str, NULL, 10);
     }
 
   /* If peer is peer group, call proper function.  */
@@ -2767,7 +2761,7 @@ peer_conf_interface_get (struct vty *vty, const char *conf_if, afi_t afi,
       else
         {
           /* Get AS number.  */
-          VTY_GET_INTEGER_RANGE ("AS", as, as_str, 1, BGP_AS4_MAX);
+          as = strtoul(as_str, NULL, 10);
           as_type = AS_SPECIFIED;
         }
     }
@@ -3119,7 +3113,7 @@ DEFUN (neighbor_local_as,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("Local AS", as, argv[idx_number]->arg, 1, BGP_AS4_MAX);
+  as = strtoul(argv[idx_number]->arg, NULL, 10);
   ret = peer_local_as_set (peer, as, 0, 0);
   return bgp_vty_return (vty, ret);
 }
@@ -3143,7 +3137,7 @@ DEFUN (neighbor_local_as_no_prepend,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("Local AS", as, argv[idx_number]->arg, 1, BGP_AS4_MAX);
+  as = strtoul(argv[idx_number]->arg, NULL, 10);
   ret = peer_local_as_set (peer, as, 1, 0);
   return bgp_vty_return (vty, ret);
 }
@@ -3168,7 +3162,7 @@ DEFUN (neighbor_local_as_no_prepend_replace_as,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("Local AS", as, argv[idx_number]->arg, 1, BGP_AS4_MAX);
+  as = strtoul(argv[idx_number]->arg, NULL, 10);
   ret = peer_local_as_set (peer, as, 1, 1);
   return bgp_vty_return (vty, ret);
 }
@@ -4589,7 +4583,7 @@ peer_ebgp_multihop_set_vty (struct vty *vty, const char *ip_str,
   if (! ttl_str)
     ttl = MAXTTL;
   else
-    VTY_GET_INTEGER_RANGE ("TTL", ttl, ttl_str, 1, MAXTTL);
+    ttl = strtoul(ttl_str, NULL, 10);
 
   return bgp_vty_return (vty,  peer_ebgp_multihop_set (peer, ttl));
 }
@@ -4900,7 +4894,7 @@ peer_port_vty (struct vty *vty, const char *ip_str, int afi,
     }
   else
     {
-      VTY_GET_INTEGER("port", port, port_str);
+      port = strtoul(port_str, NULL, 10);
     }
 
   peer_port_set (peer, port);
@@ -4950,7 +4944,7 @@ peer_weight_set_vty (struct vty *vty, const char *ip_str,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE("weight", weight, weight_str, 0, 65535);
+  weight = strtoul(weight_str, NULL, 10);
 
   ret = peer_weight_set (peer, afi, safi, weight);
   return bgp_vty_return (vty, ret);
@@ -5079,8 +5073,8 @@ peer_timers_set_vty (struct vty *vty, const char *ip_str,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("Keepalive", keepalive, keep_str, 0, 65535);
-  VTY_GET_INTEGER_RANGE ("Holdtime", holdtime, hold_str, 0, 65535);
+  keepalive = strtoul(keep_str, NULL, 10);
+  holdtime = strtoul(hold_str, NULL, 10);
 
   ret = peer_timers_set (peer, keepalive, holdtime);
 
@@ -5144,7 +5138,7 @@ peer_timers_connect_set_vty (struct vty *vty, const char *ip_str,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("Connect time", connect, time_str, 0, 65535);
+  connect = strtoul(time_str, NULL, 10);
 
   ret = peer_timers_connect_set (peer, connect);
 
@@ -5208,7 +5202,7 @@ peer_advertise_interval_vty (struct vty *vty, const char *ip_str,
     return CMD_WARNING;
 
   if (time_str)
-    VTY_GET_INTEGER_RANGE ("advertise interval", routeadv, time_str, 0, 600);
+    routeadv = strtoul(time_str, NULL, 10);
 
   if (set)
     ret = peer_advertise_interval_set (peer, routeadv);
@@ -5259,7 +5253,7 @@ DEFUN (bgp_set_route_map_delay_timer,
 
   if (argv[idx_number]->arg)
     {
-      VTY_GET_INTEGER_RANGE ("delay-timer", rmap_delay_timer, argv[idx_number]->arg, 0, 600);
+      rmap_delay_timer = strtoul(argv[idx_number]->arg, NULL, 10);
       bm->rmap_update_timer = rmap_delay_timer;
 
       /* if the dynamic update handling is being disabled, and a timer is
@@ -5851,7 +5845,7 @@ peer_maximum_prefix_set_vty (struct vty *vty, const char *ip_str, afi_t afi,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER ("maximum number", max, num_str);
+  max = strtoul(num_str, NULL, 10);
   if (threshold_str)
     threshold = atoi (threshold_str);
   else
@@ -6173,7 +6167,7 @@ DEFUN (neighbor_ttl_security,
   if (! peer)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER_RANGE ("", gtsm_hops, argv[idx_number]->arg, 1, 254);
+  gtsm_hops = strtoul(argv[idx_number]->arg, NULL, 10);
 
   /*
    * If 'neighbor swpX', then this is for directly connected peers,
@@ -9622,7 +9616,7 @@ DEFUN (show_ip_bgp_updgrps,
   /* get subgroup id, if provided */
   idx = argc - 1;
   if (argv[idx]->type == VARIABLE_TKN)
-    VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx]->arg);
+    subgrp_id = strtoull(argv[idx]->arg, NULL, 10);
 
   return (bgp_show_update_groups(vty, vrf, afi, safi, subgrp_id));
 }
@@ -9811,7 +9805,7 @@ DEFUN (show_ip_bgp_updgrps_adj_s,
   int idx_type = 5;
   uint64_t subgrp_id;
 
-  VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx_subgroup_id]->arg);
+  subgrp_id = strtoull(argv[idx_subgroup_id]->arg, NULL, 10);
 
   show_bgp_updgrps_adj_info_aux(vty, NULL, AFI_IP, SAFI_UNICAST, argv[idx_type]->arg, subgrp_id);
   return CMD_SUCCESS;
@@ -9836,7 +9830,7 @@ DEFUN (show_ip_bgp_instance_updgrps_adj_s,
   int idx_type = 7;
   uint64_t subgrp_id;
 
-  VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx_subgroup_id]->arg);
+  subgrp_id = strtoull(argv[idx_subgroup_id]->arg, NULL, 10);
 
   show_bgp_updgrps_adj_info_aux(vty, argv[idx_vrf]->arg, AFI_IP, SAFI_UNICAST, argv[idx_type]->arg, subgrp_id);
   return CMD_SUCCESS;
@@ -9862,7 +9856,7 @@ DEFUN (show_bgp_updgrps_afi_adj_s,
   int idx_type = 6;
   uint64_t subgrp_id;
 
-  VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx_subgroup_id]->arg);
+  subgrp_id = strtoull(argv[idx_subgroup_id]->arg, NULL, 10);
 
   show_bgp_updgrps_adj_info_aux(vty, NULL, 
                                 bgp_vty_afi_from_arg(argv[idx_afi]->arg),
@@ -9887,7 +9881,7 @@ DEFUN (show_bgp_updgrps_adj_s,
   int idx_type = 4;
   uint64_t subgrp_id;
 
-  VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx_subgroup_id]->arg);
+  subgrp_id = strtoull(argv[idx_subgroup_id]->arg, NULL, 10);
 
   show_bgp_updgrps_adj_info_aux(vty, NULL, AFI_IP6, SAFI_UNICAST, argv[idx_type]->arg, subgrp_id);
   return CMD_SUCCESS;
@@ -9911,7 +9905,7 @@ DEFUN (show_bgp_instance_updgrps_adj_s,
   int idx_type = 6;
   uint64_t subgrp_id;
 
-  VTY_GET_ULL("subgroup-id", subgrp_id, argv[idx_subgroup_id]->arg);
+  subgrp_id = strtoull(argv[idx_subgroup_id]->arg, NULL, 10);
 
   show_bgp_updgrps_adj_info_aux(vty, argv[idx_vrf]->arg, AFI_IP6, SAFI_UNICAST, argv[idx_type]->arg, subgrp_id);
   return CMD_SUCCESS;
@@ -10184,7 +10178,7 @@ DEFUN (bgp_redistribute_ipv4_metric,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, type, 0);
   bgp_redistribute_metric_set(bgp, red, AFI_IP, type, metric);
@@ -10223,7 +10217,7 @@ DEFUN (bgp_redistribute_ipv4_rmap_metric,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, type, 0);
   bgp_redistribute_rmap_set (red, argv[idx_word]->arg);
@@ -10265,7 +10259,7 @@ DEFUN (bgp_redistribute_ipv4_metric_rmap,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, type, 0);
   bgp_redistribute_metric_set(bgp, red, AFI_IP, type, metric);
@@ -10297,7 +10291,7 @@ DEFUN (bgp_redistribute_ipv4_ospf,
   u_short instance;
   u_short protocol;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
 
   if (strncmp(argv[idx_ospf_table]->arg, "o", 1) == 0)
     protocol = ZEBRA_ROUTE_OSPF;
@@ -10339,7 +10333,7 @@ DEFUN (bgp_redistribute_ipv4_ospf_rmap,
   else
     protocol = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   red = bgp_redist_add(bgp, AFI_IP, protocol, instance);
   bgp_redistribute_rmap_set (red, argv[idx_word]->arg);
   return bgp_redistribute_set (bgp, AFI_IP, protocol, instance);
@@ -10379,8 +10373,8 @@ DEFUN (bgp_redistribute_ipv4_ospf_metric,
   else
     protocol = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number_2]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
+  metric = strtoul(argv[idx_number_2]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, protocol, instance);
   bgp_redistribute_metric_set(bgp, red, AFI_IP, protocol, metric);
@@ -10424,8 +10418,8 @@ DEFUN (bgp_redistribute_ipv4_ospf_rmap_metric,
   else
     protocol = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number_2]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
+  metric = strtoul(argv[idx_number_2]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, protocol, instance);
   bgp_redistribute_rmap_set (red, argv[idx_word]->arg);
@@ -10472,8 +10466,8 @@ DEFUN (bgp_redistribute_ipv4_ospf_metric_rmap,
   else
     protocol = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number_2]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
+  metric = strtoul(argv[idx_number_2]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP, protocol, instance);
   bgp_redistribute_metric_set(bgp, red, AFI_IP, protocol, metric);
@@ -10517,7 +10511,7 @@ DEFUN (no_bgp_redistribute_ipv4_ospf,
   else
     protocol = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   return bgp_redistribute_unset (bgp, AFI_IP, protocol, instance);
 }
 
@@ -10637,7 +10631,7 @@ DEFUN (bgp_redistribute_ipv6_metric,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP6, type, 0);
   bgp_redistribute_metric_set(bgp, red, AFI_IP6, type, metric);
@@ -10668,7 +10662,7 @@ DEFUN (bgp_redistribute_ipv6_rmap_metric,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP6, type, 0);
   bgp_redistribute_rmap_set (red, argv[idx_word]->arg);
@@ -10700,7 +10694,7 @@ DEFUN (bgp_redistribute_ipv6_metric_rmap,
       vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
       return CMD_WARNING;
     }
-  VTY_GET_INTEGER ("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   red = bgp_redist_add(bgp, AFI_IP6, type, 0);
   bgp_redistribute_metric_set(bgp, red, AFI_IP6, SAFI_UNICAST, metric);
index 2caaa5ce3801d0ea25c2acfd02a2306dd5b834a4..c84109bc1a02797a6f976f34dac43e0ba0267141 100644 (file)
@@ -545,7 +545,7 @@ DEFUN (vnc_defaults_responselifetime,
     }
   else
     {
-      VTY_GET_INTEGER ("Response Lifetime", rspint, argv[1]->arg);
+      rspint = strtoul(argv[1]->arg, NULL, 10);
       if (rspint > INT32_MAX)
         rspint = INT32_MAX;     /* is really an int, not an unsigned int */
     }
@@ -1108,8 +1108,7 @@ DEFUN (vnc_redistribute_lifetime,
     }
   else
     {
-      VTY_GET_INTEGER ("Response Lifetime", bgp->rfapi_cfg->redist_lifetime,
-                       argv[3]->arg);
+      bgp->rfapi_cfg->redist_lifetime = strtoul(argv[3]->arg, NULL, 10);
     }
 
   vnc_redistribute_postchange (bgp);
@@ -3205,7 +3204,7 @@ DEFUN (vnc_nve_group_responselifetime,
     }
   else
     {
-      VTY_GET_INTEGER ("Response Lifetime", rspint, argv[1]->arg);
+      rspint = strtoul(argv[1]->arg, NULL, 10);
     }
 
   rfg->response_lifetime = rspint;
@@ -3332,7 +3331,7 @@ DEFUN (vnc_vrf_policy_label,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER_RANGE ("Label value", label, argv[1]->arg, 0, MPLS_LABEL_MAX);
+  label = strtoul(argv[1]->arg, NULL, 10);
 
   if (bgp->rfapi_cfg->rfg_redist == rfg)
     {
@@ -3873,7 +3872,7 @@ DEFUN (vnc_l2_group_lni,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER ("logical-network-id", rfg->logical_net_id, argv[1]->arg);
+  rfg->logical_net_id = strtoul(argv[1]->arg, NULL, 10);
 
   return CMD_SUCCESS;
 }
@@ -3913,7 +3912,7 @@ DEFUN (vnc_l2_group_labels,
   for (; argc; --argc, ++argv)
     {
       uint32_t label;
-      VTY_GET_INTEGER_RANGE ("Label value", label, argv[0]->arg, 0, MPLS_LABEL_MAX);
+      label = strtoul(argv[0]->arg, NULL, 10);
       if (!listnode_lookup (ll, (void *) (uintptr_t) label))
         listnode_add (ll, (void *) (uintptr_t) label);
     }
@@ -3959,7 +3958,7 @@ DEFUN (vnc_l2_group_no_labels,
   for (; argc; --argc, ++argv)
     {
       uint32_t label;
-      VTY_GET_INTEGER_RANGE ("Label value", label, argv[0]->arg, 0, MPLS_LABEL_MAX);
+      label = strtoul(argv[0]->arg, NULL, 10);
       listnode_delete (ll, (void *) (uintptr_t) label);
     }
 
index 69fae2ae40ab55bfa164fe308491eb812a9cc16e..9e621276000abccc0140965f4d598bbc98364228 100644 (file)
@@ -3339,7 +3339,7 @@ DEFUN (debug_rfapi_register_vn_un,
     }
   else
     {
-      VTY_GET_INTEGER ("Lifetime", lifetime, argv[10]->arg);
+      lifetime = strtoul(argv[10]->arg, NULL, 10);
     }
 
 
@@ -3428,13 +3428,12 @@ DEFUN (debug_rfapi_register_vn_un_l2o,
     }
   else
     {
-      VTY_GET_INTEGER ("Lifetime", lifetime, argv[10]->arg);
+      lifetime = strtoul(argv[10]->arg, NULL, 10);
     }
 
   /* L2 option parsing START */
   memset (optary, 0, sizeof (optary));
-  VTY_GET_INTEGER ("Logical Network ID",
-                   optary[opt_next].v.l2addr.logical_net_id, argv[14]->arg);
+  optary[opt_next].v.l2addr.logical_net_id = strtoul(argv[14]->arg, NULL, 10);
   if ((rc = rfapiStr2EthAddr (argv[12]->arg, &optary[opt_next].v.l2addr.macaddr)))
     {
       vty_out (vty, "Bad mac address \"%s\"%s", argv[12]->arg, VTY_NEWLINE);
@@ -3666,7 +3665,7 @@ DEFUN (debug_rfapi_query_vn_un_l2o,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER ("Logical Network ID", l2o_buf.logical_net_id, argv[8]->arg);
+  l2o_buf.logical_net_id = strtoul(argv[8]->arg, NULL, 10);
 
   /* construct option chain */
 
index 7c5d6ce3fab71d0adb396c8852928c9384c462c4..50733ff3b84663786ca2468f52863f7c810ade29 100644 (file)
@@ -2423,9 +2423,8 @@ register_add (
                         VTY_NEWLINE);
                return CMD_WARNING;
              }
-           VTY_GET_INTEGER ("Logical Network ID",
-                            optary[opt_next].v.l2addr.logical_net_id,
-                            arg_vni);
+           optary[opt_next].v.l2addr.logical_net_id = strtoul(arg_vni, NULL,
+                                                              10);
 
            if ((rc = rfapiStr2EthAddr (arg_macaddr,
                                        &optary[opt_next].v.l2addr.macaddr)))
@@ -3170,8 +3169,7 @@ parse_deleter_args (
         }
       if (strcmp (arg_vni, "*"))
         {
-          VTY_GET_INTEGER ("Logical Network ID",
-                           rcdarg->l2o.o.logical_net_id, arg_vni);
+          rcdarg->l2o.o.logical_net_id = strtoul(arg_vni, NULL, 10);
           rcdarg->l2o.flags |= RFAPI_L2O_LNI;
         }
     }
@@ -5095,7 +5093,7 @@ vnc_add_vrf_prefix (struct vty *vty,
       if (arg_label)
         {
           int32_t label;
-          VTY_GET_INTEGER_RANGE ("Label value", label, arg_label, 0, MPLS_LABEL_MAX);
+          label = strtoul(arg_label, NULL, 10);
           l2o->label = label;
         }
       else
index dad81c6ddb9790bf1c60678250e401ca4495c3a4..b6221b5ba52bef617a1d8f521020f5681b2681d4 100644 (file)
@@ -49,7 +49,7 @@ DEFUN (rfp_example_config_value,
   rfi = rfapi_get_rfp_start_val (VTY_GET_CONTEXT (bgp));   /* BGP_NODE */
   assert (rfi != NULL);
 
-  VTY_GET_INTEGER ("Example value", value, argv[2]->arg);
+  value = strtoul(argv[2]->arg, NULL, 10);
   if (rfi)
     rfi->config_var = value;
   return CMD_SUCCESS;
index c6ff7b5a80dc8802d2a03009832ee38f60e9ca9d..7762bc18c64df60576ba2d723f306a44f9f26af8 100644 (file)
@@ -387,7 +387,7 @@ DEFUN (eigrp_network,
   struct prefix_ipv4 p;
   int ret;
 
-  VTY_GET_IPV4_PREFIX ("network prefix", p, argv[1]->arg);
+  str2prefix_ipv4(argv[1]->arg, &p);
 
   ret = eigrp_network_set (eigrp, &p);
 
@@ -411,7 +411,7 @@ DEFUN (no_eigrp_network,
   struct prefix_ipv4 p;
   int ret;
 
-  VTY_GET_IPV4_PREFIX ("network prefix", p, argv[2]->arg);
+  str2prefix_ipv4(argv[2]->arg, &p);
 
   ret = eigrp_network_unset (eigrp, &p);
 
@@ -1294,7 +1294,7 @@ DEFUN (clear_ip_eigrp_neighbors_IP,
   struct eigrp_neighbor *nbr;
   struct in_addr nbr_addr;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[4]->arg);
+  inet_aton(argv[4]->arg, &nbr_addr);
 
   /* Check if eigrp process is enabled */
   eigrp = eigrp_lookup ();
@@ -1402,7 +1402,7 @@ DEFUN (clear_ip_eigrp_neighbors_IP_soft,
   struct eigrp_neighbor *nbr;
   struct in_addr nbr_addr;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[4]->arg);
+  inet_aton(argv[4]->arg, &nbr_addr);
 
   /* Check if eigrp process is enabled */
   eigrp = eigrp_lookup ();
index 4d758315e2aee46026b0e03e728d2b5881963c94..ed00bcd22120aca7c3b860cafd596d4d871a562b 100644 (file)
@@ -1532,7 +1532,7 @@ DEFUN (area_lsp_mtu,
   int idx_number = 1;
   unsigned int lsp_mtu;
 
-  VTY_GET_INTEGER_RANGE("lsp-mtu", lsp_mtu, argv[idx_number]->arg, 128, 4352);
+  lsp_mtu = strtoul(argv[idx_number]->arg, NULL, 10);
 
   return area_lsp_mtu_set(vty, lsp_mtu);
 }
index 217fc09722e5849564bceb5e8e59cef680052312..99d13c25971a03accefde6d0312d0886615b3d58 100644 (file)
--- a/lib/bfd.c
+++ b/lib/bfd.c
@@ -93,12 +93,9 @@ bfd_validate_param(struct vty *vty, const char *dm_str, const char *rx_str,
                     const char *tx_str, u_int8_t *dm_val, u_int32_t *rx_val,
                     u_int32_t *tx_val)
 {
-  VTY_GET_INTEGER_RANGE ("detect-mul", *dm_val, dm_str,
-                         BFD_MIN_DETECT_MULT, BFD_MAX_DETECT_MULT);
-  VTY_GET_INTEGER_RANGE ("min-rx", *rx_val, rx_str,
-                         BFD_MIN_MIN_RX, BFD_MAX_MIN_RX);
-  VTY_GET_INTEGER_RANGE ("min-tx", *tx_val, tx_str,
-                         BFD_MIN_MIN_TX, BFD_MAX_MIN_TX);
+  *dm_val = strtoul(dm_str, NULL, 10);
+  *rx_val = strtoul(rx_str, NULL, 10);
+  *tx_val = strtoul(tx_str, NULL, 10);
   return CMD_SUCCESS;
 }
 
index 585371099981692f9e2a6316a8a66d086ea8b20e..56fedf09149b36ca450d71190ecf5a44d761d741 100644 (file)
@@ -2345,8 +2345,7 @@ DEFUN (config_log_timestamp_precision,
        "Number of subsecond digits\n")
 {
   int idx_number = 3;
-  VTY_GET_INTEGER_RANGE("Timestamp Precision",
-                        zlog_default->timestamp_precision, argv[idx_number]->arg, 0, 6);
+  zlog_default->timestamp_precision = strtoul(argv[idx_number]->arg, NULL, 10);
   return CMD_SUCCESS;
 }
 
index 1aa6edb4bdfa983a05c207d5e9e36b8bd5a2e51c..0624ef69e3c2bbe7e199c55b9d90f18e8ae5a327 100644 (file)
@@ -291,7 +291,7 @@ DEFUN_NOSH (key,
   struct key *key;
   u_int32_t index;
 
-  VTY_GET_INTEGER ("key identifier", index, argv[idx_number]->arg);
+  index = strtoul (argv[idx_number]->arg, NULL, 10);
   key = key_get (keychain, index);
   VTY_PUSH_CONTEXT_SUB (KEYCHAIN_KEY_NODE, key);
   
@@ -310,7 +310,7 @@ DEFUN (no_key,
   struct key *key;
   u_int32_t index;
   
-  VTY_GET_INTEGER ("key identifier", index, argv[idx_number]->arg);
+  index = strtoul(argv[idx_number]->arg, NULL, 10);
   key = key_lookup (keychain, index);
   if (! key)
     {
@@ -517,7 +517,7 @@ key_lifetime_duration_set (struct vty *vty, struct key_range *krange,
     }
   krange->start = time_start;
 
-  VTY_GET_INTEGER ("duration", duration, duration_str);
+  duration = strtoul(duration_str, NULL, 10);
   krange->duration = 1;
   krange->end = time_start + duration;
 
index 68dc3fa340ec7d75d6931a976933a26f772d89f7..192f655d9de7db5d9970eaeaba9846bebfffb91b 100644 (file)
--- a/lib/ns.c
+++ b/lib/ns.c
@@ -320,7 +320,7 @@ DEFUN_NOSH (ns_netns,
   if (!pathname)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER ("NS ID", ns_id, argv[idx_number]->arg);
+  ns_id = strtoul (argv[idx_number]->arg, NULL, 10);
   ns = ns_get (ns_id);
 
   if (ns->name && strcmp (ns->name, pathname) != 0)
@@ -361,7 +361,7 @@ DEFUN (no_ns_netns,
   if (!pathname)
     return CMD_WARNING;
 
-  VTY_GET_INTEGER ("NS ID", ns_id, argv[idx_number]->arg);
+  ns_id = strtoul(argv[idx_number]->arg, NULL, 10);
   ns = ns_lookup (ns_id);
 
   if (!ns)
index fcd3c7a7aa9de9a4d240ff39921329f89a84c3b9..531a1faa191f45ec905161d4ef816e0924cdb30c 100644 (file)
@@ -2688,7 +2688,7 @@ DEFUN (rmap_onmatch_goto,
         }
 
       if (num)
-        VTY_GET_INTEGER_RANGE("route-map index", d, num, 1, 65535);
+        d = strtoul(num, NULL, 10);
       else
         d = index->pref + 1;
       
index 7dc9e339f1d72819bc970d3c0f2df9da374ccb6d..e658eb236cd24ef3b2ce5b44aa9232ff3b9f313d 100644 (file)
--- a/lib/vty.h
+++ b/lib/vty.h
@@ -204,115 +204,6 @@ struct vty_arg
 #define PRINTF_ATTRIBUTE(a,b)
 #endif /* __GNUC__ */
 
-/* Utility macros to convert VTY argument to unsigned long */
-#define VTY_GET_ULONG(NAME,V,STR) \
-do { \
-  char *endptr = NULL; \
-  errno = 0; \
-  (V) = strtoul ((STR), &endptr, 10); \
-  if (*(STR) == '-') \
-    { \
-      vty_out (vty, "%% Invalid %s value (dash)%s", NAME, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-  if (*endptr != '\0') \
-    { \
-      vty_out (vty, "%% Invalid %s value (%s)%s", NAME, endptr, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-  if (errno) \
-    { \
-      vty_out (vty, "%% Invalid %s value (error %d)%s", NAME, errno, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-} while (0)
-
-/* Utility macros to convert VTY argument to unsigned long long */
-#define VTY_GET_ULL(NAME,V,STR) \
-do { \
-  char *endptr = NULL; \
-  errno = 0; \
-  (V) = strtoull ((STR), &endptr, 10); \
-  if (*(STR) == '-') \
-    { \
-      vty_out (vty, "%% Invalid %s value (dash)%s", NAME, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-  if (*endptr != '\0') \
-    { \
-      vty_out (vty, "%% Invalid %s value (%s)%s", NAME, endptr, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-  if (errno) \
-    { \
-      vty_out (vty, "%% Invalid %s value (error %d)%s", NAME, errno, VTY_NEWLINE); \
-      return CMD_WARNING; \
-    } \
-} while (0)
-
-/*
- * The logic below ((TMPL) <= ((MIN) && (TMPL) != (MIN)) is
- * done to circumvent the compiler complaining about
- * comparing unsigned numbers against zero, if MIN is zero.
- * NB: The compiler isn't smart enough to supress the warning
- * if you write (MIN) != 0 && tmpl < (MIN).
- */
-#define VTY_GET_INTEGER_RANGE_HEART(NAME,TMPL,STR,MIN,MAX)      \
-do {                                                            \
-  VTY_GET_ULONG(NAME, (TMPL), STR);                             \
-  if ( ((TMPL) <= (MIN) && (TMPL) != (MIN)) || (TMPL) > (MAX) ) \
-    {                                                           \
-      vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE);\
-      return CMD_WARNING;                                       \
-    }                                                           \
-} while (0)
-
-#define VTY_GET_INTEGER_RANGE(NAME,V,STR,MIN,MAX)               \
-do {                                                            \
-  unsigned long long tmpl;                                      \
-  VTY_GET_INTEGER_RANGE_HEART(NAME,tmpl,STR,MIN,MAX);           \
-  (V) = tmpl;                                                   \
-} while (0)
-
-#define VTY_CHECK_INTEGER_RANGE(NAME,STR,MIN,MAX)               \
-do {                                                            \
-  unsigned long tmpl;                                           \
-  VTY_GET_INTEGER_RANGE_HEART(NAME,tmpl,STR,MIN,MAX);           \
-} while (0)
-
-#define VTY_GET_INTEGER(NAME,V,STR)                             \
-    VTY_GET_INTEGER_RANGE(NAME,V,STR,0U,UINT32_MAX)
-
-#define VTY_GET_IPV4_ADDRESS(NAME,V,STR)                                      \
-do {                                                                             \
-  int retv;                                                                   \
-  retv = inet_aton ((STR), &(V));                                             \
-  if (!retv)                                                                  \
-    {                                                                         \
-      vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE);              \
-      return CMD_WARNING;                                                     \
-    }                                                                         \
-} while (0)
-
-#define VTY_GET_IPV4_PREFIX(NAME,V,STR)                                       \
-do {                                                                             \
-  int retv;                                                                   \
-  retv = str2prefix_ipv4 ((STR), &(V));                                       \
-  if (retv <= 0)                                                              \
-    {                                                                         \
-      vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE);              \
-      return CMD_WARNING;                                                     \
-    }                                                                         \
-} while (0)
-
-#define VTY_WARN_EXPERIMENTAL()                                               \
-do {                                                                          \
-  vty_out (vty, "%% WARNING: this command is experimental. Both its name and" \
-                " parameters may%s%% change in a future version of Quagga,"   \
-                " possibly breaking your configuration!%s",                   \
-                VTY_NEWLINE, VTY_NEWLINE);                                    \
-} while (0)
-
 /* Exported variables */
 extern char integrate_default[];
 
index f7c55a7ac465c0d79f751876b567e496d542dff2..823a80967b1509966cb11bf96dfd65edfc2c9e85 100644 (file)
@@ -233,7 +233,7 @@ DEFUN(nhrp_nflog_group, nhrp_nflog_group_cmd,
 {
        uint32_t nfgroup;
 
-       VTY_GET_INTEGER_RANGE("nflog-group", nfgroup, argv[2]->arg, 1, 65535);
+       nfgroup = strtoul(argv[2]->arg, NULL, 10);
        netlink_set_nflog_group(nfgroup);
 
        return CMD_SUCCESS;
@@ -312,7 +312,7 @@ DEFUN(if_nhrp_network_id, if_nhrp_network_id_cmd,
        struct nhrp_interface *nifp = ifp->info;
        afi_t afi = cmd_to_afi(argv[0]);
 
-       VTY_GET_INTEGER_RANGE("network-id", nifp->afi[afi].network_id, argv[3]->arg, 1, 4294967295);
+       nifp->afi[afi].network_id = strtoul(argv[3]->arg, NULL, 10);
        nhrp_interface_update(ifp);
 
        return CMD_SUCCESS;
@@ -407,7 +407,7 @@ DEFUN(if_nhrp_holdtime, if_nhrp_holdtime_cmd,
        struct nhrp_interface *nifp = ifp->info;
        afi_t afi = cmd_to_afi(argv[0]);
 
-       VTY_GET_INTEGER_RANGE("holdtime", nifp->afi[afi].holdtime, argv[3]->arg, 1, 65000);
+       nifp->afi[afi].holdtime = strtoul(argv[3]->arg, NULL, 10);
        nhrp_interface_update(ifp);
 
        return CMD_SUCCESS;
@@ -445,7 +445,8 @@ DEFUN(if_nhrp_mtu, if_nhrp_mtu_cmd,
        if (argv[3]->arg[0] == 'o') {
                nifp->afi[AFI_IP].configured_mtu = -1;
        } else {
-               VTY_GET_INTEGER_RANGE("mtu", nifp->afi[AFI_IP].configured_mtu, argv[3]->arg, 576, 1500);
+               nifp->afi[AFI_IP].configured_mtu = strtoul(argv[3]->arg, NULL,
+                                                          10);
        }
        nhrp_interface_update_mtu(ifp, AFI_IP);
 
index deb2c0770027f3962ff86530eb811e031da25683..a4996018ac7af6001453cc03bbf8a0dc95205b91 100644 (file)
@@ -480,7 +480,7 @@ DEFUN (area_range,
        }
       else
        {
-         VTY_GET_INTEGER_RANGE ("cost", cost, argv[5]->arg, 0, OSPF_LS_INFINITY);
+         cost = strtoul(argv[5]->arg, NULL, 10);
          UNSET_FLAG (range->flag, OSPF6_ROUTE_DO_NOT_ADVERTISE);
        }
     }
index e7cfd3fc9a4f6c6547aa253d46869f7da5fb9798..c8c495dca277bf9f8f930cc9c226fcabf2a18e27 100644 (file)
@@ -885,9 +885,9 @@ DEFUN (ospf6_timers_throttle_spf,
   int idx_number_3 = 5;
   unsigned int delay, hold, max;
 
-  VTY_GET_INTEGER_RANGE ("SPF delay timer", delay, argv[idx_number]->arg, 0, 600000);
-  VTY_GET_INTEGER_RANGE ("SPF hold timer", hold, argv[idx_number_2]->arg, 0, 600000);
-  VTY_GET_INTEGER_RANGE ("SPF max-hold timer", max, argv[idx_number_3]->arg, 0, 600000);
+  delay = strtoul(argv[idx_number]->arg, NULL, 10);
+  hold = strtoul(argv[idx_number_2]->arg, NULL, 10);
+  max = strtoul(argv[idx_number_3]->arg, NULL, 10);
 
   return ospf6_timers_spf_set (vty, delay, hold, max);
 }
index dfda06678c6f9db51e8d3066544b489cca73ea08..c0794d863866473ac19d3b70f165f4c9e161d9fe 100644 (file)
@@ -417,7 +417,7 @@ DEFUN (ospf6_timers_lsa,
   int idx_number = 3;
   unsigned int minarrival;
 
-  VTY_GET_INTEGER ("LSA min-arrival", minarrival, argv[idx_number]->arg);
+  minarrival = strtoul(argv[idx_number]->arg, NULL, 10);
   ospf->lsa_minarrival = minarrival;
 
   return CMD_SUCCESS;
@@ -438,7 +438,7 @@ DEFUN (no_ospf6_timers_lsa,
 
   if (argc == 5)
     {
-      VTY_GET_INTEGER ("LSA min-arrival", minarrival, argv[idx_number]->arg);
+      minarrival = strtoul(argv[idx_number]->arg, NULL, 10);
 
       if (ospf->lsa_minarrival != minarrival ||
          minarrival == OSPF_MIN_LS_ARRIVAL)
index f33d92f876659112c5046cb55d78550b6967220d..93017aafc0016008743dd2f54afb342c5e0de8eb 100644 (file)
@@ -963,7 +963,7 @@ DEFUN (debug_ospf_instance_nsm,
   int idx_number = 2;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1038,7 +1038,7 @@ DEFUN (no_debug_ospf_instance_nsm,
   int idx_number = 3;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1115,7 +1115,7 @@ DEFUN (debug_ospf_instance_lsa,
   int idx_number = 2;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1194,7 +1194,7 @@ DEFUN (no_debug_ospf_instance_lsa,
   int idx_number = 3;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1259,7 +1259,7 @@ DEFUN (debug_ospf_instance_zebra,
   int idx_number = 2;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1327,7 +1327,7 @@ DEFUN (no_debug_ospf_instance_zebra,
   int idx_number = 3;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1374,7 +1374,7 @@ DEFUN (debug_ospf_instance_event,
   int idx_number = 2;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1396,7 +1396,7 @@ DEFUN (no_debug_ospf_instance_event,
   int idx_number = 3;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1444,7 +1444,7 @@ DEFUN (debug_ospf_instance_nssa,
   int idx_number = 2;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1466,7 +1466,7 @@ DEFUN (no_debug_ospf_instance_nssa,
   int idx_number = 3;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if (!ospf_lookup_instance (instance))
     return CMD_SUCCESS;
 
@@ -1688,7 +1688,7 @@ DEFUN (show_debugging_ospf_instance,
   struct ospf *ospf;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL )
     return CMD_SUCCESS;
 
index c831b138237e638f14830f64e51c8cfdb5ddd6a4..8f847df93c05f9d68372d6f5c7063235fb68cace 100644 (file)
@@ -155,7 +155,7 @@ DEFUN_NOSH (router_ospf,
     }
 
   if (argc > 2)
-    VTY_GET_INTEGER ("Instance", instance, argv[2]->arg);
+    instance = strtoul (argv[2]->arg, NULL, 10);
 
   /* The following logic to set the vty qobj index is in place to be able
      to ignore the commands which dont belong to this instance. */
@@ -185,7 +185,7 @@ DEFUN (no_router_ospf,
   u_short instance = 0;
 
   if (argc > 3)
-    VTY_GET_INTEGER ("Instance", instance, argv[3]->arg);
+    instance = strtoul(argv[3]->arg, NULL, 10);
 
   if ((ospf = ospf_lookup_instance (instance)) == NULL)
     return CMD_SUCCESS;
@@ -523,7 +523,7 @@ DEFUN (ospf_network_area,
     }
 
   /* Get network prefix and Area ID. */
-  VTY_GET_IPV4_PREFIX ("network prefix", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
 
   ret = ospf_network_set (ospf, &p, area_id, format);
@@ -561,7 +561,7 @@ DEFUN (no_ospf_network_area,
     }
 
   /* Get network prefix and Area ID. */
-  VTY_GET_IPV4_PREFIX ("network prefix", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
 
   ret = ospf_network_unset (ospf, &p, area_id);
@@ -597,12 +597,12 @@ DEFUN (ospf_area_range,
   u_int32_t cost;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
 
   ospf_area_range_set (ospf, area_id, &p, OSPF_AREA_RANGE_ADVERTISE);
   if (argc > 5)
     {
-      VTY_GET_INTEGER ("range cost", cost, argv[idx_cost]->arg);
+      cost = strtoul(argv[idx_cost]->arg, NULL, 10);
       ospf_area_range_cost_set (ospf, area_id, &p, cost);
     }
 
@@ -630,12 +630,12 @@ DEFUN (ospf_area_range_cost,
   u_int32_t cost;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
 
   ospf_area_range_set (ospf, area_id, &p, OSPF_AREA_RANGE_ADVERTISE);
   ospf_area_display_format_set (ospf, ospf_area_get (ospf, area_id), format);
 
-  VTY_GET_INTEGER ("range cost", cost, argv[idx_cost]->arg);
+  cost = strtoul(argv[idx_cost]->arg, NULL, 10);
   ospf_area_range_cost_set (ospf, area_id, &p, cost);
 
   return CMD_SUCCESS;
@@ -659,7 +659,7 @@ DEFUN (ospf_area_range_not_advertise,
   int format;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
 
   ospf_area_range_set (ospf, area_id, &p, 0);
   ospf_area_display_format_set (ospf, ospf_area_get (ospf, area_id), format);
@@ -691,7 +691,7 @@ DEFUN (no_ospf_area_range,
   int format;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
 
   ospf_area_range_unset (ospf, area_id, &p);
 
@@ -718,8 +718,8 @@ DEFUN (ospf_area_range_substitute,
   int format;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
-  VTY_GET_IPV4_PREFIX ("substituted network prefix", s, argv[idx_ipv4_prefixlen_2]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen_2]->arg, &s);
 
   ospf_area_range_substitute_set (ospf, area_id, &p, &s);
   ospf_area_display_format_set (ospf, ospf_area_get (ospf, area_id), format);
@@ -748,8 +748,8 @@ DEFUN (no_ospf_area_range_substitute,
   int format;
 
   VTY_GET_OSPF_AREA_ID (area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_IPV4_PREFIX ("area range", p, argv[idx_ipv4_prefixlen]->arg);
-  VTY_GET_IPV4_PREFIX ("substituted network prefix", s, argv[idx_ipv4_prefixlen_2]->arg);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen]->arg, &p);
+  str2prefix_ipv4(argv[idx_ipv4_prefixlen_2]->arg, &s);
 
   ospf_area_range_substitute_unset (ospf, area_id, &p);
 
@@ -1651,7 +1651,7 @@ DEFUN (ospf_area_default_cost,
   struct prefix_ipv4 p;
 
   VTY_GET_OSPF_AREA_ID_NO_BB ("default-cost", area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_GET_INTEGER_RANGE ("stub default cost", cost, argv[idx_number]->arg, 0, 16777215);
+  cost = strtoul(argv[idx_number]->arg, NULL, 10);
 
   area = ospf_area_get (ospf, area_id);
   ospf_area_display_format_set (ospf, area, format);
@@ -1688,14 +1688,12 @@ DEFUN (no_ospf_area_default_cost,
 {
   VTY_DECLVAR_CONTEXT(ospf, ospf);
   int idx_ipv4_number = 2;
-  int idx_number = 4;
   struct ospf_area *area;
   struct in_addr area_id;
   int format;
   struct prefix_ipv4 p;
 
   VTY_GET_OSPF_AREA_ID_NO_BB ("default-cost", area_id, format, argv[idx_ipv4_number]->arg);
-  VTY_CHECK_INTEGER_RANGE ("stub default cost", argv[idx_number]->arg, 0, OSPF_LS_INFINITY);
 
   area = ospf_area_lookup_by_area_id (ospf, area_id);
   if (area == NULL)
@@ -2211,7 +2209,7 @@ DEFUN (ospf_timers_min_ls_interval,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER ("LSA interval", interval, argv[idx_number]->arg);
+  interval = strtoul(argv[idx_number]->arg, NULL, 10);
 
   ospf->min_ls_interval = interval;
 
@@ -2253,7 +2251,7 @@ DEFUN (ospf_timers_min_ls_arrival,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER_RANGE ("minimum LSA inter-arrival time", arrival, argv[idx_number]->arg, 0, 1000);
+  arrival = strtoul(argv[idx_number]->arg, NULL, 10);
 
   ospf->min_ls_arrival = arrival;
 
@@ -2298,9 +2296,9 @@ DEFUN (ospf_timers_throttle_spf,
       return CMD_WARNING;
     }
   
-  VTY_GET_INTEGER_RANGE ("SPF delay timer", delay, argv[idx_number]->arg, 0, 600000);
-  VTY_GET_INTEGER_RANGE ("SPF hold timer", hold, argv[idx_number_2]->arg, 0, 600000);
-  VTY_GET_INTEGER_RANGE ("SPF max-hold timer", max, argv[idx_number_3]->arg, 0, 600000);
+  delay = strtoul(argv[idx_number]->arg, NULL, 10);
+  hold = strtoul(argv[idx_number_2]->arg, NULL, 10);
+  max = strtoul(argv[idx_number_3]->arg, NULL, 10);
   
   return ospf_timers_spf_set (vty, delay, hold, max);
 }
@@ -2341,7 +2339,7 @@ DEFUN (ospf_timers_lsa,
       return CMD_WARNING;
     }
 
-  VTY_GET_INTEGER ("LSA min-arrival", minarrival, argv[idx_number]->arg);
+  minarrival = strtoul(argv[idx_number]->arg, NULL, 10);
 
   ospf->min_ls_arrival = minarrival;
 
@@ -2362,7 +2360,7 @@ DEFUN (no_ospf_timers_lsa,
 
   if (argc > 4)
     {
-      VTY_GET_INTEGER ("LSA min-arrival", minarrival, argv[4]->arg);
+      minarrival = strtoul(argv[4]->arg, NULL, 10);
 
       if (ospf->min_ls_arrival != minarrival ||
          minarrival == OSPF_MIN_LS_ARRIVAL)
@@ -2392,13 +2390,13 @@ DEFUN (ospf_neighbor,
   unsigned int priority = OSPF_NEIGHBOR_PRIORITY_DEFAULT;
   unsigned int interval = OSPF_POLL_INTERVAL_DEFAULT;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[idx_ipv4]->arg);
+  inet_aton(argv[idx_ipv4]->arg, &nbr_addr);
 
   if (argc > 2)
-    VTY_GET_INTEGER_RANGE ("neighbor priority", priority, argv[idx_pri]->arg, 0, 255);
+    priority = strtoul(argv[idx_pri]->arg, NULL, 10);
 
   if (argc > 4)
-    VTY_GET_INTEGER_RANGE ("poll interval", interval, argv[idx_poll]->arg, 1, 65535);
+    interval = strtoul(argv[idx_poll]->arg, NULL, 10);
 
   ospf_nbr_nbma_set (ospf, nbr_addr);
 
@@ -2429,12 +2427,12 @@ DEFUN (ospf_neighbor_poll_interval,
   unsigned int priority = OSPF_NEIGHBOR_PRIORITY_DEFAULT;
   unsigned int interval = OSPF_POLL_INTERVAL_DEFAULT;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[idx_ipv4]->arg);
+  inet_aton(argv[idx_ipv4]->arg, &nbr_addr);
 
-  VTY_GET_INTEGER_RANGE ("poll interval", interval, argv[idx_poll]->arg, 1, 65535);
+  interval = strtoul(argv[idx_poll]->arg, NULL, 10);
 
   if (argc > 4)
-    VTY_GET_INTEGER_RANGE ("neighbor priority", priority, argv[idx_pri]->arg, 0, 255);
+    priority = strtoul(argv[idx_pri]->arg, NULL, 10);
 
   ospf_nbr_nbma_set (ospf, nbr_addr);
   ospf_nbr_nbma_poll_interval_set (ospf, nbr_addr, interval);
@@ -2460,7 +2458,7 @@ DEFUN (no_ospf_neighbor,
   int idx_ipv4 = 2;
   struct in_addr nbr_addr;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[idx_ipv4]->arg);
+  inet_aton(argv[idx_ipv4]->arg, &nbr_addr);
 
   (void)ospf_nbr_nbma_unset (ospf, nbr_addr);
 
@@ -2482,7 +2480,7 @@ DEFUN (no_ospf_neighbor_poll,
   int idx_ipv4 = 2;
   struct in_addr nbr_addr;
 
-  VTY_GET_IPV4_ADDRESS ("neighbor address", nbr_addr, argv[idx_ipv4]->arg);
+  inet_aton(argv[idx_ipv4]->arg, &nbr_addr);
 
   (void)ospf_nbr_nbma_unset (ospf, nbr_addr);
 
@@ -2500,7 +2498,7 @@ DEFUN (ospf_refresh_timer,
   int idx_number = 2;
   unsigned int interval;
 
-  VTY_GET_INTEGER_RANGE ("refresh timer", interval, argv[idx_number]->arg, 10, 1800);
+  interval = strtoul(argv[idx_number]->arg, NULL, 10);
   interval = (interval / OSPF_LSA_REFRESHER_GRANULARITY) * OSPF_LSA_REFRESHER_GRANULARITY;
 
   ospf_timers_refresh_set (ospf, interval);
@@ -2522,7 +2520,7 @@ DEFUN (no_ospf_refresh_timer,
 
   if (argc == 1)
     {
-      VTY_GET_INTEGER_RANGE ("refresh timer", interval, argv[idx_number]->arg, 10, 1800);
+      interval = strtoul(argv[idx_number]->arg, NULL, 10);
   
       if (ospf->lsa_refresh_interval != interval ||
          interval == OSPF_LSA_REFRESH_INTERVAL_DEFAULT)
@@ -3237,7 +3235,7 @@ DEFUN (show_ip_ospf_instance,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -3634,7 +3632,7 @@ DEFUN (show_ip_ospf_instance_interface,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -3792,7 +3790,7 @@ DEFUN (show_ip_ospf_instance_neighbor,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -3905,7 +3903,7 @@ DEFUN (show_ip_ospf_instance_neighbor_all,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -4000,7 +3998,7 @@ DEFUN (show_ip_ospf_instance_neighbor_int,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -4372,7 +4370,7 @@ DEFUN (show_ip_ospf_instance_neighbor_id,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -4464,7 +4462,7 @@ DEFUN (show_ip_ospf_instance_neighbor_detail,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -4564,7 +4562,7 @@ DEFUN (show_ip_ospf_instance_neighbor_detail_all,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -4667,7 +4665,7 @@ DEFUN (show_ip_ospf_instance_neighbor_int_detail,
   u_short instance = 0;
   u_char uj = use_json(argc, argv);
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance(instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -5421,7 +5419,7 @@ DEFUN (show_ip_ospf_instance_database,
   int idx = 0;
   if (argv_find (argv, argc, "(1-65535)", &idx))
   {
-    VTY_GET_INTEGER ("Instance", instance, argv[idx]->arg);
+    instance = strtoul(argv[idx]->arg, NULL, 10);
     ospf = ospf_lookup_instance (instance);
   }
   else {
@@ -5449,7 +5447,7 @@ DEFUN (show_ip_ospf_instance_database_max,
   struct ospf *ospf;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
 
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
@@ -5550,7 +5548,7 @@ DEFUN (show_ip_ospf_instance_database_type_adv_router,
   struct ospf *ospf;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
 
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
@@ -6225,8 +6223,7 @@ ospf_vty_dead_interval_set (struct vty *vty, const char *interval_str,
 
   if (interval_str)
     {
-      VTY_GET_INTEGER_RANGE ("Router Dead Interval", seconds, interval_str,
-                             1, 65535);
+      seconds = strtoul(interval_str, NULL, 10);
                              
       /* reset fast_hello too, just to be sure */
       UNSET_IF_PARAM (params, fast_hello);
@@ -6234,8 +6231,7 @@ ospf_vty_dead_interval_set (struct vty *vty, const char *interval_str,
     }
   else if (fast_hello_str)
     {
-      VTY_GET_INTEGER_RANGE ("Hello Multiplier", hellomult, fast_hello_str,
-                             1, 10);
+      hellomult = strtoul(fast_hello_str, NULL, 10);
       /* 1s dead-interval with sub-second hellos desired */
       seconds = OSPF_ROUTER_DEAD_INTERVAL_MINIMAL;
       SET_IF_PARAM (params, fast_hello);
@@ -7186,7 +7182,7 @@ DEFUN (ospf_redistribute_instance_source,
 
   source = proto_redistnum (AFI_IP, argv[idx_ospf_table]->text);
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
 
   if (!ospf)
     return CMD_SUCCESS;
@@ -7255,7 +7251,7 @@ DEFUN (no_ospf_redistribute_instance_source,
   else
     source = ZEBRA_ROUTE_TABLE;
 
-  VTY_GET_INTEGER ("Instance ID", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
 
   if ((source == ZEBRA_ROUTE_OSPF) && !ospf->instance)
     {
@@ -7768,7 +7764,7 @@ DEFUN (ospf_max_metric_router_lsa_startup,
       return CMD_WARNING;
     }
   
-  VTY_GET_INTEGER ("stub-router startup period", seconds, argv[idx_number]->arg);
+  seconds = strtoul(argv[idx_number]->arg, NULL, 10);
   
   ospf->stub_router_startup_time = seconds;
   
@@ -7824,7 +7820,7 @@ DEFUN (ospf_max_metric_router_lsa_shutdown,
       return CMD_WARNING;
     }
   
-  VTY_GET_INTEGER ("stub-router shutdown wait period", seconds, argv[idx_number]->arg);
+  seconds = strtoul(argv[idx_number]->arg, NULL, 10);
   
   ospf->stub_router_shutdown_time = seconds;
   
@@ -8077,7 +8073,7 @@ DEFUN (show_ip_ospf_instance_border_routers,
   struct ospf *ospf;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
@@ -8140,7 +8136,7 @@ DEFUN (show_ip_ospf_instance_route,
   struct ospf *ospf;
   u_short instance = 0;
 
-  VTY_GET_INTEGER ("Instance", instance, argv[idx_number]->arg);
+  instance = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((ospf = ospf_lookup_instance (instance)) == NULL || !ospf->oi_running)
     return CMD_SUCCESS;
 
index 11d1ed01f3c8cc74ea2f6a28076b769b75eb30bd..eac01f7d5a42613ff87a14bb72d6c0cd3f69c777 100644 (file)
@@ -2534,9 +2534,9 @@ DEFUN (ripng_timers,
   unsigned long timeout;
   unsigned long garbage;
 
-  VTY_GET_INTEGER_RANGE("update timer", update, argv[idx_number]->arg, 0, 65535);
-  VTY_GET_INTEGER_RANGE("timeout timer", timeout, argv[idx_number_2]->arg, 0, 65535);
-  VTY_GET_INTEGER_RANGE("garbage timer", garbage, argv[idx_number_3]->arg, 0, 65535);
+  update = strtoul(argv[idx_number]->arg, NULL, 10);
+  timeout = strtoul(argv[idx_number_2]->arg, NULL, 10);
+  garbage = strtoul(argv[idx_number_3]->arg, NULL, 10);
 
   /* Set each timer value. */
   ripng->update_time = update;
index 9393305f06f89e307e8bf3c4d512f034aa30382a..e8b1cf733b355772a83384d74b037a8673eb60cf 100644 (file)
@@ -1806,7 +1806,7 @@ DEFUN (link_params_metric,
   struct if_link_params *iflp = if_link_params_get (ifp);
   u_int32_t metric;
 
-  VTY_GET_ULONG("metric", metric, argv[idx_number]->arg);
+  metric = strtoul(argv[idx_number]->arg, NULL, 10);
 
   /* Update TE metric if needed */
   link_param_cmd_set_uint32 (ifp, &iflp->te_metric, LP_TE_METRIC, metric);
@@ -2011,7 +2011,7 @@ DEFUN (link_params_inter_as,
       return CMD_WARNING;
     }
 
-  VTY_GET_ULONG("AS number", as, argv[idx_number]->arg);
+  as = strtoul(argv[idx_number]->arg, NULL, 10);
 
   /* Update Remote IP and Remote AS fields if needed */
   if (IS_PARAM_UNSET(iflp, LP_RMT_AS)
@@ -2064,11 +2064,11 @@ DEFUN (link_params_delay,
 {
   /* Get and Check new delay values */
   u_int32_t delay = 0, low = 0, high = 0;
-  VTY_GET_ULONG("delay", delay, argv[1]->arg);
+  delay = strtoul(argv[1]->arg, NULL, 10);
   if (argc == 6)
   {
-    VTY_GET_ULONG("minimum delay", low, argv[3]->arg);
-    VTY_GET_ULONG("maximum delay", high, argv[5]->arg);
+    low = strtoul(argv[3]->arg, NULL, 10);
+    high = strtoul(argv[5]->arg, NULL, 10);
   }
 
   VTY_DECLVAR_CONTEXT (interface, ifp);
@@ -2167,7 +2167,7 @@ DEFUN (link_params_delay_var,
   struct if_link_params *iflp = if_link_params_get (ifp);
   u_int32_t value;
 
-  VTY_GET_ULONG("delay variation", value, argv[idx_number]->arg);
+  value = strtoul(argv[idx_number]->arg, NULL, 10);
 
   /* Update Delay Variation if needed */
   link_param_cmd_set_uint32 (ifp, &iflp->delay_var, LP_DELAY_VAR, value);
index 5b0b44572f854c49bca0b7470a744d375ccb87dd..76b09c0e7b0481486ddda10d9209a0eca1e82f5f 100644 (file)
@@ -926,7 +926,7 @@ DEFUN (ipv6_nd_ra_interval_msec,
   struct zebra_ns *zns;
 
   zns = zvrf->zns;
-  VTY_GET_INTEGER_RANGE ("router advertisement interval", interval, argv[idx_number]->arg, 70, 1800000);
+  interval = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((zif->rtadv.AdvDefaultLifetime != -1 && interval > (unsigned)zif->rtadv.AdvDefaultLifetime * 1000))
   {
     vty_out (vty, "This ra-interval would conflict with configured ra-lifetime!%s", VTY_NEWLINE);
@@ -962,7 +962,7 @@ DEFUN (ipv6_nd_ra_interval,
   struct zebra_ns *zns;
 
   zns = zvrf->zns;
-  VTY_GET_INTEGER_RANGE ("router advertisement interval", interval, argv[idx_number]->arg, 1, 1800);
+  interval = strtoul(argv[idx_number]->arg, NULL, 10);
   if ((zif->rtadv.AdvDefaultLifetime != -1 && interval > (unsigned)zif->rtadv.AdvDefaultLifetime))
   {
     vty_out (vty, "This ra-interval would conflict with configured ra-lifetime!%s", VTY_NEWLINE);
@@ -1024,7 +1024,7 @@ DEFUN (ipv6_nd_ra_lifetime,
   struct zebra_if *zif = ifp->info;
   int lifetime;
 
-  VTY_GET_INTEGER_RANGE ("router lifetime", lifetime, argv[idx_number]->arg, 0, 9000);
+  lifetime = strtoul(argv[idx_number]->arg, NULL, 10);
 
   /* The value to be placed in the Router Lifetime field
    * of Router Advertisements sent from the interface,
@@ -1069,7 +1069,7 @@ DEFUN (ipv6_nd_reachable_time,
   int idx_number = 3;
   VTY_DECLVAR_CONTEXT (interface, ifp);
   struct zebra_if *zif = ifp->info;
-  VTY_GET_INTEGER_RANGE ("reachable time", zif->rtadv.AdvReachableTime, argv[idx_number]->arg, 1, RTADV_MAX_REACHABLE_TIME);
+  zif->rtadv.AdvReachableTime = strtoul(argv[idx_number]->arg, NULL, 10);
   return CMD_SUCCESS;
 }
 
@@ -1101,7 +1101,7 @@ DEFUN (ipv6_nd_homeagent_preference,
   int idx_number = 3;
   VTY_DECLVAR_CONTEXT (interface, ifp);
   struct zebra_if *zif = ifp->info;
-  VTY_GET_INTEGER_RANGE ("home agent preference", zif->rtadv.HomeAgentPreference, argv[idx_number]->arg, 0, 65535);
+  zif->rtadv.HomeAgentPreference = strtoul(argv[idx_number]->arg, NULL, 10);
   return CMD_SUCCESS;
 }
 
@@ -1133,7 +1133,7 @@ DEFUN (ipv6_nd_homeagent_lifetime,
   int idx_number = 3;
   VTY_DECLVAR_CONTEXT (interface, ifp);
   struct zebra_if *zif = ifp->info;
-  VTY_GET_INTEGER_RANGE ("home agent lifetime", zif->rtadv.HomeAgentLifetime, argv[idx_number]->arg, 0, RTADV_MAX_HALIFETIME);
+  zif->rtadv.HomeAgentLifetime = strtoul(argv[idx_number]->arg, NULL, 10);
   return CMD_SUCCESS;
 }
 
@@ -1454,7 +1454,7 @@ DEFUN (ipv6_nd_mtu,
   int idx_number = 3;
   VTY_DECLVAR_CONTEXT (interface, ifp);
   struct zebra_if *zif = ifp->info;
-  VTY_GET_INTEGER_RANGE ("MTU", zif->rtadv.AdvLinkMTU, argv[idx_number]->arg, 1, 65535);
+  zif->rtadv.AdvLinkMTU = strtoul(argv[idx_number]->arg, NULL, 10);
   return CMD_SUCCESS;
 }
 
index 6ec43e592c14b0a50144ea63ad71c1b0cf3e5f2f..b09a45303dff9e4e803e4d5a7074657c8f2f155a 100644 (file)
@@ -419,7 +419,7 @@ DEFUN (zebra_route_map_timer,
   int idx_number = 3;
   u_int32_t rmap_delay_timer;
 
-  VTY_GET_INTEGER_RANGE ("delay-timer", rmap_delay_timer, argv[idx_number]->arg, 0, 600);
+  rmap_delay_timer = strtoul(argv[idx_number]->arg, NULL, 10);
   zebra_route_map_set_delay_timer(rmap_delay_timer);
 
   return (CMD_SUCCESS);
index 88778e491ba96764e649e0294e86c25d85b2830e..ff260b4973e82a71715ce092c744baa273634e01 100644 (file)
@@ -106,7 +106,7 @@ zebra_static_ipv4 (struct vty *vty, safi_t safi, int add_cmd,
 
   /* tag */
   if (tag_str)
-    VTY_GET_INTEGER_RANGE("tag", tag, tag_str, 0, 4294967295);
+    tag = strtoul(tag_str, NULL, 10);
 
   /* VRF id */
   zvrf = zebra_vrf_lookup_by_name (vrf_id_str);
@@ -1402,7 +1402,7 @@ DEFUN (show_ip_route,
     }
 
   if (argv_find (argv, argc, "tag", &idx))
-    VTY_GET_INTEGER_RANGE("tag", tag, argv[idx+1]->arg, 0, 4294967295);
+    tag = strtoul(argv[idx + 1]->arg, NULL, 10);
 
   else if (argv_find (argv, argc, "A.B.C.D/M", &idx))
     {
@@ -1443,7 +1443,7 @@ DEFUN (show_ip_route,
         type = proto_redistnum (AFI_IP, argv[idx]->text);
 
       if (argv_find (argv, argc, "(1-65535)", &idx))
-        VTY_GET_INTEGER ("Instance", ospf_instance_id, argv[idx]->arg);
+        ospf_instance_id = strtoul(argv[idx]->arg, NULL, 10);
 
       if (type < 0)
         {
@@ -2031,7 +2031,7 @@ static_ipv6_func (struct vty *vty, int add_cmd, const char *dest_str,
 
   /* tag */
   if (tag_str)
-    VTY_GET_INTEGER_RANGE("tag", tag, tag_str, 0, 4294967295);
+    tag = strtoul(tag_str, NULL, 10);
 
   /* When gateway is valid IPv6 addrees, then gate is treated as
      nexthop address other case gate is treated as interface name. */
@@ -2607,7 +2607,7 @@ DEFUN (show_ipv6_route,
     }
 
   if (argv_find (argv, argc, "tag", &idx))
-    VTY_GET_INTEGER_RANGE("tag", tag, argv[idx+1]->arg, 0, 4294967295);
+    tag = strtoul(argv[idx + 1]->arg, NULL, 10);
 
   else if (argv_find (argv, argc, "X:X::X:X/M", &idx))
     {
@@ -3098,14 +3098,14 @@ DEFUN (ip_zebra_import_table_distance,
 {
   u_int32_t table_id = 0;
 
-  VTY_GET_INTEGER("table", table_id, argv[2]->arg);
+  table_id = strtoul(argv[2]->arg, NULL, 10);
   int distance = ZEBRA_TABLE_DISTANCE_DEFAULT;
   char *rmap = strmatch (argv[argc - 2]->text, "route-map") ?
                XSTRDUP(MTYPE_ROUTE_MAP_NAME, argv[argc - 1]->arg) : NULL;
   int ret;
 
   if (argc == 7 || (argc == 5 && !rmap))
-    VTY_GET_INTEGER_RANGE("distance", distance, argv[4]->arg, 1, 255);
+    distance = strtoul(argv[4]->arg, NULL, 10);
 
   if (!is_zebra_valid_kernel_table(table_id))
     {
@@ -3141,7 +3141,7 @@ DEFUN (no_ip_zebra_import_table,
        "route-map name\n")
 {
   u_int32_t table_id = 0;
-  VTY_GET_INTEGER("table", table_id, argv[3]->arg);
+  table_id = strtoul(argv[3]->arg, NULL, 10);
 
   if (!is_zebra_valid_kernel_table(table_id))
     {