You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is this a regression from a prior c-ares version? If so, what version did it work correctly on and what version are you testing on (e.g. official 1.14.0 release, git master, etc)?
Does this work as you'd expect with some other DNS resolver? If so, which one?
1.it is not a regression , i have tested on 1.14, 1.13 and master
2.it would work when i use libcurl default dns resolver, see below, you can see it would use the second dns server:
3.you can simulate the situation by adding this code in ares_parse_a_reply.c: int ares_parse_a_reply(const unsigned char *abuf, int alen, struct hostent **host, struct ares_addrttl *addrttls, int *naddrttls) { char* a = abuf; a[7] = 0; //set Answer RRs to 0 unsigned int qdcount, ancount;
it will set "Answer RRs" to 0, then you can see this issue
Is this still present? I'm pretty sure based on the description of this issue, it was recently resolved. c-ares would previously stop on ARES_ENODATA on search, but now will continue. Its possible there is another area that needs a bypass however.
I have two dns server set, the first is 10.201.128.1, second is 8.8.8.8, the first dnsserver just return top root server see wireshark:
in this situation, i can get the right address and cares would not use the second dns to resolving, i have debug the source code in 1.14,it did so.
can you fix the issue please.
The text was updated successfully, but these errors were encountered: