]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: Fix `no set as-path prepend ASNUM...`
authorDonatas Abraitis <donatas@opensourcerouting.org>
Thu, 2 May 2024 20:07:19 +0000 (23:07 +0300)
committerMergify <37929162+mergify[bot]@users.noreply.github.com>
Tue, 7 May 2024 14:53:32 +0000 (14:53 +0000)
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>
(cherry picked from commit e069a1c8d52bb6e7808303df488d7ce912e4f652)

bgpd/bgp_routemap.c

index 01be332921804aef76ad1ea554c66e763e5b0004..ff2b1e8c81db1855858f7d4486fc37a9ad5583cf 100644 (file)
@@ -6254,13 +6254,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")
 {
@@ -6271,6 +6270,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...",
@@ -7947,7 +7955,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);