s4:wins: use NUMERIC_CMP in nbtd_wins_randomize1Clist_sort()
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Tue, 2 Apr 2024 23:53:32 +0000 (12:53 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 10 Apr 2024 22:56:33 +0000 (22:56 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15625

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source4/nbt_server/wins/winsserver.c

index a9f3ecd7d29a9ae788991b2624f848dfa5d38263..6679961dc035d187a8fe2014fafd4c921c6fc0cc 100644 (file)
@@ -36,6 +36,7 @@
 #include "param/param.h"
 #include "libcli/resolve/resolve.h"
 #include "lib/util/util_net.h"
+#include "lib/util/tsort.h"
 
 /*
   work out the ttl we will use given a client requested ttl
@@ -653,7 +654,7 @@ static int nbtd_wins_randomize1Clist_sort(void *p1,/* (const char **) */
        match_bits1 = ipv4_match_bits(interpret_addr2(a1), interpret_addr2(src->addr));
        match_bits2 = ipv4_match_bits(interpret_addr2(a2), interpret_addr2(src->addr));
 
-       return match_bits2 - match_bits1;
+       return NUMERIC_CMP(match_bits2, match_bits1);
 }
 
 static void nbtd_wins_randomize1Clist(struct loadparm_context *lp_ctx,