Introduction ISC's libbind provides the standard resolver library, along with header files and documentation, for communicating with domain name servers, retrieving network host entries from /etc/hosts or via DNS, converting CIDR network addresses, perform Hesiod information lookups, retrieve network entries from /etc/networks, implement TSIG transaction/request security of DNS messages, perform name-to-address and address-to-name translations, utilize /etc/resolv.conf for resolver configuration. It contains many of the same historical functions and headers included with many Unix operating systems. Originally written for BIND 8, it was included in BIND 9 as optionally-compiled code through release 9.5. It has been removed from subsequent releases of BIND 9 and is now provided as a separate package. Building The libbind library requires a system with an ANSI C compiler and basic POSIX support. To build, just ./configure make Several environment variables that can be set before running configure will affect compilation: CC The C compiler to use. configure tries to figure out the right one for supported systems. CFLAGS C compiler flags. Defaults to include -g and/or -O2 as supported by the compiler. STD_CINCLUDES System header file directories. Can be used to specify where add-on thread or IPv6 support is, for example. Defaults to empty string. STD_CDEFINES Any additional preprocessor symbols you want defined. Defaults to empty string. Possible settings: Change the default syslog facility of named/lwresd. -DISC_FACILITY=LOG_LOCAL0 Enable DNSSEC signature chasing support in dig. -DDIG_SIGCHASE=1 (sets -DDIG_SIGCHASE_TD=1 and -DDIG_SIGCHASE_BU=1) Disable dropping queries from particular well known ports. -DNS_CLIENT_DROPPORT=0 Sibling glue checking in named-checkzone is enabled by default. To disable the default check set. -DCHECK_SIBLING=0 named-checkzone checks out-of-zone addresses by default. To disable this default set. -DCHECK_LOCAL=0 Enable workaround for Solaris kernel bug about /dev/poll -DISC_SOCKET_USE_POLLWATCH=1 The watch timeout is also configurable, e.g., -DISC_SOCKET_POLLWATCH_TIMEOUT=20 LDFLAGS Linker flags. Defaults to empty string. The following need to be set when cross compiling. BUILD_CC The native C compiler. BUILD_CFLAGS (optional) BUILD_CPPFLAGS (optional) Possible Settings: -DNEED_OPTARG=1 (optarg is not declared in <unistd.h>) BUILD_LDFLAGS (optional) BUILD_LIBS (optional) "make install" will install the library. By default, installation is into /usr/local, but this can be changed with the "--prefix" option when running "configure". To see additional configure options, run "configure --help". If you need to re-run configure please run "make distclean" first. This will ensure that all the option changes take. Notes on Usage - Installing both libbind and BIND 9 on the same system will produce two incompatible header files with similar names: $PREFIX/include/isc/list.h (from BIND 9) and $PREFIX/include/bind/isc/list.h (from libbind). When compiling code against libbind, be sure to set -I flags appropriately. Documentation Man pages for libbind routines, in *roff and plaintext format, are included with the release. Bug Reports and Mailing Lists Bugs reports should be sent to libbind-bugs@isc.org Discussions of libbind can be send to the BIND Users mailing list. To subscribe, send mail to: bind-users-subscribe@isc.org Archives of that list can be found at: https://lists.isc.org/pipermail/bind-users/ If you're planning on making changes to the libbind source code, you might want to join the BIND Workers mailing list. To subscribe, send mail to: bind-workers-subscribe@isc.org