1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-31 20:22:15 +03:00

dns: fix comments and make s4/libcli/resolve dns resolver working

After migrating to use libaddns, reply_to_addrs() needed to change the
way answers are iterated through. Originally libroken implementation
gave all answers as separate records with last one being explicitly NULL.
libaddns unmarshalling code gives all non-NULL answers and should be
iterated with explicit reply->num_answers in use.
This commit is contained in:
Alexander Bokovoy
2012-05-15 16:28:44 +03:00
parent 1feb31246d
commit f32d43763d
2 changed files with 4 additions and 4 deletions

View File

@ -316,7 +316,7 @@ static NTSTATUS dns_send_req( TALLOC_CTX *ctx, const char *name, int q_type,
NT_STATUS_EQUAL(last_dns_status,NT_STATUS_CONNECTION_REFUSED)) &&
(last_dns_check+DNS_FAILED_WAITTIME) > now )
{
DEBUG(10,("last_dns_check: Returning cached status (%s)\n",
DEBUG(10,("dns_send_req: last dns check returning cached status (%s)\n",
nt_errstr(last_dns_status) ));
return last_dns_status;
}
@ -331,7 +331,7 @@ static NTSTATUS dns_send_req( TALLOC_CTX *ctx, const char *name, int q_type,
if (buf_len) {
if ((buffer = talloc_array(ctx, uint8_t, buf_len))
== NULL ) {
DEBUG(0,("ads_dns_lookup_srv: "
DEBUG(0,("dns_send_req: "
"talloc() failed!\n"));
last_dns_status = NT_STATUS_NO_MEMORY;
last_dns_check = time_mono(NULL);
@ -341,7 +341,7 @@ static NTSTATUS dns_send_req( TALLOC_CTX *ctx, const char *name, int q_type,
if ((resp_len = res_query(name, C_IN, q_type, buffer, buf_len))
< 0 ) {
DEBUG(3,("ads_dns_lookup_srv: "
DEBUG(3,("dns_send_req: "
"Failed to resolve %s (%s)\n",
name, strerror(errno)));
TALLOC_FREE( buffer );

View File

@ -98,7 +98,7 @@ static int reply_to_addrs(TALLOC_CTX *mem_ctx, uint32_t *a_num,
}
*cur_addrs = addrs;
for (i = 0; reply->answers[i]; i++) {
for (i = 0; i < reply->num_answers; i++) {
rr = reply->answers[i];
/* we are only interested in the IN class */