From: Günther Deschner Date: Wed, 7 May 2008 16:38:37 +0000 (+0200) Subject: dsgetdcname: use make_dc_info_from_cldap_reply() for cldap replies. X-Git-Tag: samba-3.3.0pre1~1318 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a3e5b073f0474543ca74b40775ce1d7f80719c96;p=thirdparty%2Fsamba.git dsgetdcname: use make_dc_info_from_cldap_reply() for cldap replies. Guenther --- diff --git a/source/libsmb/dsgetdcname.c b/source/libsmb/dsgetdcname.c index 72a0bb5984f..6ea60ab854f 100644 --- a/source/libsmb/dsgetdcname.c +++ b/source/libsmb/dsgetdcname.c @@ -254,6 +254,10 @@ static uint32_t get_cldap_reply_server_flags(union nbt_cldap_netlogon *r, static bool check_cldap_reply_required_flags(uint32_t ret_flags, uint32_t req_flags) { + if (ret_flags == 0) { + return true; + } + if (req_flags & DS_PDC_REQUIRED) RETURN_ON_FALSE(ret_flags & NBT_SERVER_PDC); @@ -844,23 +848,26 @@ static NTSTATUS process_dc_dns(TALLOC_CTX *mem_ctx, { int i = 0; bool valid_dc = false; - struct nbt_cldap_netlogon_5 r; - const char *dc_hostname, *dc_domain_name; - const char *dc_address; - uint32_t dc_address_type; - uint32_t dc_flags; + union nbt_cldap_netlogon *r = NULL; + uint32_t nt_version = NETLOGON_VERSION_5 | + NETLOGON_VERSION_5EX; + uint32_t ret_flags = 0; for (i=0; i