summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-01-04 18:38:50 +0100
committerChristian Poessinger <christian@poessinger.com>2021-01-04 18:38:50 +0100
commitf6645171ebf0dcc40d1dfd619357764bf5b1ff6f (patch)
tree51f24f94441e774eb85bd93bd9ce8da314db8902
parent9c93220286674fc590f8674506ec9adaae388652 (diff)
parent1232f0e2c69eb14f29fd9ec8d91c1f5217d6cd76 (diff)
downloadvyos-1x-f6645171ebf0dcc40d1dfd619357764bf5b1ff6f.tar.gz
vyos-1x-f6645171ebf0dcc40d1dfd619357764bf5b1ff6f.zip
Merge branch 'current' of github.com:vyos/vyos-1x into equuleus
* 'current' of github.com:vyos/vyos-1x: op-mode: T3178: add basic "show ipv6 ospfv3" commands op-mode: T3178: split IPv6 commands into individual files smoketest: bgp: enable description test
-rw-r--r--Makefile12
-rw-r--r--op-mode-definitions/show-ipv6-bgp.xml203
-rw-r--r--op-mode-definitions/show-ipv6-ospfv3.xml322
-rw-r--r--op-mode-definitions/show-ipv6-prefix-list.xml92
-rw-r--r--op-mode-definitions/show-ipv6-route.xml117
-rw-r--r--op-mode-definitions/show-ipv6.xml370
-rwxr-xr-xsmoketest/scripts/cli/test_protocols_bgp.py3
7 files changed, 741 insertions, 378 deletions
diff --git a/Makefile b/Makefile
index 9c99b37cc..588595e42 100644
--- a/Makefile
+++ b/Makefile
@@ -69,17 +69,17 @@ op_mode_definitions:
# XXX: delete top level op mode node.def's that now live in other packages
rm -f $(OP_TMPL_DIR)/add/node.def
- rm -f $(OP_TMPL_DIR)/clear/node.def
rm -f $(OP_TMPL_DIR)/clear/interfaces/node.def
+ rm -f $(OP_TMPL_DIR)/clear/node.def
+ rm -f $(OP_TMPL_DIR)/delete/node.def
+ rm -f $(OP_TMPL_DIR)/generate/node.def
+ rm -f $(OP_TMPL_DIR)/monitor/node.def
+ rm -f $(OP_TMPL_DIR)/reset/vpn/node.def
rm -f $(OP_TMPL_DIR)/set/node.def
- rm -f $(OP_TMPL_DIR)/show/node.def
rm -f $(OP_TMPL_DIR)/show/interfaces/node.def
- rm -f $(OP_TMPL_DIR)/monitor/node.def
- rm -f $(OP_TMPL_DIR)/generate/node.def
+ rm -f $(OP_TMPL_DIR)/show/node.def
rm -f $(OP_TMPL_DIR)/show/system/node.def
rm -f $(OP_TMPL_DIR)/show/vpn/node.def
- rm -f $(OP_TMPL_DIR)/delete/node.def
- rm -f $(OP_TMPL_DIR)/reset/vpn/node.def
# XXX: ping must be able to recursivly call itself as the
# options are provided from the script itself
diff --git a/op-mode-definitions/show-ipv6-bgp.xml b/op-mode-definitions/show-ipv6-bgp.xml
new file mode 100644
index 000000000..aad61b97a
--- /dev/null
+++ b/op-mode-definitions/show-ipv6-bgp.xml
@@ -0,0 +1,203 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Show IPv6 routing information</help>
+ </properties>
+ <children>
+ <node name="bgp">
+ <properties>
+ <help>Show Border Gateway Protocol (BGP) information</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6"</command>
+ <children>
+ <leafNode name="summary">
+ <properties>
+ <help>Show summary of BGP neighbor status</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 summary"</command>
+ </leafNode>
+ <tagNode name="regexp">
+ <properties>
+ <help>Show routes matching AS path regular expression</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 regexp $5"</command>
+ </tagNode>
+ <tagNode name="prefix-list">
+ <properties>
+ <help>Show routes matching the IPv6 prefix-list name</help>
+ <completionHelp>
+ <path>policy prefix-list6</path>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 prefix-list $5"</command>
+ </tagNode>
+ <tagNode name="neighbors">
+ <properties>
+ <help>Show detailed information on TCP and BGP neighbor connections for given address</help>
+ <completionHelp>
+ <script>vtysh -c "show bgp ipv6 summary" | awk '{print $1}' | grep -oE "\b([0-9a-f]{1,4}\:{0,2}){0,20}\b"</script>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5"</command>
+ <children>
+ <leafNode name="advertised-routes">
+ <properties>
+ <help>Show routes advertised to a BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 advertised-routes"</command>
+ </leafNode>
+ <leafNode name="filtered-routes">
+ <properties>
+ <help>Show routes filtered from a BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 filtered-routes"</command>
+ </leafNode>
+ <leafNode name="dampened-routes">
+ <properties>
+ <help>Show dampened routes received from BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 dampened-routes"</command>
+ </leafNode>
+ <leafNode name="flap-statistics">
+ <properties>
+ <help>Show flap statistics of the routes learned from BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 flap-statistics"</command>
+ </leafNode>
+ <leafNode name="prefix-counts">
+ <properties>
+ <help>Show detailed prefix count information for BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 prefix-counts"</command>
+ </leafNode>
+ <node name="received">
+ <properties>
+ <help>Show information received from BGP neighbor</help>
+ </properties>
+ <children>
+ <leafNode name="prefix-filter">
+ <properties>
+ <help>Show prefixlist filter</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 received prefix-filter"</command>
+ </leafNode>
+ </children>
+ </node>
+ <leafNode name="received-routes">
+ <properties>
+ <help>Show received routes from BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 received-routes"</command>
+ </leafNode>
+ <leafNode name="routes">
+ <properties>
+ <help>Show routes learned from BGP neighbor</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 neighbor $5 routes"</command>
+ </leafNode>
+ </children>
+ </tagNode>
+ <tagNode name="large-community">
+ <properties>
+ <help>Show routes matching the large-community-list number or name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 large-community-list $5"</command>
+ <children>
+ <node name="exact-match">
+ <properties>
+ <help>Show routes matching the large-community-list number or name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 large-community-list $5 exact-match"</command>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="large-community-list">
+ <properties>
+ <help>Show routes matching the large-community-list number or name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 large-community-list $5"</command>
+ <children>
+ <node name="exact-match">
+ <properties>
+ <help>Show routes matching the large-community-list number or name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 large-community-list $5 exact-match"</command>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="filter-list">
+ <properties>
+ <help>Show routes conforming to regular expression access list name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 filter-list $5"</command>
+ </tagNode>
+ <tagNode name="community">
+ <properties>
+ <help>Show BGP information for specified community number</help>
+ <completionHelp>
+ <list>&lt;AA:NN&gt; local-AS no-advertise no-export</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 community $5"</command>
+ <children>
+ <node name="exact-match">
+ <properties>
+ <help>Show routes from community that exactly matches the community number</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 community $5 exact-match"</command>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="community-list">
+ <properties>
+ <help>Show routes matching the community-list number or name</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 community-list $5"</command>
+ <children>
+ <node name="exact-match">
+ <properties>
+ <help>Show routes exactly matching the community-list name or number</help>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 community-list $5 exact-match"</command>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="route-map">
+ <properties>
+ <help>Show BGP routes matching the specified route map</help>
+ <completionHelp>
+ <path>policy route-map</path>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 route-map $5"</command>
+ </tagNode>
+ </children>
+ </node>
+ <tagNode name="bgp">
+ <properties>
+ <help>Show BGP information for specified IP address or prefix</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 $4"</command>
+ <children>
+ <node name="longer-prefixes">
+ <properties>
+ <help>Show route and more specific routes</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show bgp ipv6 $4 longer-prefixes"</command>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/show-ipv6-ospfv3.xml b/op-mode-definitions/show-ipv6-ospfv3.xml
new file mode 100644
index 000000000..2b48067ec
--- /dev/null
+++ b/op-mode-definitions/show-ipv6-ospfv3.xml
@@ -0,0 +1,322 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Show IPv6 routing information</help>
+ </properties>
+ <children>
+ <node name="ospfv3">
+ <properties>
+ <help>Show IPv6 Open Shortest Path First (OSPF)</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6"</command>
+ <children>
+ <node name="area">
+ <properties>
+ <help>Show Shortest Path First tree information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 spf tree"</command>
+ </node>
+ <tagNode name="area">
+ <properties>
+ <help>Area ID (as an IPv4 notation)</help>
+ <completionHelp>
+ <path>protocols ospfv3 area</path>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 area $4 spf tree"</command>
+ <children>
+ <tagNode name="router">
+ <properties>
+ <help> Simulate view point (Router ID)</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 simulate spf-tree $7 $4 $5"</command>
+ </tagNode>
+ </children>
+ </tagNode>
+ <node name="border-routers">
+ <properties>
+ <help>Show OSPFv3 border-router (ABR and ASBR) information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 border-routers"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show OSPFv3 detailed border-router information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 border-routers detail"</command>
+ </node>
+ </children>
+ </node>
+ <tagNode name="border-routers">
+ <properties>
+ <help>Border router ID</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 border-routers $5"</command>
+ </tagNode>
+ <node name="interface">
+ <properties>
+ <help>Show OSPFv3 interface information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface"</command>
+ <children>
+ <node name="prefix">
+ <properties>
+ <help>Show connected prefixes to advertise</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface prefix"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>More detailed interface prefix information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface prefix detail"</command>
+ </node>
+ </children>
+ </node>
+ <tagNode name="prefix">
+ <properties>
+ <help>Show interface prefix route specific information</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface prefix $6"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>More detailed information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface prefix $6 detail"</command>
+ </node>
+ <node name="match">
+ <properties>
+ <help>Matched interface prefix information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface prefix $6 match"</command>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ <tagNode name="interface">
+ <properties>
+ <help>Specific insterface to examine</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces.py</script>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5"</command>
+ <children>
+ <node name="prefix">
+ <properties>
+ <help>Show connected prefixes to advertise</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5 prefix"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>More detailed interface prefix information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5 prefix detail"</command>
+ </node>
+ </children>
+ </node>
+ <tagNode name="prefix">
+ <properties>
+ <help>Show interface prefix route specific information</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5 prefix $7"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>More detailed information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5 prefix $7 detail"</command>
+ </node>
+ <node name="match">
+ <properties>
+ <help>Matched interface prefix information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 interface $5 prefix $7 match"</command>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+ </tagNode>
+ <node name="linkstate">
+ <properties>
+ <help>Show OSPFv3 linkstate routing information</help>
+ </properties>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed linkstate information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 linkstate detail"</command>
+ </node>
+ <node name="network">
+ <properties>
+ <help>Show linkstate Network information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 linkstate network"</command>
+ </node>
+ <node name="router">
+ <properties>
+ <help>Show linkstate Router information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 linkstate router"</command>
+ </node>
+ </children>
+ </node>
+ <node name="neighbor">
+ <properties>
+ <help>Show OSPFv3 neighbor information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 neighbor"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed neighbor information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 neighbor detail"</command>
+ </node>
+ <node name="drchoice">
+ <properties>
+ <help>Show neighbor DR choice information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 neighbor drchoice"</command>
+ </node>
+ </children>
+ </node>
+ <node name="redistribute">
+ <properties>
+ <help>Show OSPFv3 redistribute external information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 redistribute"</command>
+ </node>
+ <node name="route">
+ <properties>
+ <help>Show OSPFv3 routing table information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route"</command>
+ <children>
+ <node name="external-1">
+ <properties>
+ <help>Show Type-1 External route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route external-1"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed Type-1 External route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route external-1 detail"</command>
+ </node>
+ </children>
+ </node>
+ <node name="external-2">
+ <properties>
+ <help>Show Type-2 External route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route external-2"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed Type-2 External route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route external-2 detail"</command>
+ </node>
+ </children>
+ </node>
+ <node name="inter-area">
+ <properties>
+ <help>Show Inter-Area route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route inter-area"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed Inter-Area route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route inter-area detail"</command>
+ </node>
+ </children>
+ </node>
+ <node name="intra-area">
+ <properties>
+ <help>Show Intra-Area route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route intra-area"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detailed Intra-Area route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route intra-area detail"</command>
+ </node>
+ </children>
+ </node>
+ <node name="detail">
+ <properties>
+ <help>Show detailed route information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route detail"</command>
+ </node>
+ <node name="summary">
+ <properties>
+ <help>Show route table summary</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route summary"</command>
+ </node>
+ </children>
+ </node>
+ <tagNode name="route">
+ <properties>
+ <help>Show specified route/prefix information</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route $5"</command>
+ <children>
+ <node name="longer">
+ <properties>
+ <help>Show routes longer than specified prefix</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route $5 longer"</command>
+ </node>
+ <node name="match">
+ <properties>
+ <help>Show routes matching specified prefix</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route $5 match"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Detailed information</help>
+ </properties>
+ <command>vtysh -c "show ipv6 ospf6 route $5 match detail"</command>
+ </node>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/show-ipv6-prefix-list.xml b/op-mode-definitions/show-ipv6-prefix-list.xml
new file mode 100644
index 000000000..e003ad110
--- /dev/null
+++ b/op-mode-definitions/show-ipv6-prefix-list.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Show IPv6 routing information</help>
+ </properties>
+ <children>
+ <node name="prefix-list">
+ <properties>
+ <help>Show IPv6 prefix-lists</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list"</command>
+ <children>
+ <node name="detail">
+ <properties>
+ <help>Show detail of IPv6 prefix-lists</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list detail"</command>
+ </node>
+ <tagNode name="detail">
+ <properties>
+ <help>Show detail of specified IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list detail $5"</command>
+ </tagNode>
+ <node name="summary">
+ <properties>
+ <help>Show summary of IPv6 prefix-lists</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list summary"</command>
+ </node>
+ <tagNode name="summary">
+ <properties>
+ <help>Show summary of specified IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list summary $5"</command>
+ </tagNode>
+ </children>
+ </node>
+ <tagNode name="prefix-list">
+ <properties>
+ <help>Show specified IPv6 prefix-list</help>
+ <completionHelp>
+ <list>WORD</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4"</command>
+ <children>
+ <node name="node.tag">
+ <properties>
+ <help>Show select prefix of specified IPv6 prefix-list</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4 $5"</command>
+ <children>
+ <node name="first-match">
+ <properties>
+ <help>Show first-match from select prefix of named IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4 $5 first-match"</command>
+ </node>
+ <node name="longer">
+ <properties>
+ <help>Show longer match of select prefix from named IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4 $5 longer"</command>
+ </node>
+ </children>
+ </node>
+ <node name="seq">
+ <properties>
+ <help>Show specified sequence from specified IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4 seq"</command>
+ </node>
+ <tagNode name="seq">
+ <properties>
+ <help>Show specified sequence from specified IPv6 prefix-list</help>
+ </properties>
+ <command>vtysh -c "show ipv6 prefix-list $4 seq $6"</command>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/show-ipv6-route.xml b/op-mode-definitions/show-ipv6-route.xml
new file mode 100644
index 000000000..fafd615ea
--- /dev/null
+++ b/op-mode-definitions/show-ipv6-route.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Show IPv6 routing information</help>
+ </properties>
+ <children>
+ <tagNode name="route">
+ <properties>
+ <help>Show IPv6 routes of given address or prefix</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <children>
+ <node name="longer-prefixes">
+ <properties>
+ <help>Show longer prefixes of routes for given address or prefix</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route $4 longer-prefixes"</command>
+ </node>
+ </children>
+ <command>vtysh -c "show ipv6 route $4"</command>
+ </tagNode>
+ <node name="route">
+ <properties>
+ <help>Show IPv6 routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route"</command>
+ <children>
+ <node name="bgp">
+ <properties>
+ <help>Show IPv6 BGP routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route bgp"</command>
+ </node>
+ <node name="connected">
+ <properties>
+ <help>Show IPv6 connected routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route connected"</command>
+ </node>
+ <node name="isis">
+ <properties>
+ <help>Show IPv6 IS-IS routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route isis"</command>
+ </node>
+ <node name="kernel">
+ <properties>
+ <help>Show IPv6 Kernel routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route kernel"</command>
+ </node>
+ <node name="ospfv3">
+ <properties>
+ <help>Show IPv6 OSPF routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route ospf6"</command>
+ </node>
+ <node name="ripng">
+ <properties>
+ <help>Show IPv6 RIPNG routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route ripng"</command>
+ </node>
+ <node name="static">
+ <properties>
+ <help>Show IPv6 static routes</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route static"</command>
+ </node>
+ <node name="summary">
+ <properties>
+ <help>Show IPv6 routes summary</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route summary"</command>
+ </node>
+ <node name="table">
+ <properties>
+ <help>Show IPv6 routes in policy tables</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route table all"</command>
+ </node>
+ <tagNode name="table">
+ <properties>
+ <help>Show IPv6 routes in specific policy table</help>
+ <completionHelp>
+ <path>protocols static table</path>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 route table $5"</command>
+ </tagNode>
+ <node name="vrf">
+ <properties>
+ <help>Show IPv6 routes in VRFs</help>
+ </properties>
+ <command>vtysh -c "show ipv6 route vrf all"</command>
+ </node>
+ <tagNode name="vrf">
+ <properties>
+ <help>Show IPv6 routes in specific VRF</help>
+ <completionHelp>
+ <path>vrf name</path>
+ </completionHelp>
+ </properties>
+ <command>vtysh -c "show ipv6 route vrf $5"</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/show-ipv6.xml b/op-mode-definitions/show-ipv6.xml
index 357e4e979..a59c8df0c 100644
--- a/op-mode-definitions/show-ipv6.xml
+++ b/op-mode-definitions/show-ipv6.xml
@@ -22,195 +22,6 @@
</properties>
<command>vtysh -c "show ipv6 access-list $4"</command>
</tagNode>
- <node name="bgp">
- <properties>
- <help>Show Border Gateway Protocol (BGP) information</help>
- </properties>
- <command>vtysh -c "show bgp ipv6"</command>
- <children>
- <leafNode name="summary">
- <properties>
- <help>Show summary of BGP neighbor status</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 summary"</command>
- </leafNode>
- <tagNode name="regexp">
- <properties>
- <help>Show routes matching AS path regular expression</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 regexp $5"</command>
- </tagNode>
- <tagNode name="prefix-list">
- <properties>
- <help>Show routes matching the IPv6 prefix-list name</help>
- <completionHelp>
- <path>policy prefix-list6</path>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 prefix-list $5"</command>
- </tagNode>
- <tagNode name="neighbors">
- <properties>
- <help>Show detailed information on TCP and BGP neighbor connections for given address</help>
- <completionHelp>
- <script>vtysh -c "show bgp ipv6 summary" | awk '{print $1}' | grep -oE "\b([0-9a-f]{1,4}\:{0,2}){0,20}\b"</script>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5"</command>
- <children>
- <leafNode name="advertised-routes">
- <properties>
- <help>Show routes advertised to a BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 advertised-routes"</command>
- </leafNode>
- <leafNode name="filtered-routes">
- <properties>
- <help>Show routes filtered from a BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 filtered-routes"</command>
- </leafNode>
- <leafNode name="dampened-routes">
- <properties>
- <help>Show dampened routes received from BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 dampened-routes"</command>
- </leafNode>
- <leafNode name="flap-statistics">
- <properties>
- <help>Show flap statistics of the routes learned from BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 flap-statistics"</command>
- </leafNode>
- <leafNode name="prefix-counts">
- <properties>
- <help>Show detailed prefix count information for BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 prefix-counts"</command>
- </leafNode>
- <node name="received">
- <properties>
- <help>Show information received from BGP neighbor</help>
- </properties>
- <children>
- <leafNode name="prefix-filter">
- <properties>
- <help>Show prefixlist filter</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 received prefix-filter"</command>
- </leafNode>
- </children>
- </node>
- <leafNode name="received-routes">
- <properties>
- <help>Show received routes from BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 received-routes"</command>
- </leafNode>
- <leafNode name="routes">
- <properties>
- <help>Show routes learned from BGP neighbor</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 neighbor $5 routes"</command>
- </leafNode>
- </children>
- </tagNode>
- <tagNode name="large-community">
- <properties>
- <help>Show routes matching the large-community-list number or name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 large-community-list $5"</command>
- <children>
- <node name="exact-match">
- <properties>
- <help>Show routes matching the large-community-list number or name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 large-community-list $5 exact-match"</command>
- </node>
- </children>
- </tagNode>
- <tagNode name="large-community-list">
- <properties>
- <help>Show routes matching the large-community-list number or name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 large-community-list $5"</command>
- <children>
- <node name="exact-match">
- <properties>
- <help>Show routes matching the large-community-list number or name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 large-community-list $5 exact-match"</command>
- </node>
- </children>
- </tagNode>
- <tagNode name="filter-list">
- <properties>
- <help>Show routes conforming to regular expression access list name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 filter-list $5"</command>
- </tagNode>
- <tagNode name="community">
- <properties>
- <help>Show BGP information for specified community number</help>
- <completionHelp>
- <list>&lt;AA:NN&gt; local-AS no-advertise no-export</list>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 community $5"</command>
- <children>
- <node name="exact-match">
- <properties>
- <help>Show routes from community that exactly matches the community number</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 community $5 exact-match"</command>
- </node>
- </children>
- </tagNode>
- <tagNode name="community-list">
- <properties>
- <help>Show routes matching the community-list number or name</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 community-list $5"</command>
- <children>
- <node name="exact-match">
- <properties>
- <help>Show routes exactly matching the community-list name or number</help>
- </properties>
- <command>vtysh -c "show bgp ipv6 community-list $5 exact-match"</command>
- </node>
- </children>
- </tagNode>
- <tagNode name="route-map">
- <properties>
- <help>Show BGP routes matching the specified route map</help>
- <completionHelp>
- <path>policy route-map</path>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 route-map $5"</command>
- </tagNode>
- </children>
- </node>
- <tagNode name="bgp">
- <properties>
- <help>Show BGP information for specified IP address or prefix</help>
- <completionHelp>
- <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 $4"</command>
- <children>
- <node name="longer-prefixes">
- <properties>
- <help>Show route and more specific routes</help>
- <completionHelp>
- <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
- </completionHelp>
- </properties>
- <command>vtysh -c "show bgp ipv6 $4 longer-prefixes"</command>
- </node>
- </children>
- </tagNode>
<node name="forwarding">
<properties>
<help>Show IPv6 forwarding status</help>
@@ -231,187 +42,6 @@
</node>
</children>
</node>
- <node name="prefix-list">
- <properties>
- <help>Show IPv6 prefix-lists</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list"</command>
- <children>
- <node name="detail">
- <properties>
- <help>Show detail of IPv6 prefix-lists</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list detail"</command>
- </node>
- <tagNode name="detail">
- <properties>
- <help>Show detail of specified IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list detail $5"</command>
- </tagNode>
- <node name="summary">
- <properties>
- <help>Show summary of IPv6 prefix-lists</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list summary"</command>
- </node>
- <tagNode name="summary">
- <properties>
- <help>Show summary of specified IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list summary $5"</command>
- </tagNode>
- </children>
- </node>
- <tagNode name="prefix-list">
- <properties>
- <help>Show specified IPv6 prefix-list</help>
- <completionHelp>
- <list>WORD</list>
- </completionHelp>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4"</command>
- <children>
- <node name="node.tag">
- <properties>
- <help>Show select prefix of specified IPv6 prefix-list</help>
- <completionHelp>
- <list>&lt;h:h:h:h:h:h:h:h/x&gt;</list>
- </completionHelp>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4 $5"</command>
- <children>
- <node name="first-match">
- <properties>
- <help>Show first-match from select prefix of named IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4 $5 first-match"</command>
- </node>
- <node name="longer">
- <properties>
- <help>Show longer match of select prefix from named IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4 $5 longer"</command>
- </node>
- </children>
- </node>
- <node name="seq">
- <properties>
- <help>Show specified sequence from specified IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4 seq"</command>
- </node>
- <tagNode name="seq">
- <properties>
- <help>Show specified sequence from specified IPv6 prefix-list</help>
- </properties>
- <command>vtysh -c "show ipv6 prefix-list $4 seq $6"</command>
- </tagNode>
- </children>
- </tagNode>
- <tagNode name="route">
- <properties>
- <help>Show IPv6 routes of given address or prefix</help>
- <completionHelp>
- <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
- </completionHelp>
- </properties>
- <children>
- <node name="longer-prefixes">
- <properties>
- <help>Show longer prefixes of routes for given address or prefix</help>
- </properties>
- <command>vtysh -c "show ipv6 route $4 longer-prefixes"</command>
- </node>
- </children>
- <command>vtysh -c "show ipv6 route $4"</command>
- </tagNode>
- <node name="route">
- <properties>
- <help>Show IPv6 routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route"</command>
- <children>
- <node name="bgp">
- <properties>
- <help>Show IPv6 BGP routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route bgp"</command>
- </node>
- <node name="connected">
- <properties>
- <help>Show IPv6 connected routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route connected"</command>
- </node>
- <node name="isis">
- <properties>
- <help>Show IPv6 IS-IS routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route isis"</command>
- </node>
- <node name="kernel">
- <properties>
- <help>Show IPv6 Kernel routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route kernel"</command>
- </node>
- <node name="ospfv3">
- <properties>
- <help>Show IPv6 OSPF routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route ospf6"</command>
- </node>
- <node name="ripng">
- <properties>
- <help>Show IPv6 RIPNG routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route ripng"</command>
- </node>
- <node name="static">
- <properties>
- <help>Show IPv6 static routes</help>
- </properties>
- <command>vtysh -c "show ipv6 route static"</command>
- </node>
- <node name="summary">
- <properties>
- <help>Show IPv6 routes summary</help>
- </properties>
- <command>vtysh -c "show ipv6 route summary"</command>
- </node>
- <node name="table">
- <properties>
- <help>Show IPv6 routes in policy tables</help>
- </properties>
- <command>vtysh -c "show ipv6 route table all"</command>
- </node>
- <tagNode name="table">
- <properties>
- <help>Show IPv6 routes in specific policy table</help>
- <completionHelp>
- <path>protocols static table</path>
- </completionHelp>
- </properties>
- <command>vtysh -c "show ipv6 route table $5"</command>
- </tagNode>
- <node name="vrf">
- <properties>
- <help>Show IPv6 routes in VRFs</help>
- </properties>
- <command>vtysh -c "show ipv6 route vrf all"</command>
- </node>
- <tagNode name="vrf">
- <properties>
- <help>Show IPv6 routes in specific VRF</help>
- <completionHelp>
- <path>vrf name</path>
- </completionHelp>
- </properties>
- <command>vtysh -c "show ipv6 route vrf $5"</command>
- </tagNode>
- </children>
- </node>
</children>
</node>
</children>
diff --git a/smoketest/scripts/cli/test_protocols_bgp.py b/smoketest/scripts/cli/test_protocols_bgp.py
index 941d7828f..984419e76 100755
--- a/smoketest/scripts/cli/test_protocols_bgp.py
+++ b/smoketest/scripts/cli/test_protocols_bgp.py
@@ -44,8 +44,7 @@ neighbor_config = {
'cap_strict' : '',
},
'192.0.2.3' : {
-# XXX: not available in current Perl backend
-# 'description' : 'foo bar baz',
+ 'description' : 'foo bar baz',
'remote_as' : '200',
'passive' : '',
'multi_hop' : '5',