summaryrefslogtreecommitdiff
path: root/packages/frr
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-02-08 22:56:23 +0100
committerChristian Breunig <christian@breunig.cc>2024-02-08 22:57:00 +0100
commit798b95eb9776486aed874346869a8238383c18f6 (patch)
tree014900d458345de9307872a38af871ab0d6eb012 /packages/frr
parent8b89929fdae6fac454c072c4f29b8a4f338365ba (diff)
downloadvyos-build-798b95eb9776486aed874346869a8238383c18f6.tar.gz
vyos-build-798b95eb9776486aed874346869a8238383c18f6.zip
frr: T6023: add pending upstream patches
Latest stable/9.0 FRR branch has an updated version of frr-reload.py which is more strict on the commands to remove from the running config. This resulted in some issues in the codebase of FRR which are addressed in the attached patches and are pending for upstream integration.
Diffstat (limited to 'packages/frr')
-rw-r--r--packages/frr/patches/0001-ospfd-add-support-for-no-router-info-area-as-command.patch42
-rw-r--r--packages/frr/patches/0002-ospfd-can-not-delete-segment-routing-node-msd-when-S.patch34
2 files changed, 76 insertions, 0 deletions
diff --git a/packages/frr/patches/0001-ospfd-add-support-for-no-router-info-area-as-command.patch b/packages/frr/patches/0001-ospfd-add-support-for-no-router-info-area-as-command.patch
new file mode 100644
index 0000000..f6e5a10
--- /dev/null
+++ b/packages/frr/patches/0001-ospfd-add-support-for-no-router-info-area-as-command.patch
@@ -0,0 +1,42 @@
+From c86cf962743f3db90c027967ba5c92eaed28dd77 Mon Sep 17 00:00:00 2001
+From: Christian Breunig <christian@breunig.cc>
+Date: Thu, 8 Feb 2024 22:39:04 +0100
+Subject: [PATCH] ospfd: add support for "no router-info [<area|as>] command"
+
+frr-reload.py will walk through all config contexts and prepend no to the CLI
+command. This requires that the vtysh shell code accepts a full command.
+
+To Reproduce
+
+vtysh -c "conf t" -c "router ospf" -c "router-info area"
+vtysh -c "conf t" -c "router ospf" -c "no router-info area"
+% Unknown command: no router-info area
+vtysh -c "conf t" -c "router ospf" -c "no router-info"
+
+Signed-off-by: Christian Breunig <christian@breunig.cc>
+(cherry picked from commit e744db5098dcdca1bce32169aaa0703a21ab6b0c)
+---
+ ospfd/ospf_ri.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/ospfd/ospf_ri.c b/ospfd/ospf_ri.c
+index 725443f49..80e7f5931 100644
+--- a/ospfd/ospf_ri.c
++++ b/ospfd/ospf_ri.c
+@@ -1722,9 +1722,11 @@ DEFUN (router_info,
+
+ DEFUN (no_router_info,
+ no_router_info_cmd,
+- "no router-info",
++ "no router-info [<area|as>]",
+ NO_STR
+- "Disable the Router Information functionality\n")
++ "Disable the Router Information functionality\n"
++ "Disable the Router Information functionality with AS flooding scope\n"
++ "Disable the Router Information functionality with Area flooding scope\n")
+ {
+
+ if (!OspfRI.enabled)
+--
+2.39.2
+
diff --git a/packages/frr/patches/0002-ospfd-can-not-delete-segment-routing-node-msd-when-S.patch b/packages/frr/patches/0002-ospfd-can-not-delete-segment-routing-node-msd-when-S.patch
new file mode 100644
index 0000000..c814330
--- /dev/null
+++ b/packages/frr/patches/0002-ospfd-can-not-delete-segment-routing-node-msd-when-S.patch
@@ -0,0 +1,34 @@
+From 07dbae1f59592d4da0b6a248ba24506d23f1dcd9 Mon Sep 17 00:00:00 2001
+From: Christian Breunig <christian@breunig.cc>
+Date: Thu, 8 Feb 2024 21:53:35 +0100
+Subject: [PATCH] ospfd: can not delete "segment-routing node-msd" when SR if
+ off
+
+This fixes the initial implementation of commit 7743f2f8c00 ("OSPFd: Update
+Segment Routing PR following review") where it wsa not possible to remove
+the "segment-routing node-msd" CLI nodes via vtysh once segment-routing got
+disabled.
+
+Closes #14910
+
+Signed-off-by: Christian Breunig <christian@breunig.cc>
+(cherry picked from commit ba45aa62e7bcc4ea7b02773614f03efb6f7c595b)
+---
+ ospfd/ospf_sr.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ospfd/ospf_sr.c b/ospfd/ospf_sr.c
+index 467cb0504..e26fe6f53 100644
+--- a/ospfd/ospf_sr.c
++++ b/ospfd/ospf_sr.c
+@@ -580,6 +580,7 @@ static void ospf_sr_stop(void)
+ hash_clean(OspfSR.neighbors, (void *)sr_node_del);
+ OspfSR.self = NULL;
+ OspfSR.status = SR_OFF;
++ OspfSR.msd = 0;
+ }
+
+ /*
+--
+2.39.2
+