Change in res_nsearch behaviour?
G Muthukumar
muthu at wipro.wipsys.soft.net
Tue Jan 25 13:46:00 UTC 2000
Hi,
Is there any reason behind the changed behaviour of res_nsearch?
In BIND 8.2.x (including 8.2.2-P5), the function res_nsearch does not do
any searching if there is a dot in the name. It tries the name 'as is' and
returns. It does not seem to be doing the search in the current/parent
domains if the 'as is' query failed. But according to the man page (ndots
option), the 'search list' elements will be appended.
Here is the code from BIND 8.2.2-P5 res_nsearch() (line no. 210 of
res_query.c):
/*
* If there are enough dots in the name, do no searching.
* (The threshold can be set with the "ndots" option.)
*/
if (dots >= statp->ndots || trailing_dot)
return (res_nquerydomain(statp, name, NULL, class, type,
answer, anslen));
whereas the code from BIND 4.9.7 res_search():
saved_herrno = -1;
if (dots >= _res.ndots) {
ret = res_querydomain(name, NULL, class, type, answer,
anslen);
if (ret > 0)
return (ret);
saved_herrno = h_errno;
tried_as_is++;
}
(I found this to be a useful feature when one has multiple
subdomains to resolve hostnames of other subdomains).
Is this an expected behaviour or a bug? Or Did I misunderstand
something?
If this was discussed already, my apologies to the list.
Thanks,
Muthu
More information about the bind-workers
mailing list