From 89dc316029c9167189f258ed9b79fec155da41cb Mon Sep 17 00:00:00 2001 From: Stephen Worley Date: Tue, 14 May 2019 10:26:22 -0700 Subject: [PATCH] lib: Make labels_match function use labels_cmp Update the nexthop_labels_match() function to use nexthop_labels_cmp(). Signed-off-by: Stephen Worley --- lib/nexthop.c | 23 ++++------------------- lib/nexthop.h | 4 ++-- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/lib/nexthop.c b/lib/nexthop.c index c616ea857e..120968f436 100644 --- a/lib/nexthop.c +++ b/lib/nexthop.c @@ -206,27 +206,12 @@ const char *nexthop_type_to_str(enum nexthop_types_t nh_type) /* * Check if the labels match for the 2 nexthops specified. */ -int nexthop_labels_match(const struct nexthop *nh1, const struct nexthop *nh2) +bool nexthop_labels_match(const struct nexthop *nh1, const struct nexthop *nh2) { - const struct mpls_label_stack *nhl1, *nhl2; - - nhl1 = nh1->nh_label; - nhl2 = nh2->nh_label; - - /* No labels is a match */ - if (!nhl1 && !nhl2) - return 1; - - if (!nhl1 || !nhl2) - return 0; - - if (nhl1->num_labels != nhl2->num_labels) - return 0; - - if (memcmp(nhl1->label, nhl2->label, nhl1->num_labels)) - return 0; + if (nexthop_labels_cmp(nh1, nh2) != 0) + return false; - return 1; + return true; } struct nexthop *nexthop_new(void) diff --git a/lib/nexthop.h b/lib/nexthop.h index 58e8e0ebb6..1bc3055835 100644 --- a/lib/nexthop.h +++ b/lib/nexthop.h @@ -144,8 +144,8 @@ extern int nexthop_cmp(const struct nexthop *nh1, const struct nexthop *nh2); extern const char *nexthop_type_to_str(enum nexthop_types_t nh_type); extern int nexthop_same_no_recurse(const struct nexthop *next1, const struct nexthop *next2); -extern int nexthop_labels_match(const struct nexthop *nh1, - const struct nexthop *nh2); +extern bool nexthop_labels_match(const struct nexthop *nh1, + const struct nexthop *nh2); extern int nexthop_same_firsthop(struct nexthop *next1, struct nexthop *next2); extern const char *nexthop2str(const struct nexthop *nexthop, -- 2.39.5