diff options
author | Uri Simchoni <uri@samba.org> | 2016-03-03 09:18:44 +0200 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2016-03-07 22:16:20 +0100 |
commit | ef84f4c018424b1fcc232a4780dc2c0435701d86 (patch) | |
tree | 92180c4d90c6dfae437887b3e060561b509a08e5 /source3/libsmb | |
parent | 980f8cfe30577f2b14dfd2ac53a785f4395d980f (diff) | |
download | samba-ef84f4c018424b1fcc232a4780dc2c0435701d86.tar.gz |
dsgetdcname: return an IP address on rediscovery
When dsgetdcname return its result based on discovery
process (instead of retrieving cached value), always
return the found server's IP address in dc_address field,
rather than its netbios name.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11769
Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/dsgetdcname.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/source3/libsmb/dsgetdcname.c b/source3/libsmb/dsgetdcname.c index a63ba5a0ce7..1033329a04e 100644 --- a/source3/libsmb/dsgetdcname.c +++ b/source3/libsmb/dsgetdcname.c @@ -792,14 +792,14 @@ static NTSTATUS make_dc_info_from_cldap_reply(TALLOC_CTX *mem_ctx, print_sockaddr(addr, sizeof(addr), ss); dc_address = addr; dc_address_type = DS_ADDRESS_TYPE_INET; - } - - if (!ss && r->sockaddr.pdc_ip) { - dc_address = r->sockaddr.pdc_ip; - dc_address_type = DS_ADDRESS_TYPE_INET; } else { - dc_address = r->pdc_name; - dc_address_type = DS_ADDRESS_TYPE_NETBIOS; + if (r->sockaddr.pdc_ip) { + dc_address = r->sockaddr.pdc_ip; + dc_address_type = DS_ADDRESS_TYPE_INET; + } else { + dc_address = r->pdc_name; + dc_address_type = DS_ADDRESS_TYPE_NETBIOS; + } } map_dc_and_domain_names(flags, |