Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

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