summaryrefslogtreecommitdiff
path: root/zebra
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2025-03-07 22:15:29 -0500
committerDonald Sharp <sharpd@nvidia.com>2025-03-07 22:24:42 -0500
commit9bf22f603e70e41b20d5824923b46aa6ea2145e1 (patch)
tree87302895504eb89c29b4c239d1fb285b7d544f57 /zebra
parent8f8d0923a7d0670abd48d3bc15a6c7a6296d6d2b (diff)
zebra: Add mpls-forwarding to yang state model
The mpls-forwarding state was missing from the model add it. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'zebra')
-rw-r--r--zebra/zebra_nb.c6
-rw-r--r--zebra/zebra_nb.h1
-rw-r--r--zebra/zebra_nb_state.c9
3 files changed, 16 insertions, 0 deletions
diff --git a/zebra/zebra_nb.c b/zebra/zebra_nb.c
index f45ce03956..50fdb8b7aa 100644
--- a/zebra/zebra_nb.c
+++ b/zebra/zebra_nb.c
@@ -58,6 +58,12 @@ const struct frr_yang_module_info frr_zebra_info = {
}
},
{
+ .xpath = "/frr-zebra:zebra/state/mpls-forwarding",
+ .cbs = {
+ .get_elem = zebra_state_mpls_forwarding_get_elem,
+ }
+ },
+ {
.xpath = "/frr-zebra:zebra/workqueue-hold-timer",
.cbs = {
.modify = zebra_workqueue_hold_timer_modify,
diff --git a/zebra/zebra_nb.h b/zebra/zebra_nb.h
index 7b0205058e..628eeab1de 100644
--- a/zebra/zebra_nb.h
+++ b/zebra/zebra_nb.h
@@ -37,6 +37,7 @@ int zebra_ipv6_forwarding_modify(struct nb_cb_modify_args *args);
int zebra_ipv6_forwarding_destroy(struct nb_cb_destroy_args *args);
int zebra_workqueue_hold_timer_modify(struct nb_cb_modify_args *args);
struct yang_data *zebra_ipv6_forwarding_get_elem(struct nb_cb_get_elem_args *args);
+struct yang_data *zebra_state_mpls_forwarding_get_elem(struct nb_cb_get_elem_args *args);
int zebra_zapi_packets_modify(struct nb_cb_modify_args *args);
int zebra_import_kernel_table_table_id_modify(struct nb_cb_modify_args *args);
int zebra_import_kernel_table_table_id_destroy(struct nb_cb_destroy_args *args);
diff --git a/zebra/zebra_nb_state.c b/zebra/zebra_nb_state.c
index 8f072d302d..54af91dafa 100644
--- a/zebra/zebra_nb_state.c
+++ b/zebra/zebra_nb_state.c
@@ -15,6 +15,7 @@
#include "zebra/zebra_vxlan.h"
#include "zebra/zebra_vxlan_if.h"
#include "zebra/ipforward.h"
+#include "zebra/zebra_mpls.h"
/*
* XPath: /frr-interface:lib/interface/frr-zebra:zebra/state/up-count
@@ -1189,3 +1190,11 @@ struct yang_data *zebra_ipv6_forwarding_get_elem(struct nb_cb_get_elem_args *arg
{
return yang_data_new_bool(args->xpath, ipforward_ipv6());
}
+
+/*
+ * XPath: /frr-zebra:zebra/state/mpls-forwarding
+ */
+struct yang_data *zebra_state_mpls_forwarding_get_elem(struct nb_cb_get_elem_args *args)
+{
+ return yang_data_new_bool(args->xpath, mpls_enabled);
+}