From a5500a771ee33d02efa566a0f36b574a16145787 Mon Sep 17 00:00:00 2001
From: zsdc <taras@vyos.io>
Date: Wed, 10 Jun 2020 21:03:21 +0300
Subject: BFD: T2573: Fixed show command for BFD peers

As vtysh does not have a vrf option for "show bfd peer" command, the vrf part will be cut before passing a line to the vtysh.
---
 op-mode-definitions/show-protocols-bfd.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'op-mode-definitions')

diff --git a/op-mode-definitions/show-protocols-bfd.xml b/op-mode-definitions/show-protocols-bfd.xml
index 2cc8a1297..4483b39bf 100644
--- a/op-mode-definitions/show-protocols-bfd.xml
+++ b/op-mode-definitions/show-protocols-bfd.xml
@@ -30,13 +30,13 @@
                     <script>/usr/bin/vtysh -c "show bfd peers" | awk '/[:blank:]*peer/ { printf "%s\n", $2 }'</script>
                   </completionHelp>
                 </properties>
-                <command>/usr/bin/vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 '($0 ~ peer BFD_PEER) { system("/usr/bin/vtysh -c \"show bfd " $0 "\"") }'</command>
+                <command>/usr/bin/vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 'BEGIN { regex = sprintf("(peer %s.*)vrf", BFD_PEER) } { if (match($0, regex, bfd_peer_value)) peer=bfd_peer_value[1] } END { if (peer) system("/usr/bin/vtysh -c \"show bfd " peer "\"") }'</command>
                 <children>
                   <leafNode name="counters">
                     <properties>
                       <help>Show Bidirectional Forwarding Detection (BFD) peer counters</help>
                     </properties>
-                    <command>/usr/bin/vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 '($0 ~ peer BFD_PEER) { system("/usr/bin/vtysh -c \"show bfd " $0 " counters\"") }'</command>
+                    <command>/usr/bin/vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 'BEGIN { regex = sprintf("(peer %s.*)vrf", BFD_PEER) } { if (match($0, regex, bfd_peer_value)) peer=bfd_peer_value[1] } END { if (peer) system("/usr/bin/vtysh -c \"show bfd " peer " counters\"") }'</command>
                   </leafNode>
                 </children>
               </tagNode>
-- 
cgit v1.2.3