diff --git a/0022-route-map-event.patch b/0022-route-map-event.patch new file mode 100644 index 0000000..74e9242 --- /dev/null +++ b/0022-route-map-event.patch @@ -0,0 +1,47 @@ +From 4fc5dafd1c8167a98e3a5f51efc1ea5092513364 Mon Sep 17 00:00:00 2001 +From: rgirada +Date: Thu, 18 Feb 2021 20:15:40 -0800 +Subject: [PATCH] lib: Routemap is not getting applied upon changing the + routemap action + +Description: + This looks broken after NB changes in routemap. When routemap + action modified from permit to deny, it is expected to apply + the new action on the filtered routes before the action in the + routemap data structure has been changed. But currently this is + not handled by the corresponding northbound API. + +Signed-off-by: Rajesh Girada +--- + lib/routemap_northbound.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/lib/routemap_northbound.c b/lib/routemap_northbound.c +index db06e9caac75..3473ca2aea8c 100644 +--- a/lib/routemap_northbound.c ++++ b/lib/routemap_northbound.c +@@ -271,6 +271,7 @@ lib_route_map_entry_description_destroy(struct nb_cb_destroy_args *args) + static int lib_route_map_entry_action_modify(struct nb_cb_modify_args *args) + { + struct route_map_index *rmi; ++ struct route_map *map; + + switch (args->event) { + case NB_EV_VALIDATE: +@@ -281,7 +282,15 @@ static int lib_route_map_entry_action_modify(struct nb_cb_modify_args *args) + case NB_EV_APPLY: + rmi = nb_running_get_entry(args->dnode, NULL, true); + rmi->type = yang_dnode_get_enum(args->dnode, NULL); +- /* TODO: notify? */ ++ map = rmi->map; ++ ++ /* Execute event hook. */ ++ if (route_map_master.event_hook) { ++ (*route_map_master.event_hook)(map->name); ++ route_map_notify_dependencies(map->name, ++ RMAP_EVENT_CALL_ADDED); ++ } ++ + break; + } + diff --git a/frr.spec b/frr.spec index fa7e067..20ddc25 100644 --- a/frr.spec +++ b/frr.spec @@ -7,7 +7,7 @@ Name: frr Version: 7.5.1 -Release: 16%{?checkout}%{?dist} +Release: 17%{?checkout}%{?dist} Summary: Routing daemon License: GPLv2+ URL: http://www.frrouting.org @@ -61,6 +61,7 @@ Patch0018: 0018-CVE-2023-38406.patch Patch0019: 0019-CVE-2023-38407.patch Patch0020: 0020-CVE-2023-47234.patch Patch0021: 0021-CVE-2023-47235.patch +Patch0022: 0022-route-map-event.patch %description FRRouting is free software that manages TCP/IP based routing protocols. It takes @@ -281,6 +282,9 @@ make check PYTHON=%{__python3} %endif %changelog +* Tue Dec 19 2023 Michal Ruprich - 7.5.1-17 +- Resolves: RHEL-6583 - Routes are not refreshed after changing the inbound route rules from deny to permit + * Tue Dec 19 2023 Michal Ruprich - 7.5.1-16 - Resolves: RHEL-15916 - Flowspec overflow in bgpd/bgp_flowspec.c - Resolves: RHEL-15919 - Out of bounds read in bgpd/bgp_label.c