summaryrefslogtreecommitdiff
path: root/sysdep/unix
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2024-01-27 17:38:06 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2024-01-27 17:38:06 +0100
commitf40e2bc270d3635be518ae80251ce0b5c519c6f4 (patch)
treeb1122bd3b91456656222ad4da849862a9f9c3fb9 /sysdep/unix
parent472be46f7ab211f38e7662543f1436df30dca753 (diff)
Nest: Fix bug in recursive routes with MPLS-labeled nexthops
When a recursive route with MPLS-labeled nexthop was exported to kernel and read back, the nexthop_same() failed due to different labels_orig field and kernel protocol reinstalled it unnecessarily. For comparing hext hops, route cache has to distinguish ones with different labels_orig, but KRT has to ignore that, so we need two nexthop compare functions. Thanks to Marcel Menzel for the bugreport.
Diffstat (limited to 'sysdep/unix')
-rw-r--r--sysdep/unix/krt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdep/unix/krt.c b/sysdep/unix/krt.c
index 3a4b24dc..7a078fb9 100644
--- a/sysdep/unix/krt.c
+++ b/sysdep/unix/krt.c
@@ -619,7 +619,7 @@ krt_same_dest(rte *k, rte *e)
return 0;
if (ka->dest == RTD_UNICAST)
- return nexthop_same(&(ka->nh), &(ea->nh));
+ return nexthop_equal(&(ka->nh), &(ea->nh));
return 1;
}