File:  [NetBSD Developer Wiki] / wikisrc / individual-software-releases / Attic / libbsdnet.mdwn
Revision 1.5: download - view: text, annotated - select for diffs
Thu Jul 11 22:07:25 2013 UTC (9 years, 1 month ago) by wiki
Branches: MAIN
CVS tags: HEAD
web commit by reed: fix markdown

    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: 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: 
   41: src/common/lib/libc/inet/inet_addr.c
   42: 
   43: NetBSD adds \_inet_aton.c and \_inet_pton.c
   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
   51: to some of what we have in src/lib/libc/net/
   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: 
   85: NetBSD adds \_\_dn_comp.c, \_\_res_close.c, \_\_res_send.c,
   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