From 4bfe801e7e6c59bdb70500b629fd31bb03598d4b Mon Sep 17 00:00:00 2001
From: Yuxiang Zhu <vfreex@gmail.com>
Date: Mon, 9 Jan 2023 05:48:50 +0000
Subject: T4977: Add Babel routing protocol support

This PR adds basic Babel routing protocol support using the implementation in
FRR.

Signed-off-by: Yuxiang Zhu <vfreex@gmail.com>
---
 op-mode-definitions/restart-frr.xml.in |  6 +++++
 op-mode-definitions/show-babel.xml.in  | 41 ++++++++++++++++++++++++++++++++++
 2 files changed, 47 insertions(+)
 create mode 100644 op-mode-definitions/show-babel.xml.in

(limited to 'op-mode-definitions')

diff --git a/op-mode-definitions/restart-frr.xml.in b/op-mode-definitions/restart-frr.xml.in
index 4e2be1bf2..4572858b5 100644
--- a/op-mode-definitions/restart-frr.xml.in
+++ b/op-mode-definitions/restart-frr.xml.in
@@ -68,6 +68,12 @@
         </properties>
         <command>sudo ${vyos_op_scripts_dir}/restart_frr.py --action restart --daemon zebra</command>
       </leafNode>
+      <leafNode name="babel">
+        <properties>
+          <help>Restart Babel routing daemon</help>
+        </properties>
+        <command>sudo ${vyos_op_scripts_dir}/restart_frr.py --action restart --daemon babeld</command>
+      </leafNode>
     </children>
   </node>
 </interfaceDefinition>
diff --git a/op-mode-definitions/show-babel.xml.in b/op-mode-definitions/show-babel.xml.in
new file mode 100644
index 000000000..3aac3764e
--- /dev/null
+++ b/op-mode-definitions/show-babel.xml.in
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+  <node name="show">
+    <children>
+      <node name="babel">
+        <properties>
+          <help>Show Babel routing protocol information</help>
+        </properties>
+        <children>
+          <leafNode name="interface">
+            <properties>
+              <help>Show Babel Interface information</help>
+            </properties>
+            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
+          </leafNode>
+          <leafNode name="neighbor">
+            <properties>
+              <help>Show Babel neighbor information</help>
+            </properties>
+            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
+          </leafNode>
+          <tagNode name="neighbor">
+            <properties>
+              <help>Show Babel neighbor information for specified interface</help>
+              <completionHelp>
+                <script>${vyos_completion_dir}/list_interfaces.py</script>
+              </completionHelp>
+            </properties>
+            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
+          </tagNode>
+          <leafNode name="route">
+            <properties>
+              <help>Show Babel route information</help>
+            </properties>
+            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
+          </leafNode>
+        </children>
+      </node>
+    </children>
+  </node>
+</interfaceDefinition>
-- 
cgit v1.2.3