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