diff options
Diffstat (limited to 'packages/frr/patches/0002-ospfd-Fix-wrong-advertise-router-calculation-in-tran.patch')
-rw-r--r-- | packages/frr/patches/0002-ospfd-Fix-wrong-advertise-router-calculation-in-tran.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/frr/patches/0002-ospfd-Fix-wrong-advertise-router-calculation-in-tran.patch b/packages/frr/patches/0002-ospfd-Fix-wrong-advertise-router-calculation-in-tran.patch new file mode 100644 index 00000000..941bbb94 --- /dev/null +++ b/packages/frr/patches/0002-ospfd-Fix-wrong-advertise-router-calculation-in-tran.patch @@ -0,0 +1,30 @@ +From 2c6087bec2e4e9360f6c9e1b3df88021f839f35e Mon Sep 17 00:00:00 2001 +From: Zhiyuan Wan <h@iloli.bid> +Date: Mon, 3 Apr 2023 14:35:14 +0800 +Subject: [PATCH 2/3] ospfd: Fix wrong advertise router calculation in transit + network + +The ospfd mistakenly copy advertise router from vertex->id, which may +not be correct in an OSPF transit network. + +Signed-off-by: Zhiyuan Wan <h@iloli.bid> +--- + ospfd/ospf_route.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ospfd/ospf_route.c b/ospfd/ospf_route.c +index 5f18bff1c..744d47dc2 100644 +--- a/ospfd/ospf_route.c ++++ b/ospfd/ospf_route.c +@@ -849,7 +849,7 @@ void ospf_route_copy_nexthops_from_vertex(struct ospf_area *area, + || area->spf_dry_run) { + path = ospf_path_new(); + path->nexthop = nexthop->router; +- path->adv_router = v->id; ++ path->adv_router = v->lsa->adv_router; + + if (oi) { + path->ifindex = oi->ifp->ifindex; +-- +2.30.2 + |