Odd problems trying to make use of libbind as a replacement resolver...

Stefan Puiu stefan.puiu at gmail.com
Mon Oct 17 07:46:06 UTC 2005


On 10/17/05, A Humble Bind User <bindmail at paypc.com> wrote:
>
>
>
> In the course of freshening my various servers' infrastructures, I am
> becoming
> increasingly uneasy about using the "old" libresolv which comes as a part
> of
> glibc. (2.3.1-2.3.2 in my case)
>
> I'd really like to link my various libresolv-using apps against something
> more
> modern, current, and easily upgraded (glibc upgrades fill me with terror).
> I've built BIND-9.3.1 with the following option:

1. Should I have my applications #include a different resolv.h? I'd thought
> that the libbind was designed as a drop-in replacement for the
> "traditional"
> resolver libraries often shipped with glibc and friends? SSH is not
> "threaded", but rather, I suspect the threading import is pulled in by the
> libbind library (irs_data.o and gai_strerror.o).


Your assumption is wrong - a lot (if not all) of the UNIX C libraries use
code from some version of libbind - almost always an old version. I don't
know how up-to-date the glibc manual on my machine is, but it says: "The DNS
resolver code is taken directly from BIND 4.9.5". Now, you realize that
since BIND 4.9.5, a lot of things changed, so you realize you can't expect
backwards compatibility going that far. Especially when you think that the
code in libresolv has probably been modified several times by the GNU
people, thus making it quite different from the original library used. The
"was designed as a drop-in replacement" is wrong - the BIND people can't
maintain drop-in replacement libraries for the various UNIX configurations
out there. Is this assumption based on documentation, or just a supposition
of yours?

I would stay with glibc for now. libbind is dead code, too, if you look in
the source you'd see it's not exactly modern (even though it could be better
than what's in glibc).



More information about the bind-users mailing list