1: The netresolv suite provides functions and documentation for communicating
2: with domain name servers, retrieving network host entries from
3: /etc/hosts or via DNS, converting CIDR network addresses, performing
4: Hesiod information lookups, retrieving network entries from
5: /etc/networks, implementing TSIG transaction/request security of
6: DNS messages, performing name-to-address and address-to-name
7: translations, and utilizing /etc/resolv.conf for resolver configuration.
8:
9: Historically, much of the code is derived from the CSRG BSD distributions, such
10: as the old BSD gethostbyname() standard API. It was previously also maintained by ISC and distributed with BIND
11: and libbind. The handoff of the maintainership from ISC to NetBSD
12: happened in July 2013. The libbind-6.0 version from March 2009 is
13: available via ISC at <http://ftp.isc.org/isc/libbind/6.0/>.
14:
15: Bug fixes and development discussion for this code can be discussed on the tech-userlevel mailing list.
16:
17: Patches of NetBSD (June 2013 head) against libbind-6.0 are available at:
18: <http://ftp.netbsd.org/pub/NetBSD/misc/reed/netresolv/>
19:
20: libbind provides portability headers: port_before.h and port_after.h
21:
22: ### port
23: port directory provides portability headers for many operating sytems
24: make directory provides common Makefile rules and mkdep
25:
26: ### bsd
27: bsd directory contains compatibility code, such as:
28: daemon(), \_\_ftruncate(), isc\_\_gettimeofday(), gettimeofday(),
29: mkstemp(), mktemp(), gettemp(), putenv(), \_\_readv(), setenv(),
30: unsetenv(), findenv(), \_\_setitimer(), strcasecmp(), strncasecmp(),
31: strdup(), isc_strerror(), strpbrk(), strsep(), strtoul(), \_\_utimes(),
32: \_\_writev(), \_\_writev()
33:
34: ### dst
35: dst directory contains the Digital Signature Toolkit
36: code for the DST API and crypto API.
37: The dst code is not included in NetBSD's src. Probably the code in src/lib/libc using it actually is
38: not used.
39:
40: ### inet
41:
42: src/common/lib/libc/inet/inet_addr.c
43:
44: NetBSD adds \_inet_aton.c and \_inet_pton.c
45:
46: libbind has (and NetBSD does not have) inet_data in inet.
47:
48: ### irs
49: irs is the Information Retrieval System; it provides
50: getaddrinfo, gethostbyname, and related.
51: NetBSD doesn't include irs directory as is. But is comparable
52: to some of what we have in src/lib/libc/net/
53:
54: NetBSD doesn't have
55: dns.c top-level accessor function for the dns,
56: dns_gr.c for hesiod,
57: gai_strerror.c,
58: and more.
59:
60: ### isc
61: isc directory provides many portability functions
62: primarily used for ISC software.
63:
64: NetBSD only ships with:
65: src/lib/libc/include/isc/assertions.h
66: src/lib/libc/include/isc/dst.h
67: src/lib/libc/include/isc/list.h
68: src/lib/libc/include/isc/memcluster.h
69: src/lib/libc/include/isc/eventlib.h
70: src/lib/libc/include/isc/heap.h
71: src/lib/libc/isc/assertions.c
72: src/lib/libc/isc/ev_streams.c
73: src/lib/libc/isc/ev_timers.c
74: src/lib/libc/isc/eventlib_p.h
75:
76: ### nameser
77:
78: nameser provides the name resolver routines to parse DNS responses
79:
80: libbind has (and NetBSD does not have) in nameser:
81: ns_date.c which provides ns_datetosecs(), isleap(), and datepart();
82: ns_newmsg.c for building DNS message packets;
83: ns_rdata.c for unpacking or comparing rdata; and
84: ns_sign.c and for ns_verify.c for tsig.
85:
86: ### resolv
87:
88: NetBSD adds \_\_dn_comp.c, \_\_res_close.c, \_\_res_send.c,
89: h_errno.c, res_compat.c, and res_state.c.
90:
91: libbind has (and NetBSD does not have) in resolv
92: (even though NetBSD manual documents them):
93: res_findzonecut.c,
94: res_mkupdate.c,
95: res_sendsigned.c,
96: and
97: res_update.c.
98:
99: ### tests
100: tests directory contains dig tool from bind8
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb