diff options
Diffstat (limited to 'usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c')
-rw-r--r-- | usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c b/usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c index 484b3ada97..c48200e11a 100644 --- a/usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c +++ b/usr/src/lib/smbsrv/libsmbns/common/smbns_netlogon.c @@ -541,15 +541,19 @@ smb_better_dc(uint32_t cur_ip, uint32_t new_ip) if (cur_ip == 0) return (1); + /* + * see if there is a DC in the + * same subnet + */ ipaddr.a_family = AF_INET; ipaddr.a_ipv4 = cur_ip; - if (smb_nic_exists(&ipaddr, B_TRUE)) + if (smb_nic_is_same_subnet(&ipaddr)) return (0); ipaddr.a_family = AF_INET; ipaddr.a_ipv4 = new_ip; - if (smb_nic_exists(&ipaddr, B_TRUE)) + if (smb_nic_is_same_subnet(&ipaddr)) return (1); /* * Otherwise, just keep the old one. |