From db1bb52c4b618c68407cbde3e65386fa44824d6f Mon Sep 17 00:00:00 2001 From: Louis Scalbert Date: Fri, 26 Jan 2024 12:05:21 +0100 Subject: [PATCH] bgpd: use bgp_labels_same in bgp_update() Use bgp_labels_same() for all label comparisons in bgpd. Signed-off-by: Louis Scalbert --- bgpd/bgp_route.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 997d57117ca4..8bcbd3dd8cea 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -4520,12 +4520,12 @@ void bgp_update(struct peer *peer, const struct prefix *p, uint32_t addpath_id, hook_call(bgp_process, bgp, afi, safi, dest, peer, true); /* Same attribute comes in. */ - if (!CHECK_FLAG(pi->flags, BGP_PATH_REMOVED) - && same_attr - && (!has_valid_label - || memcmp(&(bgp_path_info_extra_get(pi))->label, label, - num_labels * sizeof(mpls_label_t)) - == 0)) { + if (!CHECK_FLAG(pi->flags, BGP_PATH_REMOVED) && same_attr && + (!has_valid_label || + (bgp_path_info_extra_get(pi) && + bgp_labels_same((const mpls_label_t *)pi->extra->label, + pi->extra->num_labels, label, + num_labels)))) { if (CHECK_FLAG(bgp->af_flags[afi][safi], BGP_CONFIG_DAMPENING) && peer->sort == BGP_PEER_EBGP