summaryrefslogtreecommitdiff
path: root/packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-05-04 16:17:38 +0200
committerChristian Breunig <christian@breunig.cc>2024-05-04 16:17:38 +0200
commit1b61973b9143aa8a04cc7c857ec567fa962e4e43 (patch)
treeed095597bfba306f340c76353a5cff8ee04af4a9 /packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch
parent6ff4b31c4a75583424edd0deb479d1dacc42d6b3 (diff)
downloadvyos-build-1b61973b9143aa8a04cc7c857ec567fa962e4e43.tar.gz
vyos-build-1b61973b9143aa8a04cc7c857ec567fa962e4e43.zip
frr: T6283: add pending upstream patch
Diffstat (limited to 'packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch')
-rw-r--r--packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch b/packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch
new file mode 100644
index 0000000..9b87e30
--- /dev/null
+++ b/packages/frr/patches/0001-bgpd-fix-no-set-as-path-prepend-ASNUM.patch
@@ -0,0 +1,70 @@
+From e069a1c8d52bb6e7808303df488d7ce912e4f652 Mon Sep 17 00:00:00 2001
+From: Donatas Abraitis <donatas@opensourcerouting.org>
+Date: Thu, 2 May 2024 23:07:19 +0300
+Subject: [PATCH 1/2] bgpd: Fix `no set as-path prepend ASNUM...`
+
+If entering `no set as-path prepend 1 2 3`, it's warned as unknown command.
+
+Now fixed, and the following combinations work fine:
+
+```
+no set as-path prepend
+no set as-path prepend last-as
+no set as-path prepend last-as 1
+no set as-path prepend 1
+no set as-path prepend 1 2
+```
+
+Fixes: https://github.com/FRRouting/frr/issues/15912
+
+Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
+---
+ bgpd/bgp_routemap.c | 17 +++++++++++++----
+ 1 file changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/bgpd/bgp_routemap.c b/bgpd/bgp_routemap.c
+index 4875697aa106..7eb97dae4d24 100644
+--- a/bgpd/bgp_routemap.c
++++ b/bgpd/bgp_routemap.c
+@@ -6288,13 +6288,12 @@ DEFPY_YANG(
+ }
+
+ DEFUN_YANG (no_set_aspath_prepend,
+- no_set_aspath_prepend_cmd,
+- "no set as-path prepend [ASNUM] [last-as [(1-10)]]",
++ no_set_aspath_prepend_last_as_cmd,
++ "no set as-path prepend [last-as [(1-10)]]",
+ NO_STR
+ SET_STR
+ "Transform BGP AS_PATH attribute\n"
+ "Prepend to the as-path\n"
+- AS_STR
+ "Use the peers AS-number\n"
+ "Number of times to insert\n")
+ {
+@@ -6305,6 +6304,15 @@ DEFUN_YANG (no_set_aspath_prepend,
+ return nb_cli_apply_changes(vty, NULL);
+ }
+
++ALIAS_YANG (no_set_aspath_prepend,
++ no_set_aspath_prepend_as_cmd,
++ "no set as-path prepend ASNUM...",
++ NO_STR
++ SET_STR
++ "Transform BGP AS_PATH attribute\n"
++ "Prepend to the as-path\n"
++ AS_STR)
++
+ DEFUN_YANG (set_aspath_exclude,
+ set_aspath_exclude_cmd,
+ "set as-path exclude ASNUM...",
+@@ -7981,7 +7989,8 @@ void bgp_route_map_init(void)
+ install_element(RMAP_NODE, &set_aspath_exclude_access_list_cmd);
+ install_element(RMAP_NODE, &set_aspath_replace_asn_cmd);
+ install_element(RMAP_NODE, &set_aspath_replace_access_list_cmd);
+- install_element(RMAP_NODE, &no_set_aspath_prepend_cmd);
++ install_element(RMAP_NODE, &no_set_aspath_prepend_last_as_cmd);
++ install_element(RMAP_NODE, &no_set_aspath_prepend_as_cmd);
+ install_element(RMAP_NODE, &no_set_aspath_exclude_cmd);
+ install_element(RMAP_NODE, &no_set_aspath_exclude_all_cmd);
+ install_element(RMAP_NODE, &no_set_aspath_exclude_access_list_cmd);