[Samba] custom resolv.conf?

Michael Tokarev mjt at tls.msk.ru
Wed Feb 14 08:42:38 UTC 2024


Hi!

In an attempt to avoid an utter idiocy with DNS queries trip though
an external windows nameservers, I thought maybe I can tell samba to
use custom resolv.conf.  In the code, the low-level DNS routines
(parse_resolvconf(), dns_lookup(), dns_lookup_send() etc) accept
alternative resolv.conf file name, but it looks like no functions
which call the low-level stuff actually provide one.  Maybe I'm
missing something?  It looks wrong to have the parameter but not
use it.

While looking for possible ways, I noticed that dns_lookup()
function exists in several versions.  There's global symbol
in libcli/dns/dns_lookup.c, also static symbol in
source4/libcli/resolve/dns_ex.c with different prototype, and
the same function also used in heimdal, with yet another
prototype.  It looks like a sure way for trouble.

Also, dns_lookup_send() parses resolv.conf on *every* query, -
this seems wrong.  Especially since samba has things like stat
cache, while stat(2) call on any sane system should work very
fast (okay, when it is on a heavily-loaded nfs, it might take
a while indeed); or like avoiding stat of a log file to check
if it needs a rotation. And at the same time such a wastage in
reading resolv.conf for *every* query..

Thanks,

/mjt



More information about the samba mailing list