From da961052291515f2e31bb4eca4d9091fad8c4d3c Mon Sep 17 00:00:00 2001
From: Christian Poessinger <christian@poessinger.com>
Date: Tue, 5 Jul 2022 10:39:32 +0200
Subject: op-mode: bgp: T4494: add "reset bgp" op-mode tree

---
 src/completion/list_bgp_neighbors.sh | 13 ++++++++-----
 src/op_mode/vtysh_wrapper.sh         |  5 +++--
 2 files changed, 11 insertions(+), 7 deletions(-)

(limited to 'src')

diff --git a/src/completion/list_bgp_neighbors.sh b/src/completion/list_bgp_neighbors.sh
index f74f102ef..869a7ab0a 100755
--- a/src/completion/list_bgp_neighbors.sh
+++ b/src/completion/list_bgp_neighbors.sh
@@ -1,5 +1,5 @@
 #!/bin/sh
-# Copyright (C) 2021 VyOS maintainers and contributors
+# Copyright (C) 2021-2022 VyOS maintainers and contributors
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License version 2 or later as
@@ -18,19 +18,21 @@
 
 ipv4=0
 ipv6=0
+vrf=""
 
 while [[ "$#" -gt 0 ]]; do
     case $1 in
         -4|--ipv4) ipv4=1 ;;
         -6|--ipv6) ipv6=1 ;;
         -b|--both) ipv4=1; ipv6=1 ;;
+        --vrf) vrf="vrf name $2"; shift ;;
         *) echo "Unknown parameter passed: $1" ;;
     esac
     shift
 done
 
 declare -a vals
-eval "vals=($(cli-shell-api listActiveNodes protocols bgp neighbor))"
+eval "vals=($(cli-shell-api listActiveNodes $vrf protocols bgp neighbor))"
 
 if [ $ipv4 -eq 1 ] && [ $ipv6 -eq 1 ]; then
     echo -n '<x.x.x.x>' '<h:h:h:h:h:h:h:h>' ${vals[@]}
@@ -54,9 +56,10 @@ elif [ $ipv6 -eq 1 ] ; then
      done
 else
     echo "Usage:"
-    echo "-4|--ipv4    list only IPv4 peers"
-    echo "-6|--ipv6    list only IPv6 peers"
-    echo "--both       list both IP4 and IPv6 peers"
+    echo "-4|--ipv4      list only IPv4 peers"
+    echo "-6|--ipv6      list only IPv6 peers"
+    echo "--both         list both IP4 and IPv6 peers"
+    echo "--vrf <name>   apply command to given VRF (optional)"
     echo ""
     exit 1
 fi
diff --git a/src/op_mode/vtysh_wrapper.sh b/src/op_mode/vtysh_wrapper.sh
index 09980e14f..bc7814a7c 100755
--- a/src/op_mode/vtysh_wrapper.sh
+++ b/src/op_mode/vtysh_wrapper.sh
@@ -1,5 +1,6 @@
 #!/bin/sh
 declare -a tmp
-# FRR uses ospf6 where we use ospfv3, thus alter the command
-tmp=$(echo $@ | sed -e "s/ospfv3/ospf6/")
+# FRR uses ospf6 where we use ospfv3, and we use reset over clear for BGP,
+# thus alter the commands
+tmp=$(echo $@ | sed -e "s/ospfv3/ospf6/" | sed -e "s/^reset bgp/clear bgp/")
 vtysh -c "$tmp"
-- 
cgit v1.2.3