Annotation of wikisrc/individual-software-releases/netresolv.mdwn, revision 1.5

1.2       reed        1: The netresolv suite provides functions and documentation for communicating
1.1       reed        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
1.3       reed       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/>.
1.1       reed       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:
1.2       reed       18: <http://ftp.netbsd.org/pub/NetBSD/misc/reed/netresolv/>
1.1       reed       19: 
1.4       reed       20: The src/external/bsd/libbind
                     21: <http://cvsweb.netbsd.org/bsdweb.cgi/src/external/bsd/libbind/>
                     22: will be removed, and src/external/bsd/netresolv will be created,
                     23: ISC's latest version (from ISC's CVS) imported on a vendor branch,
                     24: and then NetBSD's changes merged.
                     25: 
                     26: ----
                     27: 
1.1       reed       28: libbind provides portability headers: port_before.h and  port_after.h
                     29: 
                     30: ### port
1.5     ! jnemeth    31: port directory provides portability headers for many operating systems
1.1       reed       32: make directory provides common Makefile rules and mkdep
                     33: 
                     34: ### bsd
                     35: bsd directory contains compatibility code, such as:
                     36: daemon(), \_\_ftruncate(), isc\_\_gettimeofday(), gettimeofday(),
                     37: mkstemp(), mktemp(), gettemp(), putenv(), \_\_readv(), setenv(),
                     38: unsetenv(), findenv(), \_\_setitimer(), strcasecmp(), strncasecmp(),
                     39: strdup(), isc_strerror(), strpbrk(), strsep(), strtoul(), \_\_utimes(),
                     40: \_\_writev(), \_\_writev()
                     41: 
                     42: ### dst
                     43: dst directory contains the Digital Signature Toolkit
                     44: code for the DST API and crypto API.
                     45: The dst code is not included in NetBSD's src. Probably the code in src/lib/libc using it actually is
                     46: not used.
                     47: 
                     48: ### inet
                     49: 
                     50: src/common/lib/libc/inet/inet_addr.c
                     51: 
                     52: NetBSD adds \_inet_aton.c and \_inet_pton.c
                     53: 
                     54: libbind has (and NetBSD does not have) inet_data in inet.
                     55: 
                     56: ### irs
                     57: irs is the Information Retrieval System; it provides
                     58: getaddrinfo, gethostbyname, and related.
                     59: NetBSD doesn't include irs directory as is. But is comparable
                     60: to some of what we have in src/lib/libc/net/
                     61: 
                     62: NetBSD doesn't have
                     63: dns.c top-level accessor function for the dns,
                     64: dns_gr.c for hesiod, 
                     65: gai_strerror.c,
                     66: and more.
                     67: 
                     68: ### isc
                     69: isc directory provides many portability functions
                     70: primarily used for ISC software.
                     71: 
                     72: NetBSD only ships with:
                     73: src/lib/libc/include/isc/assertions.h
                     74: src/lib/libc/include/isc/dst.h
                     75: src/lib/libc/include/isc/list.h
                     76: src/lib/libc/include/isc/memcluster.h
                     77: src/lib/libc/include/isc/eventlib.h
                     78: src/lib/libc/include/isc/heap.h
                     79: src/lib/libc/isc/assertions.c
                     80: src/lib/libc/isc/ev_streams.c
                     81: src/lib/libc/isc/ev_timers.c
                     82: src/lib/libc/isc/eventlib_p.h
                     83: 
                     84: ### nameser
                     85: 
                     86: nameser provides the name resolver routines to parse DNS responses
                     87: 
                     88: libbind has (and NetBSD does not have) in nameser:
                     89: ns_date.c which provides ns_datetosecs(), isleap(), and datepart();
                     90: ns_newmsg.c  for building DNS message packets;
                     91: ns_rdata.c for unpacking or comparing rdata; and
                     92: ns_sign.c and for ns_verify.c for tsig.
                     93: 
                     94: ### resolv
                     95: 
                     96: NetBSD adds \_\_dn_comp.c, \_\_res_close.c, \_\_res_send.c,
                     97: h_errno.c, res_compat.c, and res_state.c.
                     98: 
                     99: libbind has (and NetBSD does not have) in resolv
                    100: (even though NetBSD manual documents them):
                    101: res_findzonecut.c,
                    102: res_mkupdate.c,
                    103: res_sendsigned.c,
                    104: and
                    105: res_update.c.
                    106: 
                    107: ### tests
                    108: tests directory contains dig tool from bind8

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb