summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_vty.c
diff options
context:
space:
mode:
authorChris Hall <chris.hall@highwayman.com>2011-02-13 23:11:45 +0000
committerChris Hall <chris.hall@highwayman.com>2011-02-13 23:11:45 +0000
commit5cae7eea451f2b7d65b5892e2c1dafc70f8b836e (patch)
tree0fbd9679e9ae28e7d061b5bdda08756077415ecb /bgpd/bgp_vty.c
parent64be6d766a65dc0749d17f5023d714678e9c96a6 (diff)
downloadquagga-5cae7eea451f2b7d65b5892e2c1dafc70f8b836e.tar.bz2
quagga-5cae7eea451f2b7d65b5892e2c1dafc70f8b836e.tar.xz
Second tranche of updates for pipework branch.
modified: bgpd/bgp_connection.c modified: bgpd/bgp_debug.c modified: bgpd/bgp_engine.h modified: bgpd/bgp_main.c modified: bgpd/bgp_packet.c modified: bgpd/bgp_peer.c modified: bgpd/bgp_route.c modified: bgpd/bgp_routemap.c modified: bgpd/bgp_session.c modified: bgpd/bgp_vty.c modified: bgpd/bgpd.c modified: bgpd/bgpd.h modified: configure.ac modified: isisd/dict.h modified: isisd/isis_misc.c modified: isisd/isis_routemap.c modified: isisd/isis_spf.c modified: lib/Makefile.am modified: lib/command.c modified: lib/command.h modified: lib/command_execute.h modified: lib/command_parse.c modified: lib/command_parse.h modified: lib/command_queue.c modified: lib/command_queue.h modified: lib/elstring.h modified: lib/heap.c modified: lib/if.c modified: lib/if.h modified: lib/keychain.c modified: lib/keystroke.c modified: lib/keystroke.h modified: lib/list_util.c modified: lib/list_util.h modified: lib/log.c modified: lib/log.h modified: lib/memory.c modified: lib/memory.h modified: lib/memtypes.c modified: lib/misc.h modified: lib/mqueue.c modified: lib/mqueue.h deleted: lib/node_type.h modified: lib/pthread_safe.c modified: lib/qfstring.c modified: lib/qiovec.c modified: lib/qiovec.h modified: lib/qpath.c modified: lib/qpnexus.c modified: lib/qpnexus.h modified: lib/qpselect.c modified: lib/qpthreads.h modified: lib/qstring.c modified: lib/qstring.h modified: lib/qtime.c modified: lib/qtime.h modified: lib/qtimers.c modified: lib/qtimers.h modified: lib/routemap.c modified: lib/symtab.h modified: lib/thread.h deleted: lib/uty.h modified: lib/vector.c modified: lib/vector.h modified: lib/version.h.in modified: lib/vio_fifo.c modified: lib/vio_fifo.h modified: lib/vio_lines.c modified: lib/vio_lines.h modified: lib/vty.c modified: lib/vty.h modified: lib/vty_cli.c modified: lib/vty_cli.h modified: lib/vty_io.c modified: lib/vty_io.h modified: lib/vty_io_basic.c modified: lib/vty_io_basic.h modified: lib/vty_io_file.c modified: lib/vty_io_file.h modified: lib/vty_io_shell.c modified: lib/vty_io_term.c modified: lib/vty_io_term.h modified: lib/vty_local.h modified: lib/vty_pipe.c modified: lib/workqueue.h modified: lib/zebra.h modified: ospf6d/ospf6_lsa.c modified: ripngd/ripngd.c modified: tests/test-list_util.c modified: tests/test-vector.c modified: vtysh/vtysh.c modified: vtysh/vtysh_config.c
Diffstat (limited to 'bgpd/bgp_vty.c')
-rw-r--r--bgpd/bgp_vty.c77
1 files changed, 43 insertions, 34 deletions
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
index 23d39b85..9195b9f3 100644
--- a/bgpd/bgp_vty.c
+++ b/bgpd/bgp_vty.c
@@ -57,9 +57,7 @@ extern struct in_addr router_id_zebra;
afi_t
bgp_node_afi (struct vty *vty)
{
- enum node_type node = vty_get_node(vty) ;
-
- if (node == BGP_IPV6_NODE || node == BGP_IPV6M_NODE)
+ if (vty->node == BGP_IPV6_NODE || vty->node == BGP_IPV6M_NODE)
return AFI_IP6;
return AFI_IP;
}
@@ -69,11 +67,9 @@ bgp_node_afi (struct vty *vty)
safi_t
bgp_node_safi (struct vty *vty)
{
- enum node_type node = vty_get_node(vty) ;
-
- if (node == BGP_VPNV4_NODE)
+ if (vty->node == BGP_VPNV4_NODE)
return SAFI_MPLS_VPN;
- if (node == BGP_IPV4M_NODE || node == BGP_IPV6M_NODE)
+ if (vty->node == BGP_IPV4M_NODE || vty->node == BGP_IPV6M_NODE)
return SAFI_MULTICAST;
return SAFI_UNICAST;
}
@@ -352,7 +348,7 @@ DEFUN (router_bgp,
return CMD_WARNING;
}
- vty_set_node(vty, BGP_NODE) ;
+ vty->node = BGP_NODE ;
vty->index = bgp;
return CMD_SUCCESS;
@@ -601,7 +597,7 @@ ALIAS (no_bgp_confederation_identifier,
DEFUN (bgp_confederation_peers,
bgp_confederation_peers_cmd,
- "bgp confederation peers ." CMD_AS_RANGE,
+ "bgp confederation peers .ASs",
"BGP specific commands\n"
"AS confederation parameters\n"
"Peer ASs in BGP confederation\n"
@@ -631,7 +627,7 @@ DEFUN (bgp_confederation_peers,
DEFUN (no_bgp_confederation_peers,
no_bgp_confederation_peers_cmd,
- "no bgp confederation peers ." CMD_AS_RANGE,
+ "no bgp confederation peers .ASs",
NO_STR
"BGP specific commands\n"
"AS confederation parameters\n"
@@ -4018,7 +4014,7 @@ DEFUN (address_family_ipv4,
"Enter Address Family command mode\n"
"Address family\n")
{
- vty_set_node(vty, BGP_IPV4_NODE) ;
+ vty->node = BGP_IPV4_NODE ;
return CMD_SUCCESS;
}
@@ -4031,9 +4027,9 @@ DEFUN (address_family_ipv4_safi,
"Address Family modifier\n")
{
if (strncmp (argv[0], "m", 1) == 0)
- vty_set_node(vty, BGP_IPV4M_NODE) ;
+ vty->node = BGP_IPV4M_NODE ;
else
- vty_set_node(vty, BGP_IPV4_NODE) ;
+ vty->node = BGP_IPV4_NODE ;
return CMD_SUCCESS;
}
@@ -4044,7 +4040,7 @@ DEFUN (address_family_ipv6,
"Enter Address Family command mode\n"
"Address family\n")
{
- vty_set_node(vty, BGP_IPV6_NODE) ;
+ vty->node = BGP_IPV6_NODE ;
return CMD_SUCCESS;
}
@@ -4057,9 +4053,9 @@ DEFUN (address_family_ipv6_safi,
"Address Family modifier\n")
{
if (strncmp (argv[0], "m", 1) == 0)
- vty_set_node(vty, BGP_IPV6M_NODE) ;
+ vty->node = BGP_IPV6M_NODE ;
else
- vty_set_node(vty, BGP_IPV6_NODE) ;
+ vty->node = BGP_IPV6_NODE ;
return CMD_SUCCESS;
}
@@ -4070,7 +4066,7 @@ DEFUN (address_family_vpnv4,
"Enter Address Family command mode\n"
"Address family\n")
{
- vty_set_node(vty, BGP_VPNV4_NODE) ;
+ vty->node = BGP_VPNV4_NODE ;
return CMD_SUCCESS;
}
@@ -4086,14 +4082,14 @@ DEFUN (exit_address_family,
"exit-address-family",
"Exit from Address Family configuration mode\n")
{
- enum node_type node = vty_get_node(vty) ;
+ node_type_t node = vty->node ;
if (node == BGP_IPV4_NODE
|| node == BGP_IPV4M_NODE
|| node == BGP_VPNV4_NODE
|| node == BGP_IPV6_NODE
|| node == BGP_IPV6M_NODE)
- vty_set_node(vty, BGP_NODE);
+ vty->node = BGP_NODE ;
return CMD_SUCCESS;
}
@@ -8869,37 +8865,50 @@ bgp_config_write_redistribute (struct vty *vty, struct bgp *bgp, afi_t afi,
/* BGP node structure. */
static struct cmd_node bgp_node =
{
- BGP_NODE,
- "%s(config-router)# ",
- 1,
+ .node = BGP_NODE,
+ .prompt = "%s(config-router)# ",
+
+ .config_to_vtysh = true,
};
static struct cmd_node bgp_ipv4_unicast_node =
{
- BGP_IPV4_NODE,
- "%s(config-router-af)# ",
- 1,
+ .node = BGP_IPV4_NODE,
+ .prompt = "%s(config-router-af)# ",
+
+ .parent = BGP_NODE,
+
+ .config_to_vtysh = true,
};
static struct cmd_node bgp_ipv4_multicast_node =
{
- BGP_IPV4M_NODE,
- "%s(config-router-af)# ",
- 1,
+ .node = BGP_IPV4M_NODE,
+ .prompt = "%s(config-router-af)# ",
+
+ .parent = BGP_NODE,
+
+ .config_to_vtysh = true,
};
static struct cmd_node bgp_ipv6_unicast_node =
{
- BGP_IPV6_NODE,
- "%s(config-router-af)# ",
- 1,
+ .node = BGP_IPV6_NODE,
+ .prompt = "%s(config-router-af)# ",
+
+ .parent = BGP_NODE,
+
+ .config_to_vtysh = true,
};
static struct cmd_node bgp_ipv6_multicast_node =
{
- BGP_IPV6M_NODE,
- "%s(config-router-af)# ",
- 1,
+ .node = BGP_IPV6M_NODE,
+ .prompt = "%s(config-router-af)# ",
+
+ .parent = BGP_NODE,
+
+ .config_to_vtysh = true,
};
static struct cmd_node bgp_vpnv4_node =