From: Brett Ciphery Date: Wed, 11 Jan 2012 16:40:11 +0000 (-0500) Subject: nl_addr_cmp(): handle prefix length during address comparison X-Git-Tag: libnl3_2_5~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=794ac78c5618ee81a45e4f58694ee27b3403ebd7;p=libnl nl_addr_cmp(): handle prefix length during address comparison Signed-off-by: Brett Ciphery --- diff --git a/lib/addr.c b/lib/addr.c index c8c4ca4..30c708d 100644 --- a/lib/addr.c +++ b/lib/addr.c @@ -497,7 +497,10 @@ int nl_addr_cmp(struct nl_addr *a, struct nl_addr *b) d = a->a_len - b->a_len; if (a->a_len && d == 0) - return memcmp(a->a_addr, b->a_addr, a->a_len); + d = memcmp(a->a_addr, b->a_addr, a->a_len); + + if (d == 0) + return (a->a_prefixlen - b->a_prefixlen); } return d;