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

1.3       wiki        1: The libbsdnet suite provides functions and documentation for communicating
1.1       wiki        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
1.3       wiki       10: as the old BSD gethostbyname() standard API.  It was previously also maintained by ISC and distributed with BIND
1.1       wiki       11: and libbind.  The handoff of the maintainership from ISC to NetBSD happened in July 2013.
1.3       wiki       12: 
1.4       wiki       13: Bug fixes and development discussion for this code can be discussed on the tech-userlevel mailing list.
                     14: 
1.3       wiki       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:
1.5     ! wiki       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()
1.3       wiki       31: 
                     32: ### dst
                     33: dst directory contains the Digital Signature Toolkit
                     34: code for the DST API and crypto API.
                     35: Parts of NetBSD's copy of libbind in src/lib/libc use
                     36: this, The dst code is not included in NetBSD's src. Probably the code in src/lib/libc using it actually is
                     37: not used.
                     38: 
                     39: ### inet
                     40: 
1.4       wiki       41: src/common/lib/libc/inet/inet_addr.c
1.3       wiki       42: 
1.5     ! wiki       43: NetBSD adds \_inet_aton.c and \_inet_pton.c
1.3       wiki       44: 
                     45: libbind has (and NetBSD does not have) inet_data in inet.
                     46: 
                     47: ### irs
                     48: irs is the Information Retrieval System; it provides
                     49: getaddrinfo, gethostbyname, and related.
                     50: NetBSD doesn't include irs directory as is. But is comparable
1.4       wiki       51: to some of what we have in src/lib/libc/net/
1.3       wiki       52: 
                     53: NetBSD doesn't have
                     54: dns.c top-level accessor function for the dns,
                     55: dns_gr.c for hesiod, 
                     56: gai_strerror.c,
                     57: and more.
                     58: 
                     59: ### isc
                     60: isc directory provides many portability functions
                     61: primarily used for ISC software.
                     62: 
                     63: NetBSD only ships with:
                     64: src/lib/libc/include/isc/assertions.h
                     65: src/lib/libc/include/isc/dst.h
                     66: src/lib/libc/include/isc/list.h
                     67: src/lib/libc/include/isc/memcluster.h
                     68: src/lib/libc/include/isc/eventlib.h
                     69: src/lib/libc/include/isc/heap.h
                     70: src/lib/libc/isc/assertions.c
                     71: src/lib/libc/isc/ev_streams.c
                     72: src/lib/libc/isc/ev_timers.c
                     73: src/lib/libc/isc/eventlib_p.h
                     74: 
                     75: ### nameser provides the name resolver routines to parse DNS responses
                     76: 
                     77: libbind has (and NetBSD does not have) in nameser:
                     78: ns_date.c which provides ns_datetosecs(), isleap(), datepart()
                     79: ns_newmsg.c  for building DNS message packets
                     80: ns_rdata.c for unpacking or comparing rdata
                     81: ns_sign.c and for ns_verify.c for tsig
                     82: 
                     83: ### resolv
                     84: 
1.5     ! wiki       85: NetBSD adds \_\_dn_comp.c, \_\_res_close.c, \_\_res_send.c,
1.3       wiki       86: h_errno.c, res_compat.c, res_state.c.
                     87: 
                     88: libbind has (and NetBSD does not have) in resolv:
                     89: (even though NetBSD manual documents them)
                     90: res_findzonecut.c
                     91: res_mkupdate.c
                     92: res_sendsigned.c
                     93: res_update.c
                     94: 
                     95: ### tests
                     96: tests directory contains dig tool from bind8

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