diff options
author | Andrew Tridgell <tridge@samba.org> | 2002-07-01 05:39:32 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2002-07-01 05:39:32 +0000 |
commit | 3563257247c9444f1b1489fb9f4faba3dc50959e (patch) | |
tree | 2c5e7507866e1afc7a79aeef7219a04954e97e55 /source3/libsmb | |
parent | 2e917ea040d85f06b8e40b6fd178c08ee84797c9 (diff) | |
download | samba-3563257247c9444f1b1489fb9f4faba3dc50959e.tar.gz samba-3563257247c9444f1b1489fb9f4faba3dc50959e.tar.bz2 samba-3563257247c9444f1b1489fb9f4faba3dc50959e.zip |
bias the lookup sorting towards directly reachable IPs
(This used to be commit 514b91827a970a0041314af341b8c66a01668e4a)
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/namequery.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/libsmb/namequery.c b/source3/libsmb/namequery.c index 242601d1da..2bf72fbaac 100644 --- a/source3/libsmb/namequery.c +++ b/source3/libsmb/namequery.c @@ -317,6 +317,14 @@ static int ip_compare(struct in_addr *ip1, struct in_addr *ip2) max_bits1 = MAX(bits1, max_bits1); max_bits2 = MAX(bits2, max_bits2); } + + /* bias towards directly reachable IPs */ + if (iface_local(*ip1)) { + max_bits1 += 32; + } + if (iface_local(*ip2)) { + max_bits2 += 32; + } return max_bits2 - max_bits1; } |