external/bsd/bind/dist/lib/isc/tests/hash_test.c
author msaitoh <msaitoh@NetBSD.org>
Fri, 26 Dec 2014 03:08:06 +0000
branchnetbsd-6-1
changeset 277066 8f6a14690a1a
parent 255812 508d16382d36
child 277127 23d5207bb72e
permissions -rw-r--r--
Pull up following revision(s) (requested by spz in ticket #1217): distrib/sets/lists/base/ad.mips64eb patch distrib/sets/lists/base/ad.mips64el patch distrib/sets/lists/base/md.amd64 patch distrib/sets/lists/base/md.sparc64 patch distrib/sets/lists/base/shl.mi patch distrib/sets/lists/comp/ad.mips64eb patch distrib/sets/lists/comp/ad.mips64el patch distrib/sets/lists/comp/md.amd64 patch distrib/sets/lists/comp/md.sparc64 patch distrib/sets/lists/comp/mi patch distrib/sets/lists/comp/shl.mi patch external/bsd/bind/Makefile.inc patch external/bsd/bind/dist/CHANGES patch external/bsd/bind/dist/COPYRIGHT patch external/bsd/bind/dist/FAQ patch external/bsd/bind/dist/FAQ.xml patch external/bsd/bind/dist/HISTORY patch external/bsd/bind/dist/Makefile.in patch external/bsd/bind/dist/README patch external/bsd/bind/dist/REDIRECT-NOTES delete external/bsd/bind/dist/acconfig.h patch external/bsd/bind/dist/aclocal.m4 patch external/bsd/bind/dist/config.guess patch external/bsd/bind/dist/config.h.in patch external/bsd/bind/dist/config.h.win32 patch external/bsd/bind/dist/config.sub patch external/bsd/bind/dist/configure patch external/bsd/bind/dist/configure.in patch external/bsd/bind/dist/isc-config.sh.1 patch external/bsd/bind/dist/isc-config.sh.docbook patch external/bsd/bind/dist/isc-config.sh.html patch external/bsd/bind/dist/isc-config.sh.in patch external/bsd/bind/dist/ltmain.sh patch external/bsd/bind/dist/srcid patch external/bsd/bind/dist/version patch external/bsd/bind/dist/bin/Makefile.in patch external/bsd/bind/dist/bin/check/Makefile.in patch external/bsd/bind/dist/bin/check/check-tool.c patch external/bsd/bind/dist/bin/check/named-checkconf.8 patch external/bsd/bind/dist/bin/check/named-checkconf.c patch external/bsd/bind/dist/bin/check/named-checkconf.docbook patch external/bsd/bind/dist/bin/check/named-checkconf.html patch external/bsd/bind/dist/bin/check/named-checkzone.8 patch external/bsd/bind/dist/bin/check/named-checkzone.c patch external/bsd/bind/dist/bin/check/named-checkzone.docbook patch external/bsd/bind/dist/bin/check/named-checkzone.html patch external/bsd/bind/dist/bin/check/win32/checktool.dsp delete external/bsd/bind/dist/bin/check/win32/namedcheckconf.dsp delete external/bsd/bind/dist/bin/check/win32/namedcheckconf.dsw delete external/bsd/bind/dist/bin/check/win32/namedcheckconf.mak delete external/bsd/bind/dist/bin/check/win32/namedcheckzone.dsp delete external/bsd/bind/dist/bin/check/win32/namedcheckzone.dsw delete external/bsd/bind/dist/bin/check/win32/namedcheckzone.mak delete external/bsd/bind/dist/bin/confgen/ddns-confgen.8 patch external/bsd/bind/dist/bin/confgen/ddns-confgen.c patch external/bsd/bind/dist/bin/confgen/ddns-confgen.docbook patch external/bsd/bind/dist/bin/confgen/ddns-confgen.html patch external/bsd/bind/dist/bin/confgen/keygen.c patch external/bsd/bind/dist/bin/confgen/rndc-confgen.8 patch external/bsd/bind/dist/bin/confgen/rndc-confgen.c patch external/bsd/bind/dist/bin/confgen/rndc-confgen.docbook patch external/bsd/bind/dist/bin/confgen/rndc-confgen.html patch external/bsd/bind/dist/bin/confgen/win32/confgentool.dsp delete external/bsd/bind/dist/bin/confgen/win32/ddnsconfgen.dsp delete external/bsd/bind/dist/bin/confgen/win32/ddnsconfgen.mak delete external/bsd/bind/dist/bin/confgen/win32/rndcconfgen.dsp delete external/bsd/bind/dist/bin/confgen/win32/rndcconfgen.mak delete external/bsd/bind/dist/bin/dig/Makefile.in patch external/bsd/bind/dist/bin/dig/dig.1 patch external/bsd/bind/dist/bin/dig/dig.c patch external/bsd/bind/dist/bin/dig/dig.docbook patch external/bsd/bind/dist/bin/dig/dig.html patch external/bsd/bind/dist/bin/dig/dighost.c patch external/bsd/bind/dist/bin/dig/host.1 patch external/bsd/bind/dist/bin/dig/host.c patch external/bsd/bind/dist/bin/dig/host.docbook patch external/bsd/bind/dist/bin/dig/host.html patch external/bsd/bind/dist/bin/dig/nslookup.1 patch external/bsd/bind/dist/bin/dig/nslookup.c patch external/bsd/bind/dist/bin/dig/nslookup.docbook patch external/bsd/bind/dist/bin/dig/nslookup.html patch external/bsd/bind/dist/bin/dig/include/dig/dig.h patch external/bsd/bind/dist/bin/dig/win32/dig.dsp delete external/bsd/bind/dist/bin/dig/win32/dig.mak delete external/bsd/bind/dist/bin/dig/win32/dighost.dsp delete external/bsd/bind/dist/bin/dig/win32/host.dsp delete external/bsd/bind/dist/bin/dig/win32/host.mak delete external/bsd/bind/dist/bin/dig/win32/nslookup.dsp delete external/bsd/bind/dist/bin/dig/win32/nslookup.mak delete external/bsd/bind/dist/bin/dnssec/Makefile.in patch external/bsd/bind/dist/bin/dnssec/dnssec-dsfromkey.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-dsfromkey.c patch external/bsd/bind/dist/bin/dnssec/dnssec-dsfromkey.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-dsfromkey.html patch external/bsd/bind/dist/bin/dnssec/dnssec-importkey.8 new external/bsd/bind/dist/bin/dnssec/dnssec-importkey.c new external/bsd/bind/dist/bin/dnssec/dnssec-importkey.docbook new external/bsd/bind/dist/bin/dnssec/dnssec-importkey.html new external/bsd/bind/dist/bin/dnssec/dnssec-keyfromlabel.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-keyfromlabel.c patch external/bsd/bind/dist/bin/dnssec/dnssec-keyfromlabel.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-keyfromlabel.html patch external/bsd/bind/dist/bin/dnssec/dnssec-keygen.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-keygen.c patch external/bsd/bind/dist/bin/dnssec/dnssec-keygen.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-keygen.html patch external/bsd/bind/dist/bin/dnssec/dnssec-revoke.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-revoke.c patch external/bsd/bind/dist/bin/dnssec/dnssec-revoke.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-revoke.html patch external/bsd/bind/dist/bin/dnssec/dnssec-settime.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-settime.c patch external/bsd/bind/dist/bin/dnssec/dnssec-settime.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-settime.html patch external/bsd/bind/dist/bin/dnssec/dnssec-signzone.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-signzone.c patch external/bsd/bind/dist/bin/dnssec/dnssec-signzone.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-signzone.html patch external/bsd/bind/dist/bin/dnssec/dnssec-verify.8 patch external/bsd/bind/dist/bin/dnssec/dnssec-verify.c patch external/bsd/bind/dist/bin/dnssec/dnssec-verify.docbook patch external/bsd/bind/dist/bin/dnssec/dnssec-verify.html patch external/bsd/bind/dist/bin/dnssec/dnssectool.c patch external/bsd/bind/dist/bin/dnssec/dnssectool.h patch external/bsd/bind/dist/bin/dnssec/win32/dnssectool.dsp delete external/bsd/bind/dist/bin/dnssec/win32/dsfromkey.dsp delete external/bsd/bind/dist/bin/dnssec/win32/dsfromkey.mak delete external/bsd/bind/dist/bin/dnssec/win32/keyfromlabel.dsp delete external/bsd/bind/dist/bin/dnssec/win32/keyfromlabel.mak delete external/bsd/bind/dist/bin/dnssec/win32/keygen.dsp delete external/bsd/bind/dist/bin/dnssec/win32/keygen.mak delete external/bsd/bind/dist/bin/dnssec/win32/nsupdate.dsp delete external/bsd/bind/dist/bin/dnssec/win32/nsupdate.dsw delete external/bsd/bind/dist/bin/dnssec/win32/revoke.dsp delete external/bsd/bind/dist/bin/dnssec/win32/revoke.mak delete external/bsd/bind/dist/bin/dnssec/win32/settime.dsp delete external/bsd/bind/dist/bin/dnssec/win32/settime.mak delete external/bsd/bind/dist/bin/dnssec/win32/signzone.dsp delete external/bsd/bind/dist/bin/dnssec/win32/signzone.mak delete external/bsd/bind/dist/bin/named/Makefile.in patch external/bsd/bind/dist/bin/named/bind.keys.h patch external/bsd/bind/dist/bin/named/bind9.ver3.xsl new external/bsd/bind/dist/bin/named/bind9.ver3.xsl.h new external/bsd/bind/dist/bin/named/bind9.xsl.h patch external/bsd/bind/dist/bin/named/builtin.c patch external/bsd/bind/dist/bin/named/client.c patch external/bsd/bind/dist/bin/named/config.c patch external/bsd/bind/dist/bin/named/control.c patch external/bsd/bind/dist/bin/named/controlconf.c patch external/bsd/bind/dist/bin/named/interfacemgr.c patch external/bsd/bind/dist/bin/named/log.c patch external/bsd/bind/dist/bin/named/logconf.c patch external/bsd/bind/dist/bin/named/lwaddr.c patch external/bsd/bind/dist/bin/named/lwdgnba.c patch external/bsd/bind/dist/bin/named/lwdgrbn.c patch external/bsd/bind/dist/bin/named/lwresd.8 patch external/bsd/bind/dist/bin/named/lwresd.c patch external/bsd/bind/dist/bin/named/lwresd.docbook patch external/bsd/bind/dist/bin/named/lwresd.html patch external/bsd/bind/dist/bin/named/main.c patch external/bsd/bind/dist/bin/named/named.8 patch external/bsd/bind/dist/bin/named/named.conf.5 patch external/bsd/bind/dist/bin/named/named.conf.docbook patch external/bsd/bind/dist/bin/named/named.conf.html patch external/bsd/bind/dist/bin/named/named.docbook patch external/bsd/bind/dist/bin/named/named.html patch external/bsd/bind/dist/bin/named/query.c patch external/bsd/bind/dist/bin/named/server.c patch external/bsd/bind/dist/bin/named/statschannel.c patch external/bsd/bind/dist/bin/named/tkeyconf.c patch external/bsd/bind/dist/bin/named/tsigconf.c patch external/bsd/bind/dist/bin/named/update.c patch external/bsd/bind/dist/bin/named/xfrout.c patch external/bsd/bind/dist/bin/named/zoneconf.c patch external/bsd/bind/dist/bin/named/include/named/client.h patch external/bsd/bind/dist/bin/named/include/named/globals.h patch external/bsd/bind/dist/bin/named/include/named/main.h patch external/bsd/bind/dist/bin/named/include/named/query.h patch external/bsd/bind/dist/bin/named/include/named/server.h patch external/bsd/bind/dist/bin/named/unix/dlz_dlopen_driver.c patch external/bsd/bind/dist/bin/named/unix/os.c patch external/bsd/bind/dist/bin/named/win32/named.dsp delete external/bsd/bind/dist/bin/named/win32/named.mak delete external/bsd/bind/dist/bin/nsupdate/Makefile.in patch external/bsd/bind/dist/bin/nsupdate/nsupdate.1 patch external/bsd/bind/dist/bin/nsupdate/nsupdate.c patch external/bsd/bind/dist/bin/nsupdate/nsupdate.docbook patch external/bsd/bind/dist/bin/nsupdate/nsupdate.html patch external/bsd/bind/dist/bin/nsupdate/win32/nsupdate.dsp delete external/bsd/bind/dist/bin/nsupdate/win32/nsupdate.mak delete external/bsd/bind/dist/bin/pkcs11/openssl-0.9.8s-patch delete external/bsd/bind/dist/bin/pkcs11/openssl-0.9.8za-patch new external/bsd/bind/dist/bin/pkcs11/openssl-1.0.0f-patch delete external/bsd/bind/dist/bin/pkcs11/openssl-1.0.0m-patch new external/bsd/bind/dist/bin/pkcs11/openssl-1.0.1h-patch new external/bsd/bind/dist/bin/pkcs11/pkcs11-destroy.docbook patch external/bsd/bind/dist/bin/pkcs11/pkcs11-keygen.docbook patch external/bsd/bind/dist/bin/pkcs11/pkcs11-list.docbook patch external/bsd/bind/dist/bin/pkcs11/win32/pk11destroy.dsp delete external/bsd/bind/dist/bin/pkcs11/win32/pk11destroy.mak delete external/bsd/bind/dist/bin/pkcs11/win32/pk11keygen.dsp delete external/bsd/bind/dist/bin/pkcs11/win32/pk11keygen.mak delete external/bsd/bind/dist/bin/pkcs11/win32/pk11list.dsp delete external/bsd/bind/dist/bin/pkcs11/win32/pk11list.mak delete external/bsd/bind/dist/bin/python/Makefile.in patch external/bsd/bind/dist/bin/python/dnssec-checkds.8 patch external/bsd/bind/dist/bin/python/dnssec-checkds.docbook patch external/bsd/bind/dist/bin/python/dnssec-checkds.html patch external/bsd/bind/dist/bin/python/dnssec-checkds.py.in patch external/bsd/bind/dist/bin/python/dnssec-coverage.8 new external/bsd/bind/dist/bin/python/dnssec-coverage.docbook new external/bsd/bind/dist/bin/python/dnssec-coverage.html new external/bsd/bind/dist/bin/python/dnssec-coverage.py.in new external/bsd/bind/dist/bin/rndc/rndc.8 patch external/bsd/bind/dist/bin/rndc/rndc.c patch external/bsd/bind/dist/bin/rndc/rndc.conf.5 patch external/bsd/bind/dist/bin/rndc/rndc.conf.docbook patch external/bsd/bind/dist/bin/rndc/rndc.conf.html patch external/bsd/bind/dist/bin/rndc/rndc.docbook patch external/bsd/bind/dist/bin/rndc/rndc.html patch external/bsd/bind/dist/bin/rndc/win32/rndc.dsp delete external/bsd/bind/dist/bin/rndc/win32/rndc.mak delete external/bsd/bind/dist/bin/rndc/win32/rndcutil.dsp delete external/bsd/bind/dist/bin/tests/Makefile.in patch external/bsd/bind/dist/bin/tests/adb_test.c patch external/bsd/bind/dist/bin/tests/backtrace_test.c patch external/bsd/bind/dist/bin/tests/byaddr_test.c patch external/bsd/bind/dist/bin/tests/byname_test.c patch external/bsd/bind/dist/bin/tests/db_test.c patch external/bsd/bind/dist/bin/tests/fsaccess_test.c patch external/bsd/bind/dist/bin/tests/hash_test.c patch external/bsd/bind/dist/bin/tests/log_test.c patch external/bsd/bind/dist/bin/tests/rdata_test.c patch external/bsd/bind/dist/bin/tests/rwlock_test.c patch external/bsd/bind/dist/bin/tests/shutdown_test.c patch external/bsd/bind/dist/bin/tests/sig0_test.c patch external/bsd/bind/dist/bin/tests/sock_test.c patch external/bsd/bind/dist/bin/tests/task_test.c patch external/bsd/bind/dist/bin/tests/timer_test.c patch external/bsd/bind/dist/bin/tests/zone_test.c patch external/bsd/bind/dist/bin/tests/atomic/t_atomic.c patch external/bsd/bind/dist/bin/tests/db/t_db.c patch external/bsd/bind/dist/bin/tests/dst/Kdh.+002+18602.key delete external/bsd/bind/dist/bin/tests/dst/Kdh.+002+18602.key.in new external/bsd/bind/dist/bin/tests/dst/Kdh.+002+18602.private delete external/bsd/bind/dist/bin/tests/dst/Kdh.+002+18602.private.in new external/bsd/bind/dist/bin/tests/dst/Kdh.+002+48957.key delete external/bsd/bind/dist/bin/tests/dst/Kdh.+002+48957.key.in new external/bsd/bind/dist/bin/tests/dst/Kdh.+002+48957.private delete external/bsd/bind/dist/bin/tests/dst/Kdh.+002+48957.private.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+001+00002.key delete external/bsd/bind/dist/bin/tests/dst/Ktest.+001+00002.key.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+001+54622.key delete external/bsd/bind/dist/bin/tests/dst/Ktest.+001+54622.key.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+001+54622.private delete external/bsd/bind/dist/bin/tests/dst/Ktest.+001+54622.private.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+003+23616.key delete external/bsd/bind/dist/bin/tests/dst/Ktest.+003+23616.key.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+003+23616.private delete external/bsd/bind/dist/bin/tests/dst/Ktest.+003+23616.private.in new external/bsd/bind/dist/bin/tests/dst/Ktest.+003+49667.key delete external/bsd/bind/dist/bin/tests/dst/Ktest.+003+49667.key.in new external/bsd/bind/dist/bin/tests/dst/Makefile.in patch external/bsd/bind/dist/bin/tests/dst/dst_2_data delete external/bsd/bind/dist/bin/tests/dst/dst_2_data.in new external/bsd/bind/dist/bin/tests/dst/dst_test.c patch external/bsd/bind/dist/bin/tests/dst/gsstest.c patch external/bsd/bind/dist/bin/tests/dst/t2_data_1 delete external/bsd/bind/dist/bin/tests/dst/t2_data_1.in new external/bsd/bind/dist/bin/tests/dst/t2_data_2 delete external/bsd/bind/dist/bin/tests/dst/t2_data_2.in new external/bsd/bind/dist/bin/tests/dst/t2_dsasig delete external/bsd/bind/dist/bin/tests/dst/t2_dsasig.in new external/bsd/bind/dist/bin/tests/dst/t2_rsasig delete external/bsd/bind/dist/bin/tests/dst/t2_rsasig.in new external/bsd/bind/dist/bin/tests/dst/t_dst.c patch external/bsd/bind/dist/bin/tests/hashes/t_hashes.c patch external/bsd/bind/dist/bin/tests/master/t_master.c patch external/bsd/bind/dist/bin/tests/mem/t_mem.c patch external/bsd/bind/dist/bin/tests/names/dns_name_hash_data patch external/bsd/bind/dist/bin/tests/names/t_names.c patch external/bsd/bind/dist/bin/tests/rbt/t_rbt.c patch external/bsd/bind/dist/bin/tests/resolver/t_resolver.c patch external/bsd/bind/dist/bin/tests/sockaddr/t_sockaddr.c patch external/bsd/bind/dist/bin/tests/system/Makefile.in patch external/bsd/bind/dist/bin/tests/system/README patch external/bsd/bind/dist/bin/tests/system/ans.pl patch external/bsd/bind/dist/bin/tests/system/cleanall.sh patch external/bsd/bind/dist/bin/tests/system/conf.sh.in patch external/bsd/bind/dist/bin/tests/system/digcomp.pl patch external/bsd/bind/dist/bin/tests/system/genzone.sh patch external/bsd/bind/dist/bin/tests/system/ifconfig.sh patch external/bsd/bind/dist/bin/tests/system/run.sh patch external/bsd/bind/dist/bin/tests/system/runall.sh patch external/bsd/bind/dist/bin/tests/system/setup.sh patch external/bsd/bind/dist/bin/tests/system/start.pl patch external/bsd/bind/dist/bin/tests/system/testcrypto.sh new external/bsd/bind/dist/bin/tests/system/testsock.pl patch external/bsd/bind/dist/bin/tests/system/testsock6.pl patch external/bsd/bind/dist/bin/tests/system/acl/clean.sh patch external/bsd/bind/dist/bin/tests/system/acl/setup.sh patch external/bsd/bind/dist/bin/tests/system/acl/tests.sh patch external/bsd/bind/dist/bin/tests/system/acl/ns2/named5.conf new external/bsd/bind/dist/bin/tests/system/additional/clean.sh new external/bsd/bind/dist/bin/tests/system/additional/setup.sh new external/bsd/bind/dist/bin/tests/system/additional/tests.sh new external/bsd/bind/dist/bin/tests/system/addzone/clean.sh patch external/bsd/bind/dist/bin/tests/system/addzone/setup.sh patch external/bsd/bind/dist/bin/tests/system/addzone/tests.sh patch external/bsd/bind/dist/bin/tests/system/addzone/ns1/inlineslave.db new external/bsd/bind/dist/bin/tests/system/addzone/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/addzone/ns2/added.db patch external/bsd/bind/dist/bin/tests/system/addzone/ns2/inline.db new external/bsd/bind/dist/bin/tests/system/allow_query/tests.sh patch external/bsd/bind/dist/bin/tests/system/allow_query/ns2/named57.conf new external/bsd/bind/dist/bin/tests/system/autosign/clean.sh patch external/bsd/bind/dist/bin/tests/system/autosign/prereq.sh patch external/bsd/bind/dist/bin/tests/system/autosign/setup.sh patch external/bsd/bind/dist/bin/tests/system/autosign/tests.sh patch external/bsd/bind/dist/bin/tests/system/autosign/ns1/keygen.sh patch external/bsd/bind/dist/bin/tests/system/autosign/ns2/keygen.sh patch external/bsd/bind/dist/bin/tests/system/autosign/ns3/keygen.sh patch external/bsd/bind/dist/bin/tests/system/builtin/Makefile.in new external/bsd/bind/dist/bin/tests/system/builtin/clean.sh new external/bsd/bind/dist/bin/tests/system/builtin/gethostname.c new external/bsd/bind/dist/bin/tests/system/builtin/tests.sh patch external/bsd/bind/dist/bin/tests/system/builtin/ns2/named.conf new external/bsd/bind/dist/bin/tests/system/builtin/ns3/named.conf new external/bsd/bind/dist/bin/tests/system/cacheclean/tests.sh patch external/bsd/bind/dist/bin/tests/system/cacheclean/ns1/example.db patch external/bsd/bind/dist/bin/tests/system/case/clean.sh new external/bsd/bind/dist/bin/tests/system/case/tests.sh new external/bsd/bind/dist/bin/tests/system/case/ns1/example.db new external/bsd/bind/dist/bin/tests/system/case/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/case/ns2/named.conf new external/bsd/bind/dist/bin/tests/system/checkconf/altdb.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-also-notify.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-dnssec.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-hint.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-inline-slave.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-many.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-master-request-ixfr.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-noddns.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad-tsig.conf new external/bsd/bind/dist/bin/tests/system/checkconf/bad.conf delete external/bsd/bind/dist/bin/tests/system/checkconf/badtsig.conf delete external/bsd/bind/dist/bin/tests/system/checkconf/check-dup-records-fail.conf new external/bsd/bind/dist/bin/tests/system/checkconf/check-dup-records.db new external/bsd/bind/dist/bin/tests/system/checkconf/check-mx-cname-fail.conf new external/bsd/bind/dist/bin/tests/system/checkconf/check-mx-cname.db new external/bsd/bind/dist/bin/tests/system/checkconf/check-mx-fail.conf new external/bsd/bind/dist/bin/tests/system/checkconf/check-mx.db new external/bsd/bind/dist/bin/tests/system/checkconf/check-names-fail.conf new external/bsd/bind/dist/bin/tests/system/checkconf/check-names.db new external/bsd/bind/dist/bin/tests/system/checkconf/check-srv-cname-fail.conf new external/bsd/bind/dist/bin/tests/system/checkconf/check-srv-cname.db new external/bsd/bind/dist/bin/tests/system/checkconf/clean.sh patch external/bsd/bind/dist/bin/tests/system/checkconf/good.conf patch external/bsd/bind/dist/bin/tests/system/checkconf/hint-nofile.conf new external/bsd/bind/dist/bin/tests/system/checkconf/inline-bad.conf new external/bsd/bind/dist/bin/tests/system/checkconf/inline-good.conf new external/bsd/bind/dist/bin/tests/system/checkconf/inline-no.conf new external/bsd/bind/dist/bin/tests/system/checkconf/notify.conf new external/bsd/bind/dist/bin/tests/system/checkconf/tests.sh patch external/bsd/bind/dist/bin/tests/system/checkconf/warn-keydir.conf new external/bsd/bind/dist/bin/tests/system/checkds/clean.sh patch external/bsd/bind/dist/bin/tests/system/checkds/dig.pl new external/bsd/bind/dist/bin/tests/system/checkds/dig.sh patch external/bsd/bind/dist/bin/tests/system/checkds/missing.example.dlv.example.dlv.db patch external/bsd/bind/dist/bin/tests/system/checkds/setup.sh patch external/bsd/bind/dist/bin/tests/system/checkds/tests.sh patch external/bsd/bind/dist/bin/tests/system/checknames/clean.sh patch external/bsd/bind/dist/bin/tests/system/checknames/setup.sh patch external/bsd/bind/dist/bin/tests/system/checknames/tests.sh patch external/bsd/bind/dist/bin/tests/system/checknames/ns4/master-ignore.update.db.in new external/bsd/bind/dist/bin/tests/system/checknames/ns4/named.conf new external/bsd/bind/dist/bin/tests/system/checknames/ns4/root.hints new external/bsd/bind/dist/bin/tests/system/checkzone/tests.sh patch external/bsd/bind/dist/bin/tests/system/checkzone/zones/bad-nsec3-padded.db new external/bsd/bind/dist/bin/tests/system/checkzone/zones/bad-nsec3owner-padded.dbnew external/bsd/bind/dist/bin/tests/system/checkzone/zones/bad2.db new external/bsd/bind/dist/bin/tests/system/checkzone/zones/good-nsec3-nopadhash.db new external/bsd/bind/dist/bin/tests/system/checkzone/zones/spf.db new external/bsd/bind/dist/bin/tests/system/coverage/clean.sh new external/bsd/bind/dist/bin/tests/system/coverage/prereq.sh new external/bsd/bind/dist/bin/tests/system/coverage/setup.sh new external/bsd/bind/dist/bin/tests/system/coverage/tests.sh new external/bsd/bind/dist/bin/tests/system/coverage/01-ksk-inactive/README new external/bsd/bind/dist/bin/tests/system/coverage/01-ksk-inactive/expect new external/bsd/bind/dist/bin/tests/system/coverage/02-zsk-inactive/README new external/bsd/bind/dist/bin/tests/system/coverage/02-zsk-inactive/expect new external/bsd/bind/dist/bin/tests/system/coverage/03-ksk-unpublished/README new external/bsd/bind/dist/bin/tests/system/coverage/03-ksk-unpublished/expect new external/bsd/bind/dist/bin/tests/system/coverage/04-zsk-unpublished/README new external/bsd/bind/dist/bin/tests/system/coverage/04-zsk-unpublished/expect new external/bsd/bind/dist/bin/tests/system/coverage/05-ksk-unpub-active/README new external/bsd/bind/dist/bin/tests/system/coverage/05-ksk-unpub-active/expect new external/bsd/bind/dist/bin/tests/system/coverage/06-zsk-unpub-active/README new external/bsd/bind/dist/bin/tests/system/coverage/06-zsk-unpub-active/expect new external/bsd/bind/dist/bin/tests/system/coverage/07-ksk-ttl/README new external/bsd/bind/dist/bin/tests/system/coverage/07-ksk-ttl/expect new external/bsd/bind/dist/bin/tests/system/coverage/08-zsk-ttl/README new external/bsd/bind/dist/bin/tests/system/coverage/08-zsk-ttl/expect new external/bsd/bind/dist/bin/tests/system/dlv/clean.sh patch external/bsd/bind/dist/bin/tests/system/dlv/prereq.sh new external/bsd/bind/dist/bin/tests/system/dlv/setup.sh patch external/bsd/bind/dist/bin/tests/system/dlv/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/dlv/ns2/sign.sh patch external/bsd/bind/dist/bin/tests/system/dlv/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/dlv/ns6/sign.sh patch external/bsd/bind/dist/bin/tests/system/dlvauto/clean.sh patch external/bsd/bind/dist/bin/tests/system/dlvauto/prereq.sh new external/bsd/bind/dist/bin/tests/system/dlvauto/setup.sh patch external/bsd/bind/dist/bin/tests/system/dlvauto/tests.sh patch external/bsd/bind/dist/bin/tests/system/dlvauto/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/dlz/tests.sh patch external/bsd/bind/dist/bin/tests/system/dlzexternal/Makefile.in patch external/bsd/bind/dist/bin/tests/system/dlzexternal/clean.sh patch external/bsd/bind/dist/bin/tests/system/dlzexternal/driver.c patch external/bsd/bind/dist/bin/tests/system/dlzexternal/prereq.sh patch external/bsd/bind/dist/bin/tests/system/dlzexternal/setup.sh patch external/bsd/bind/dist/bin/tests/system/dlzexternal/tests.sh patch external/bsd/bind/dist/bin/tests/system/dns64/clean.sh patch external/bsd/bind/dist/bin/tests/system/dns64/prereq.sh new external/bsd/bind/dist/bin/tests/system/dns64/setup.sh patch external/bsd/bind/dist/bin/tests/system/dns64/tests.sh patch external/bsd/bind/dist/bin/tests/system/dns64/ns1/example.db patch external/bsd/bind/dist/bin/tests/system/dns64/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/dns64/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/dns64/ns2/rpz.db new external/bsd/bind/dist/bin/tests/system/dnssec/clean.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/prereq.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/setup.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/tests.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/ns1/root.db.in patch external/bsd/bind/dist/bin/tests/system/dnssec/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/ns2/example.db.in patch external/bsd/bind/dist/bin/tests/system/dnssec/ns2/in-addr.arpa.db.in new external/bsd/bind/dist/bin/tests/system/dnssec/ns2/insecure.secure.example.db patch external/bsd/bind/dist/bin/tests/system/dnssec/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/dnssec/ns2/sign.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/ns3/named.conf patch external/bsd/bind/dist/bin/tests/system/dnssec/ns3/publish-inactive.example.db.in new external/bsd/bind/dist/bin/tests/system/dnssec/ns3/secure.example.db.in patch external/bsd/bind/dist/bin/tests/system/dnssec/ns3/siginterval.example.db.in new external/bsd/bind/dist/bin/tests/system/dnssec/ns3/siginterval1.conf new external/bsd/bind/dist/bin/tests/system/dnssec/ns3/siginterval2.conf new external/bsd/bind/dist/bin/tests/system/dnssec/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/dnssec/ns4/named4.conf new external/bsd/bind/dist/bin/tests/system/dnssec/ns6/named.args new external/bsd/bind/dist/bin/tests/system/dnssec/ns6/named.conf patch external/bsd/bind/dist/bin/tests/system/dnssec/ns6/optout-tld.db.in new external/bsd/bind/dist/bin/tests/system/dnssec/ns6/sign.sh new external/bsd/bind/dist/bin/tests/system/dnssec/ns7/named.conf patch external/bsd/bind/dist/bin/tests/system/dnssec/ns7/sign.sh new external/bsd/bind/dist/bin/tests/system/dnssec/ns7/split-rrsig.db.in new external/bsd/bind/dist/bin/tests/system/dsdigest/prereq.sh new external/bsd/bind/dist/bin/tests/system/ecdsa/clean.sh patch external/bsd/bind/dist/bin/tests/system/ecdsa/prereq.sh new external/bsd/bind/dist/bin/tests/system/ecdsa/prereq.sh.in delete external/bsd/bind/dist/bin/tests/system/ecdsa/setup.sh patch external/bsd/bind/dist/bin/tests/system/ecdsa/tests.sh patch external/bsd/bind/dist/bin/tests/system/ecdsa/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/emptyzones/clean.sh new external/bsd/bind/dist/bin/tests/system/emptyzones/setup.sh new external/bsd/bind/dist/bin/tests/system/emptyzones/tests.sh new external/bsd/bind/dist/bin/tests/system/emptyzones/ns1/empty.db new external/bsd/bind/dist/bin/tests/system/emptyzones/ns1/named1.conf new external/bsd/bind/dist/bin/tests/system/emptyzones/ns1/named2.conf new external/bsd/bind/dist/bin/tests/system/emptyzones/ns1/rfc1918.zones new external/bsd/bind/dist/bin/tests/system/emptyzones/ns1/root.hint new external/bsd/bind/dist/bin/tests/system/filter-aaaa/clean.sh patch external/bsd/bind/dist/bin/tests/system/filter-aaaa/prereq.sh patch external/bsd/bind/dist/bin/tests/system/filter-aaaa/setup.sh patch external/bsd/bind/dist/bin/tests/system/filter-aaaa/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/filter-aaaa/ns1/signed.db.presigned new external/bsd/bind/dist/bin/tests/system/filter-aaaa/ns4/sign.sh patch external/bsd/bind/dist/bin/tests/system/filter-aaaa/ns4/signed.db.presigned new external/bsd/bind/dist/bin/tests/system/filter-aaaa/ns4/unsigned.db patch external/bsd/bind/dist/bin/tests/system/formerr/clean.sh new external/bsd/bind/dist/bin/tests/system/formerr/formerr.pl new external/bsd/bind/dist/bin/tests/system/formerr/nametoolong new external/bsd/bind/dist/bin/tests/system/formerr/noquestions new external/bsd/bind/dist/bin/tests/system/formerr/tests.sh new external/bsd/bind/dist/bin/tests/system/formerr/twoquestions new external/bsd/bind/dist/bin/tests/system/formerr/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/formerr/ns1/root.db new external/bsd/bind/dist/bin/tests/system/forward/tests.sh patch external/bsd/bind/dist/bin/tests/system/forward/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/forward/ns4/named.conf patch external/bsd/bind/dist/bin/tests/system/glue/tests.sh patch external/bsd/bind/dist/bin/tests/system/gost/clean.sh patch external/bsd/bind/dist/bin/tests/system/gost/prereq.sh new external/bsd/bind/dist/bin/tests/system/gost/prereq.sh.in delete external/bsd/bind/dist/bin/tests/system/gost/setup.sh patch external/bsd/bind/dist/bin/tests/system/gost/tests.sh patch external/bsd/bind/dist/bin/tests/system/gost/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/inline/checkdsa.sh.in new external/bsd/bind/dist/bin/tests/system/inline/clean.sh patch external/bsd/bind/dist/bin/tests/system/inline/prereq.sh new external/bsd/bind/dist/bin/tests/system/inline/setup.sh patch external/bsd/bind/dist/bin/tests/system/inline/tests.sh patch external/bsd/bind/dist/bin/tests/system/inline/ns1/root.db.in patch external/bsd/bind/dist/bin/tests/system/inline/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/inline/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/inline/ns3/master3.db.in patch external/bsd/bind/dist/bin/tests/system/inline/ns3/master4.db.in new external/bsd/bind/dist/bin/tests/system/inline/ns3/named.conf patch external/bsd/bind/dist/bin/tests/system/inline/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/ixfr/clean.sh patch external/bsd/bind/dist/bin/tests/system/ixfr/prereq.sh patch external/bsd/bind/dist/bin/tests/system/ixfr/setup.sh patch external/bsd/bind/dist/bin/tests/system/ixfr/tests.sh patch external/bsd/bind/dist/bin/tests/system/ixfr/ns3/named.conf patch external/bsd/bind/dist/bin/tests/system/logfileconfig/setup.sh patch external/bsd/bind/dist/bin/tests/system/logfileconfig/tests.sh patch external/bsd/bind/dist/bin/tests/system/lwresd/clean.sh patch external/bsd/bind/dist/bin/tests/system/lwresd/lwtest.c patch external/bsd/bind/dist/bin/tests/system/lwresd/tests.sh patch external/bsd/bind/dist/bin/tests/system/masterfile/knowngood.dig.out patch external/bsd/bind/dist/bin/tests/system/masterfile/ns1/include.db patch external/bsd/bind/dist/bin/tests/system/masterformat/clean.sh patch external/bsd/bind/dist/bin/tests/system/masterformat/prereq.sh new external/bsd/bind/dist/bin/tests/system/masterformat/setup.sh patch external/bsd/bind/dist/bin/tests/system/masterformat/tests.sh patch external/bsd/bind/dist/bin/tests/system/masterformat/ns1/example.db patch external/bsd/bind/dist/bin/tests/system/metadata/clean.sh patch external/bsd/bind/dist/bin/tests/system/metadata/prereq.sh patch external/bsd/bind/dist/bin/tests/system/metadata/setup.sh patch external/bsd/bind/dist/bin/tests/system/metadata/tests.sh patch external/bsd/bind/dist/bin/tests/system/nslookup/clean.sh new external/bsd/bind/dist/bin/tests/system/nslookup/setup.sh new external/bsd/bind/dist/bin/tests/system/nslookup/tests.sh new external/bsd/bind/dist/bin/tests/system/nslookup/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/nsupdate/clean.sh patch external/bsd/bind/dist/bin/tests/system/nsupdate/prereq.sh new external/bsd/bind/dist/bin/tests/system/nsupdate/setup.sh patch external/bsd/bind/dist/bin/tests/system/nsupdate/tests.sh patch external/bsd/bind/dist/bin/tests/system/nsupdate/update_test.pl patch external/bsd/bind/dist/bin/tests/system/nsupdate/ns1/named.conf patch external/bsd/bind/dist/bin/tests/system/nsupdate/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/pending/clean.sh patch external/bsd/bind/dist/bin/tests/system/pending/prereq.sh patch external/bsd/bind/dist/bin/tests/system/pending/setup.sh patch external/bsd/bind/dist/bin/tests/system/pending/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/pending/ns2/sign.sh patch external/bsd/bind/dist/bin/tests/system/pkcs11/clean.sh patch external/bsd/bind/dist/bin/tests/system/pkcs11/prereq.sh patch external/bsd/bind/dist/bin/tests/system/pkcs11/setup.sh patch external/bsd/bind/dist/bin/tests/system/pkcs11/tests.sh patch external/bsd/bind/dist/bin/tests/system/redirect/clean.sh patch external/bsd/bind/dist/bin/tests/system/redirect/prereq.sh new external/bsd/bind/dist/bin/tests/system/redirect/setup.sh patch external/bsd/bind/dist/bin/tests/system/redirect/tests.sh patch external/bsd/bind/dist/bin/tests/system/redirect/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/redirect/ns2/example.db.in new external/bsd/bind/dist/bin/tests/system/redirect/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/redirect/ns2/redirect.db delete external/bsd/bind/dist/bin/tests/system/redirect/ns2/redirect.db.in new external/bsd/bind/dist/bin/tests/system/resolver/clean.sh patch external/bsd/bind/dist/bin/tests/system/resolver/prereq.sh patch external/bsd/bind/dist/bin/tests/system/resolver/setup.sh patch external/bsd/bind/dist/bin/tests/system/resolver/tests.sh patch external/bsd/bind/dist/bin/tests/system/resolver/ans2/ans.pl patch external/bsd/bind/dist/bin/tests/system/resolver/ans3/ans.pl patch external/bsd/bind/dist/bin/tests/system/resolver/ns1/named.conf patch external/bsd/bind/dist/bin/tests/system/resolver/ns4/broken.db new external/bsd/bind/dist/bin/tests/system/resolver/ns4/named.conf patch external/bsd/bind/dist/bin/tests/system/resolver/ns6/broken.db new external/bsd/bind/dist/bin/tests/system/resolver/ns6/keygen.sh patch external/bsd/bind/dist/bin/tests/system/resolver/ns6/named.conf patch external/bsd/bind/dist/bin/tests/system/resolver/ns7/named.conf delete external/bsd/bind/dist/bin/tests/system/resolver/ns7/named1.conf new external/bsd/bind/dist/bin/tests/system/resolver/ns7/named2.conf new external/bsd/bind/dist/bin/tests/system/rndc/clean.sh patch external/bsd/bind/dist/bin/tests/system/rndc/setup.sh patch external/bsd/bind/dist/bin/tests/system/rndc/tests.sh patch external/bsd/bind/dist/bin/tests/system/rndc/ns3/named.conf new external/bsd/bind/dist/bin/tests/system/rpz/Makefile.in patch external/bsd/bind/dist/bin/tests/system/rpz/clean.sh patch external/bsd/bind/dist/bin/tests/system/rpz/prereq.sh new external/bsd/bind/dist/bin/tests/system/rpz/qperf.sh patch external/bsd/bind/dist/bin/tests/system/rpz/rpz.c patch external/bsd/bind/dist/bin/tests/system/rpz/setup.sh patch external/bsd/bind/dist/bin/tests/system/rpz/test1 patch external/bsd/bind/dist/bin/tests/system/rpz/test2 patch external/bsd/bind/dist/bin/tests/system/rpz/test3 patch external/bsd/bind/dist/bin/tests/system/rpz/test4 patch external/bsd/bind/dist/bin/tests/system/rpz/test4a new external/bsd/bind/dist/bin/tests/system/rpz/test5 patch external/bsd/bind/dist/bin/tests/system/rpz/tests.sh patch external/bsd/bind/dist/bin/tests/system/rpz/ns1/named.conf patch external/bsd/bind/dist/bin/tests/system/rpz/ns1/root.db patch external/bsd/bind/dist/bin/tests/system/rpz/ns2/base-tld2s.db patch external/bsd/bind/dist/bin/tests/system/rpz/ns2/bl.tld2.db.in new external/bsd/bind/dist/bin/tests/system/rpz/ns2/blv2.tld2.db.in new external/bsd/bind/dist/bin/tests/system/rpz/ns2/blv3.tld2.db.in new external/bsd/bind/dist/bin/tests/system/rpz/ns2/hints patch external/bsd/bind/dist/bin/tests/system/rpz/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/rpz/ns2/tld2.db patch external/bsd/bind/dist/bin/tests/system/rpz/ns3/base.db patch external/bsd/bind/dist/bin/tests/system/rpz/ns3/crash1 patch external/bsd/bind/dist/bin/tests/system/rpz/ns3/crash2 patch external/bsd/bind/dist/bin/tests/system/rpz/ns3/hints patch external/bsd/bind/dist/bin/tests/system/rpz/ns3/named.conf patch external/bsd/bind/dist/bin/tests/system/rpz/ns4/hints patch external/bsd/bind/dist/bin/tests/system/rpz/ns4/named.conf patch external/bsd/bind/dist/bin/tests/system/rpz/ns4/tld4.db patch external/bsd/bind/dist/bin/tests/system/rpz/ns5/hints patch external/bsd/bind/dist/bin/tests/system/rpz/ns5/named.args new external/bsd/bind/dist/bin/tests/system/rpz/ns5/named.conf patch external/bsd/bind/dist/bin/tests/system/rpz/ns5/tld5.db new external/bsd/bind/dist/bin/tests/system/rpz/ns6/hints new external/bsd/bind/dist/bin/tests/system/rpz/ns6/named.conf new external/bsd/bind/dist/bin/tests/system/rrl/Makefile.in new external/bsd/bind/dist/bin/tests/system/rrl/clean.sh new external/bsd/bind/dist/bin/tests/system/rrl/prereq.sh new external/bsd/bind/dist/bin/tests/system/rrl/rrl.c new external/bsd/bind/dist/bin/tests/system/rrl/setup.sh new external/bsd/bind/dist/bin/tests/system/rrl/tests.sh new external/bsd/bind/dist/bin/tests/system/rrl/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/rrl/ns1/root.db new external/bsd/bind/dist/bin/tests/system/rrl/ns2/hints new external/bsd/bind/dist/bin/tests/system/rrl/ns2/named.conf new external/bsd/bind/dist/bin/tests/system/rrl/ns2/tld2.db new external/bsd/bind/dist/bin/tests/system/rrl/ns3/hints new external/bsd/bind/dist/bin/tests/system/rrl/ns3/named.conf new external/bsd/bind/dist/bin/tests/system/rrl/ns3/tld3.db new external/bsd/bind/dist/bin/tests/system/rrsetorder/tests.sh patch external/bsd/bind/dist/bin/tests/system/rrsetorder/ns1/named.conf patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/bigkey.c patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/clean.sh patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/prereq.sh patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/setup.sh patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/ns1/sign.sh patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/ns2/Xexample.+005+05896.private patch external/bsd/bind/dist/bin/tests/system/rsabigexponent/ns2/sign.sh patch external/bsd/bind/dist/bin/tests/system/smartsign/clean.sh patch external/bsd/bind/dist/bin/tests/system/smartsign/prereq.sh patch external/bsd/bind/dist/bin/tests/system/smartsign/setup.sh patch external/bsd/bind/dist/bin/tests/system/smartsign/tests.sh patch external/bsd/bind/dist/bin/tests/system/spf/clean.sh new external/bsd/bind/dist/bin/tests/system/spf/tests.sh new external/bsd/bind/dist/bin/tests/system/spf/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/spf/ns1/spf.db new external/bsd/bind/dist/bin/tests/system/staticstub/clean.sh patch external/bsd/bind/dist/bin/tests/system/staticstub/prereq.sh new external/bsd/bind/dist/bin/tests/system/staticstub/setup.sh patch external/bsd/bind/dist/bin/tests/system/staticstub/tests.sh patch external/bsd/bind/dist/bin/tests/system/staticstub/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/staticstub/ns4/sign.sh patch external/bsd/bind/dist/bin/tests/system/stress/tests.sh patch external/bsd/bind/dist/bin/tests/system/tkey/clean.sh patch external/bsd/bind/dist/bin/tests/system/tkey/keycreate.c patch external/bsd/bind/dist/bin/tests/system/tkey/keydelete.c patch external/bsd/bind/dist/bin/tests/system/tkey/prereq.sh patch external/bsd/bind/dist/bin/tests/system/tkey/setup.sh patch external/bsd/bind/dist/bin/tests/system/tkey/tests.sh patch external/bsd/bind/dist/bin/tests/system/tkey/ns1/example.db new external/bsd/bind/dist/bin/tests/system/tkey/ns1/named.conf.in patch external/bsd/bind/dist/bin/tests/system/tkey/ns1/setup.sh patch external/bsd/bind/dist/bin/tests/system/tsig/clean.sh patch external/bsd/bind/dist/bin/tests/system/tsig/tests.sh patch external/bsd/bind/dist/bin/tests/system/tsig/ns1/example.db patch external/bsd/bind/dist/bin/tests/system/tsiggss/clean.sh patch external/bsd/bind/dist/bin/tests/system/tsiggss/prereq.sh patch external/bsd/bind/dist/bin/tests/system/tsiggss/setup.sh patch external/bsd/bind/dist/bin/tests/system/tsiggss/tests.sh patch external/bsd/bind/dist/bin/tests/system/unknown/clean.sh patch external/bsd/bind/dist/bin/tests/system/unknown/large.out patch external/bsd/bind/dist/bin/tests/system/unknown/prereq.sh new external/bsd/bind/dist/bin/tests/system/unknown/setup.sh patch external/bsd/bind/dist/bin/tests/system/unknown/tests.sh patch external/bsd/bind/dist/bin/tests/system/unknown/ns1/example-in.db patch external/bsd/bind/dist/bin/tests/system/unknown/ns3/sign.sh patch external/bsd/bind/dist/bin/tests/system/unknown/zones/nan.bad new external/bsd/bind/dist/bin/tests/system/upforwd/prereq.sh patch external/bsd/bind/dist/bin/tests/system/upforwd/tests.sh patch external/bsd/bind/dist/bin/tests/system/upforwd/ans4/ans.pl patch external/bsd/bind/dist/bin/tests/system/verify/clean.sh patch external/bsd/bind/dist/bin/tests/system/verify/prereq.sh new external/bsd/bind/dist/bin/tests/system/verify/setup.sh patch external/bsd/bind/dist/bin/tests/system/verify/tests.sh patch external/bsd/bind/dist/bin/tests/system/verify/zones/genzones.sh patch external/bsd/bind/dist/bin/tests/system/wildcard/clean.sh new external/bsd/bind/dist/bin/tests/system/wildcard/prereq.sh new external/bsd/bind/dist/bin/tests/system/wildcard/setup.sh new external/bsd/bind/dist/bin/tests/system/wildcard/tests.sh new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/dlv.db.in new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/nsec.db.in new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/nsec3.db.in new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/private.nsec.db.in new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/private.nsec3.db.innew external/bsd/bind/dist/bin/tests/system/wildcard/ns1/root.db.in new external/bsd/bind/dist/bin/tests/system/wildcard/ns1/sign.sh new external/bsd/bind/dist/bin/tests/system/wildcard/ns2/hints new external/bsd/bind/dist/bin/tests/system/wildcard/ns2/named.conf new external/bsd/bind/dist/bin/tests/system/wildcard/ns3/hints new external/bsd/bind/dist/bin/tests/system/wildcard/ns3/named.conf new external/bsd/bind/dist/bin/tests/system/wildcard/ns4/named.conf new external/bsd/bind/dist/bin/tests/system/wildcard/ns5/hints new external/bsd/bind/dist/bin/tests/system/wildcard/ns5/named.conf new external/bsd/bind/dist/bin/tests/system/xfer/clean.sh patch external/bsd/bind/dist/bin/tests/system/xfer/dig1.good patch external/bsd/bind/dist/bin/tests/system/xfer/dig2.good patch external/bsd/bind/dist/bin/tests/system/xfer/prereq.sh patch external/bsd/bind/dist/bin/tests/system/xfer/setup.sh patch external/bsd/bind/dist/bin/tests/system/xfer/tests.sh patch external/bsd/bind/dist/bin/tests/system/xfer/ns2/named.conf patch external/bsd/bind/dist/bin/tests/system/xfer/ns2/slave.db.in new external/bsd/bind/dist/bin/tests/system/zero/clean.sh new external/bsd/bind/dist/bin/tests/system/zero/setup.sh new external/bsd/bind/dist/bin/tests/system/zero/tests.sh new external/bsd/bind/dist/bin/tests/system/zero/ns1/named.conf new external/bsd/bind/dist/bin/tests/system/zero/ns1/root.db new external/bsd/bind/dist/bin/tests/system/zero/ns2/named.conf new external/bsd/bind/dist/bin/tests/system/zero/ns3/named.conf new external/bsd/bind/dist/bin/tests/system/zero/ns3/root.hint new external/bsd/bind/dist/bin/tests/system/zero/ns4/named.conf new external/bsd/bind/dist/bin/tests/system/zonechecks/prereq.sh new external/bsd/bind/dist/bin/tests/system/zonechecks/setup.sh new external/bsd/bind/dist/bin/tests/system/zonechecks/tests.sh patch external/bsd/bind/dist/bin/tests/system/zonechecks/ns1/named.conf new external/bsd/bind/dist/bin/tests/tasks/t_tasks.c patch external/bsd/bind/dist/bin/tests/timers/t_timers.c patch external/bsd/bind/dist/bin/tools/arpaname.1 patch external/bsd/bind/dist/bin/tools/arpaname.docbook patch external/bsd/bind/dist/bin/tools/arpaname.html patch external/bsd/bind/dist/bin/tools/genrandom.8 patch external/bsd/bind/dist/bin/tools/genrandom.c patch external/bsd/bind/dist/bin/tools/genrandom.docbook patch external/bsd/bind/dist/bin/tools/genrandom.html patch external/bsd/bind/dist/bin/tools/isc-hmac-fixup.8 patch external/bsd/bind/dist/bin/tools/isc-hmac-fixup.c patch external/bsd/bind/dist/bin/tools/isc-hmac-fixup.docbook patch external/bsd/bind/dist/bin/tools/isc-hmac-fixup.html patch external/bsd/bind/dist/bin/tools/named-journalprint.8 patch external/bsd/bind/dist/bin/tools/named-journalprint.docbook patch external/bsd/bind/dist/bin/tools/named-journalprint.html patch external/bsd/bind/dist/bin/tools/nsec3hash.8 patch external/bsd/bind/dist/bin/tools/nsec3hash.c patch external/bsd/bind/dist/bin/tools/nsec3hash.docbook patch external/bsd/bind/dist/bin/tools/nsec3hash.html patch external/bsd/bind/dist/bin/tools/win32/arpaname.dsp delete external/bsd/bind/dist/bin/tools/win32/arpaname.mak delete external/bsd/bind/dist/bin/tools/win32/genrandom.dsp delete external/bsd/bind/dist/bin/tools/win32/genrandom.mak delete external/bsd/bind/dist/bin/tools/win32/ischmacfixup.dsp delete external/bsd/bind/dist/bin/tools/win32/ischmacfixup.mak delete external/bsd/bind/dist/bin/tools/win32/journalprint.dsp delete external/bsd/bind/dist/bin/tools/win32/journalprint.mak delete external/bsd/bind/dist/bin/tools/win32/nsec3hash.dsp delete external/bsd/bind/dist/bin/tools/win32/nsec3hash.mak delete external/bsd/bind/dist/bin/win32/BINDInstall/BINDInstall.dsp delete external/bsd/bind/dist/bin/win32/BINDInstall/BINDInstall.mak delete external/bsd/bind/dist/contrib/README new external/bsd/bind/dist/contrib/check5011.pl new external/bsd/bind/dist/contrib/dane/mkdane.sh new external/bsd/bind/dist/contrib/dane/tlsa6698.pem new external/bsd/bind/dist/contrib/dbus/GetForwarders delete external/bsd/bind/dist/contrib/dbus/INSTALL delete external/bsd/bind/dist/contrib/dbus/Makefile.9.3.2b1 delete external/bsd/bind/dist/contrib/dbus/Makefile.9.3.3rc2 delete external/bsd/bind/dist/contrib/dbus/README.DBUS delete external/bsd/bind/dist/contrib/dbus/SetForwarders delete external/bsd/bind/dist/contrib/dbus/bind-9.3.2b1-dbus.patch delete external/bsd/bind/dist/contrib/dbus/bind-9.3.3rc2-dbus.patch delete external/bsd/bind/dist/contrib/dbus/dbus_mgr.c delete external/bsd/bind/dist/contrib/dbus/dbus_mgr.h delete external/bsd/bind/dist/contrib/dbus/dbus_service.c delete external/bsd/bind/dist/contrib/dbus/dbus_service.h delete external/bsd/bind/dist/contrib/dbus/named-dbus-system.conf delete external/bsd/bind/dist/contrib/dbus/named-dbus.service delete external/bsd/bind/dist/contrib/dlz/config.dlz.in patch external/bsd/bind/dist/contrib/dlz/drivers/dlz_filesystem_driver.c patch external/bsd/bind/dist/contrib/dlz/drivers/dlz_ldap_driver.c patch external/bsd/bind/dist/contrib/dlz/drivers/dlz_mysql_driver.c patch external/bsd/bind/dist/contrib/dlz/drivers/dlz_odbc_driver.c patch external/bsd/bind/dist/contrib/dlz/drivers/dlz_postgres_driver.c patch external/bsd/bind/dist/contrib/dlz/drivers/sdlz_helper.c patch external/bsd/bind/dist/contrib/dlz/example/Makefile patch external/bsd/bind/dist/contrib/dlz/example/README patch external/bsd/bind/dist/contrib/dlz/example/dlz_example.c patch external/bsd/bind/dist/contrib/dlz/example/dlz_minimal.h delete external/bsd/bind/dist/contrib/dlz/modules/dlz_minimal.h new external/bsd/bind/dist/contrib/dlz/modules/bdbhpt/Makefile new external/bsd/bind/dist/contrib/dlz/modules/bdbhpt/README.md new external/bsd/bind/dist/contrib/dlz/modules/bdbhpt/dlz_bdbhpt_dynamic.c new external/bsd/bind/dist/contrib/dlz/modules/bdbhpt/testing/bdbhpt-populate.pl new external/bsd/bind/dist/contrib/dlz/modules/bdbhpt/testing/dns-data.txt new external/bsd/bind/dist/contrib/named-bootconf/named-bootconf.sh patch external/bsd/bind/dist/contrib/nslint-2.1a3/strerror.c patch external/bsd/bind/dist/contrib/perftcpdns/Makefile.in new external/bsd/bind/dist/contrib/perftcpdns/configure new external/bsd/bind/dist/contrib/perftcpdns/configure.in new external/bsd/bind/dist/contrib/perftcpdns/perftcpdns.c new external/bsd/bind/dist/contrib/query-loc-0.4.0/loc.c patch external/bsd/bind/dist/contrib/query-loc-0.4.0/loc_ntoa.c patch external/bsd/bind/dist/contrib/queryperf/queryperf.c patch external/bsd/bind/dist/contrib/sdb/bdb/bdb.c patch external/bsd/bind/dist/contrib/sdb/dir/dirdb.c patch external/bsd/bind/dist/contrib/sdb/ldap/ldapdb.c patch external/bsd/bind/dist/contrib/sdb/pgsql/pgsqldb.c patch external/bsd/bind/dist/contrib/sdb/pgsql/zonetodb.c patch external/bsd/bind/dist/contrib/sdb/sqlite/sqlitedb.c patch external/bsd/bind/dist/contrib/sdb/sqlite/zone2sqlite.c patch external/bsd/bind/dist/contrib/sdb/tcl/tcldb.c patch external/bsd/bind/dist/contrib/sdb/time/timedb.c patch external/bsd/bind/dist/contrib/zkt/Makefile.in patch external/bsd/bind/dist/contrib/zkt/dki.c patch external/bsd/bind/dist/contrib/zkt/tags new external/bsd/bind/dist/contrib/zkt/zkt-soaserial.c patch external/bsd/bind/dist/doc/arm/Bv9ARM-book.xml patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch01.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch02.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch03.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch04.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch05.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch06.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch07.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch08.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch09.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.ch10.html patch external/bsd/bind/dist/doc/arm/Bv9ARM.html patch external/bsd/bind/dist/doc/arm/Makefile.in patch external/bsd/bind/dist/doc/arm/libdns.xml patch external/bsd/bind/dist/doc/arm/man.arpaname.html patch external/bsd/bind/dist/doc/arm/man.ddns-confgen.html patch external/bsd/bind/dist/doc/arm/man.dig.html patch external/bsd/bind/dist/doc/arm/man.dnssec-checkds.html new external/bsd/bind/dist/doc/arm/man.dnssec-coverage.html new external/bsd/bind/dist/doc/arm/man.dnssec-dsfromkey.html patch external/bsd/bind/dist/doc/arm/man.dnssec-keyfromlabel.html patch external/bsd/bind/dist/doc/arm/man.dnssec-keygen.html patch external/bsd/bind/dist/doc/arm/man.dnssec-revoke.html patch external/bsd/bind/dist/doc/arm/man.dnssec-settime.html patch external/bsd/bind/dist/doc/arm/man.dnssec-signzone.html patch external/bsd/bind/dist/doc/arm/man.dnssec-verify.html patch external/bsd/bind/dist/doc/arm/man.genrandom.html patch external/bsd/bind/dist/doc/arm/man.host.html patch external/bsd/bind/dist/doc/arm/man.isc-hmac-fixup.html patch external/bsd/bind/dist/doc/arm/man.named-checkconf.html patch external/bsd/bind/dist/doc/arm/man.named-checkzone.html patch external/bsd/bind/dist/doc/arm/man.named-journalprint.html patch external/bsd/bind/dist/doc/arm/man.named.html patch external/bsd/bind/dist/doc/arm/man.nsec3hash.html patch external/bsd/bind/dist/doc/arm/man.nsupdate.html patch external/bsd/bind/dist/doc/arm/man.rndc-confgen.html patch external/bsd/bind/dist/doc/arm/man.rndc.conf.html patch external/bsd/bind/dist/doc/arm/man.rndc.html patch external/bsd/bind/dist/doc/arm/pkcs11.xml patch external/bsd/bind/dist/doc/misc/options patch external/bsd/bind/dist/doc/xsl/isc-docbook-chunk.xsl.in patch external/bsd/bind/dist/doc/xsl/isc-docbook-html.xsl.in patch external/bsd/bind/dist/lib/Atffile patch external/bsd/bind/dist/lib/Makefile.in patch external/bsd/bind/dist/lib/bind9/Makefile.in patch external/bsd/bind/dist/lib/bind9/api patch external/bsd/bind/dist/lib/bind9/check.c patch external/bsd/bind/dist/lib/bind9/getaddresses.c patch external/bsd/bind/dist/lib/bind9/win32/libbind9.dsp delete external/bsd/bind/dist/lib/bind9/win32/libbind9.mak delete external/bsd/bind/dist/lib/dns/Makefile.in patch external/bsd/bind/dist/lib/dns/acache.c patch external/bsd/bind/dist/lib/dns/acl.c patch external/bsd/bind/dist/lib/dns/adb.c patch external/bsd/bind/dist/lib/dns/api patch external/bsd/bind/dist/lib/dns/byaddr.c patch external/bsd/bind/dist/lib/dns/cache.c patch external/bsd/bind/dist/lib/dns/client.c patch external/bsd/bind/dist/lib/dns/db.c patch external/bsd/bind/dist/lib/dns/dbtable.c patch external/bsd/bind/dist/lib/dns/diff.c patch external/bsd/bind/dist/lib/dns/dispatch.c patch external/bsd/bind/dist/lib/dns/dlz.c patch external/bsd/bind/dist/lib/dns/dns64.c patch external/bsd/bind/dist/lib/dns/dnssec.c patch external/bsd/bind/dist/lib/dns/dst_api.c patch external/bsd/bind/dist/lib/dns/dst_internal.h patch external/bsd/bind/dist/lib/dns/dst_openssl.h patch external/bsd/bind/dist/lib/dns/dst_parse.c patch external/bsd/bind/dist/lib/dns/dst_result.c patch external/bsd/bind/dist/lib/dns/ecdb.c patch external/bsd/bind/dist/lib/dns/gen-win32.h patch external/bsd/bind/dist/lib/dns/gen.c patch external/bsd/bind/dist/lib/dns/gssapi_link.c patch external/bsd/bind/dist/lib/dns/gssapictx.c patch external/bsd/bind/dist/lib/dns/hmac_link.c patch external/bsd/bind/dist/lib/dns/iptable.c patch external/bsd/bind/dist/lib/dns/journal.c patch external/bsd/bind/dist/lib/dns/keydata.c patch external/bsd/bind/dist/lib/dns/keytable.c patch external/bsd/bind/dist/lib/dns/log.c patch external/bsd/bind/dist/lib/dns/lookup.c patch external/bsd/bind/dist/lib/dns/master.c patch external/bsd/bind/dist/lib/dns/masterdump.c patch external/bsd/bind/dist/lib/dns/message.c patch external/bsd/bind/dist/lib/dns/name.c patch external/bsd/bind/dist/lib/dns/ncache.c patch external/bsd/bind/dist/lib/dns/nsec.c patch external/bsd/bind/dist/lib/dns/nsec3.c patch external/bsd/bind/dist/lib/dns/openssl_link.c patch external/bsd/bind/dist/lib/dns/openssldh_link.c patch external/bsd/bind/dist/lib/dns/openssldsa_link.c patch external/bsd/bind/dist/lib/dns/opensslecdsa_link.c patch external/bsd/bind/dist/lib/dns/opensslgost_link.c patch external/bsd/bind/dist/lib/dns/opensslrsa_link.c patch external/bsd/bind/dist/lib/dns/peer.c patch external/bsd/bind/dist/lib/dns/portlist.c patch external/bsd/bind/dist/lib/dns/private.c patch external/bsd/bind/dist/lib/dns/rbt.c patch external/bsd/bind/dist/lib/dns/rbtdb.c patch external/bsd/bind/dist/lib/dns/rcode.c patch external/bsd/bind/dist/lib/dns/rdata.c patch external/bsd/bind/dist/lib/dns/rdataslab.c patch external/bsd/bind/dist/lib/dns/request.c patch external/bsd/bind/dist/lib/dns/resolver.c patch external/bsd/bind/dist/lib/dns/result.c patch external/bsd/bind/dist/lib/dns/rootns.c patch external/bsd/bind/dist/lib/dns/rpz.c patch external/bsd/bind/dist/lib/dns/rrl.c new external/bsd/bind/dist/lib/dns/sdb.c patch external/bsd/bind/dist/lib/dns/sdlz.c patch external/bsd/bind/dist/lib/dns/spnego.c patch external/bsd/bind/dist/lib/dns/spnego_asn1.c patch external/bsd/bind/dist/lib/dns/ssu.c patch external/bsd/bind/dist/lib/dns/ssu_external.c patch external/bsd/bind/dist/lib/dns/time.c patch external/bsd/bind/dist/lib/dns/tkey.c patch external/bsd/bind/dist/lib/dns/tsig.c patch external/bsd/bind/dist/lib/dns/ttl.c patch external/bsd/bind/dist/lib/dns/update.c patch external/bsd/bind/dist/lib/dns/validator.c patch external/bsd/bind/dist/lib/dns/view.c patch external/bsd/bind/dist/lib/dns/xfrin.c patch external/bsd/bind/dist/lib/dns/zone.c patch external/bsd/bind/dist/lib/dns/include/dns/Makefile.in patch external/bsd/bind/dist/lib/dns/include/dns/acache.h patch external/bsd/bind/dist/lib/dns/include/dns/adb.h patch external/bsd/bind/dist/lib/dns/include/dns/cache.h patch external/bsd/bind/dist/lib/dns/include/dns/client.h patch external/bsd/bind/dist/lib/dns/include/dns/db.h patch external/bsd/bind/dist/lib/dns/include/dns/dispatch.h patch external/bsd/bind/dist/lib/dns/include/dns/dns64.h patch external/bsd/bind/dist/lib/dns/include/dns/dnssec.h patch external/bsd/bind/dist/lib/dns/include/dns/log.h patch external/bsd/bind/dist/lib/dns/include/dns/master.h patch external/bsd/bind/dist/lib/dns/include/dns/masterdump.h patch external/bsd/bind/dist/lib/dns/include/dns/message.h patch external/bsd/bind/dist/lib/dns/include/dns/name.h patch external/bsd/bind/dist/lib/dns/include/dns/ncache.h patch external/bsd/bind/dist/lib/dns/include/dns/nsec.h patch external/bsd/bind/dist/lib/dns/include/dns/nsec3.h patch external/bsd/bind/dist/lib/dns/include/dns/rbt.h patch external/bsd/bind/dist/lib/dns/include/dns/rdata.h patch external/bsd/bind/dist/lib/dns/include/dns/rdataset.h patch external/bsd/bind/dist/lib/dns/include/dns/resolver.h patch external/bsd/bind/dist/lib/dns/include/dns/result.h patch external/bsd/bind/dist/lib/dns/include/dns/rpz.h patch external/bsd/bind/dist/lib/dns/include/dns/rrl.h new external/bsd/bind/dist/lib/dns/include/dns/types.h patch external/bsd/bind/dist/lib/dns/include/dns/validator.h patch external/bsd/bind/dist/lib/dns/include/dns/view.h patch external/bsd/bind/dist/lib/dns/include/dns/zone.h patch external/bsd/bind/dist/lib/dns/include/dst/dst.h patch external/bsd/bind/dist/lib/dns/include/dst/gssapi.h patch external/bsd/bind/dist/lib/dns/rdata/any_255/tsig_250.c patch external/bsd/bind/dist/lib/dns/rdata/ch_3/a_1.c patch external/bsd/bind/dist/lib/dns/rdata/generic/afsdb_18.c patch external/bsd/bind/dist/lib/dns/rdata/generic/caa_257.c new external/bsd/bind/dist/lib/dns/rdata/generic/caa_257.h new external/bsd/bind/dist/lib/dns/rdata/generic/cdnskey_60.c new external/bsd/bind/dist/lib/dns/rdata/generic/cdnskey_60.h new external/bsd/bind/dist/lib/dns/rdata/generic/cds_59.c new external/bsd/bind/dist/lib/dns/rdata/generic/cds_59.h new external/bsd/bind/dist/lib/dns/rdata/generic/dlv_32769.c patch external/bsd/bind/dist/lib/dns/rdata/generic/dnskey_48.c patch external/bsd/bind/dist/lib/dns/rdata/generic/eui48_108.c new external/bsd/bind/dist/lib/dns/rdata/generic/eui48_108.h new external/bsd/bind/dist/lib/dns/rdata/generic/eui64_109.c new external/bsd/bind/dist/lib/dns/rdata/generic/eui64_109.h new external/bsd/bind/dist/lib/dns/rdata/generic/gpos_27.c patch external/bsd/bind/dist/lib/dns/rdata/generic/hinfo_13.c patch external/bsd/bind/dist/lib/dns/rdata/generic/hip_55.c patch external/bsd/bind/dist/lib/dns/rdata/generic/ipseckey_45.c patch external/bsd/bind/dist/lib/dns/rdata/generic/isdn_20.c patch external/bsd/bind/dist/lib/dns/rdata/generic/key_25.c patch external/bsd/bind/dist/lib/dns/rdata/generic/keydata_65533.c patch external/bsd/bind/dist/lib/dns/rdata/generic/l32_105.c new external/bsd/bind/dist/lib/dns/rdata/generic/l32_105.h new external/bsd/bind/dist/lib/dns/rdata/generic/l64_106.c new external/bsd/bind/dist/lib/dns/rdata/generic/l64_106.h new external/bsd/bind/dist/lib/dns/rdata/generic/lp_107.c new external/bsd/bind/dist/lib/dns/rdata/generic/lp_107.h new external/bsd/bind/dist/lib/dns/rdata/generic/mx_15.c patch external/bsd/bind/dist/lib/dns/rdata/generic/naptr_35.c patch external/bsd/bind/dist/lib/dns/rdata/generic/nid_104.c new external/bsd/bind/dist/lib/dns/rdata/generic/nid_104.h new external/bsd/bind/dist/lib/dns/rdata/generic/nsec3_50.c patch external/bsd/bind/dist/lib/dns/rdata/generic/opt_41.c patch external/bsd/bind/dist/lib/dns/rdata/generic/rrsig_46.c patch external/bsd/bind/dist/lib/dns/rdata/generic/rt_21.c patch external/bsd/bind/dist/lib/dns/rdata/generic/soa_6.c patch external/bsd/bind/dist/lib/dns/rdata/generic/spf_99.c patch external/bsd/bind/dist/lib/dns/rdata/generic/sshfp_44.c patch external/bsd/bind/dist/lib/dns/rdata/generic/tkey_249.c patch external/bsd/bind/dist/lib/dns/rdata/generic/tlsa_52.c patch external/bsd/bind/dist/lib/dns/rdata/generic/tlsa_52.h patch external/bsd/bind/dist/lib/dns/rdata/generic/txt_16.c patch external/bsd/bind/dist/lib/dns/rdata/generic/uri_256.c patch external/bsd/bind/dist/lib/dns/rdata/generic/x25_19.c patch external/bsd/bind/dist/lib/dns/rdata/hs_4/a_1.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/a6_38.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/a_1.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/aaaa_28.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/apl_42.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/nsap_22.c patch external/bsd/bind/dist/lib/dns/rdata/in_1/wks_11.c patch external/bsd/bind/dist/lib/dns/tests/Makefile.in patch external/bsd/bind/dist/lib/dns/tests/db_test.c new external/bsd/bind/dist/lib/dns/tests/dbiterator_test.c patch external/bsd/bind/dist/lib/dns/tests/dbversion_test.c patch external/bsd/bind/dist/lib/dns/tests/dispatch_test.c new external/bsd/bind/dist/lib/dns/tests/dnstest.c patch external/bsd/bind/dist/lib/dns/tests/master_test.c patch external/bsd/bind/dist/lib/dns/tests/nsec3_test.c patch external/bsd/bind/dist/lib/dns/tests/private_test.c patch external/bsd/bind/dist/lib/dns/tests/rdata_test.c patch external/bsd/bind/dist/lib/dns/tests/zonemgr_test.c patch external/bsd/bind/dist/lib/dns/tests/testdata/master/master17.data new external/bsd/bind/dist/lib/dns/win32/gen.dsp delete external/bsd/bind/dist/lib/dns/win32/gen.mak delete external/bsd/bind/dist/lib/dns/win32/libdns.def delete external/bsd/bind/dist/lib/dns/win32/libdns.dsp delete external/bsd/bind/dist/lib/dns/win32/libdns.mak delete external/bsd/bind/dist/lib/export/dns/Makefile.in patch external/bsd/bind/dist/lib/export/irs/Makefile.in patch external/bsd/bind/dist/lib/export/isc/Makefile.in patch external/bsd/bind/dist/lib/export/isc/include/isc/Makefile.in patch external/bsd/bind/dist/lib/export/isc/nls/Makefile.in patch external/bsd/bind/dist/lib/export/isc/nothreads/Makefile.in patch external/bsd/bind/dist/lib/export/isc/pthreads/Makefile.in patch external/bsd/bind/dist/lib/export/isc/unix/Makefile.in patch external/bsd/bind/dist/lib/export/isccfg/Makefile.in patch external/bsd/bind/dist/lib/export/samples/Makefile.in patch external/bsd/bind/dist/lib/export/samples/nsprobe.c patch external/bsd/bind/dist/lib/export/samples/sample-async.c patch external/bsd/bind/dist/lib/export/samples/sample-gai.c patch external/bsd/bind/dist/lib/export/samples/sample-request.c patch external/bsd/bind/dist/lib/export/samples/sample-update.c patch external/bsd/bind/dist/lib/export/samples/sample.c patch external/bsd/bind/dist/lib/irs/Makefile.in patch external/bsd/bind/dist/lib/irs/api patch external/bsd/bind/dist/lib/irs/context.c patch external/bsd/bind/dist/lib/irs/dnsconf.c patch external/bsd/bind/dist/lib/irs/getaddrinfo.c patch external/bsd/bind/dist/lib/irs/getnameinfo.c patch external/bsd/bind/dist/lib/irs/resconf.c patch external/bsd/bind/dist/lib/irs/include/irs/Makefile.in patch external/bsd/bind/dist/lib/irs/include/irs/resconf.h patch external/bsd/bind/dist/lib/isc/Makefile.in patch external/bsd/bind/dist/lib/isc/api patch external/bsd/bind/dist/lib/isc/app_api.c patch external/bsd/bind/dist/lib/isc/backtrace.c patch external/bsd/bind/dist/lib/isc/base32.c patch external/bsd/bind/dist/lib/isc/base64.c patch external/bsd/bind/dist/lib/isc/bind9.c new external/bsd/bind/dist/lib/isc/buffer.c patch external/bsd/bind/dist/lib/isc/commandline.c patch external/bsd/bind/dist/lib/isc/counter.c new external/bsd/bind/dist/lib/isc/event.c patch external/bsd/bind/dist/lib/isc/hash.c patch external/bsd/bind/dist/lib/isc/heap.c patch external/bsd/bind/dist/lib/isc/hex.c patch external/bsd/bind/dist/lib/isc/hmacmd5.c patch external/bsd/bind/dist/lib/isc/hmacsha.c patch external/bsd/bind/dist/lib/isc/httpd.c patch external/bsd/bind/dist/lib/isc/inet_aton.c patch external/bsd/bind/dist/lib/isc/inet_pton.c patch external/bsd/bind/dist/lib/isc/lex.c patch external/bsd/bind/dist/lib/isc/lib.c patch external/bsd/bind/dist/lib/isc/log.c patch external/bsd/bind/dist/lib/isc/md5.c patch external/bsd/bind/dist/lib/isc/mem.c patch external/bsd/bind/dist/lib/isc/mem_api.c patch external/bsd/bind/dist/lib/isc/netaddr.c patch external/bsd/bind/dist/lib/isc/parseint.c patch external/bsd/bind/dist/lib/isc/pool.c new external/bsd/bind/dist/lib/isc/print.c patch external/bsd/bind/dist/lib/isc/radix.c patch external/bsd/bind/dist/lib/isc/random.c patch external/bsd/bind/dist/lib/isc/ratelimiter.c patch external/bsd/bind/dist/lib/isc/regex.c new external/bsd/bind/dist/lib/isc/result.c patch external/bsd/bind/dist/lib/isc/safe.c new external/bsd/bind/dist/lib/isc/sha1.c patch external/bsd/bind/dist/lib/isc/sha2.c patch external/bsd/bind/dist/lib/isc/sockaddr.c patch external/bsd/bind/dist/lib/isc/socket_api.c patch external/bsd/bind/dist/lib/isc/stats.c patch external/bsd/bind/dist/lib/isc/string.c patch external/bsd/bind/dist/lib/isc/strtoul.c patch external/bsd/bind/dist/lib/isc/symtab.c patch external/bsd/bind/dist/lib/isc/task.c patch external/bsd/bind/dist/lib/isc/task_api.c patch external/bsd/bind/dist/lib/isc/taskpool.c patch external/bsd/bind/dist/lib/isc/timer.c patch external/bsd/bind/dist/lib/isc/timer_api.c patch external/bsd/bind/dist/lib/isc/tm.c new external/bsd/bind/dist/lib/isc/include/isc/Makefile.in patch external/bsd/bind/dist/lib/isc/include/isc/app.h patch external/bsd/bind/dist/lib/isc/include/isc/base32.h patch external/bsd/bind/dist/lib/isc/include/isc/bind9.h patch external/bsd/bind/dist/lib/isc/include/isc/buffer.h patch external/bsd/bind/dist/lib/isc/include/isc/counter.h new external/bsd/bind/dist/lib/isc/include/isc/event.h patch external/bsd/bind/dist/lib/isc/include/isc/file.h patch external/bsd/bind/dist/lib/isc/include/isc/hash.h patch external/bsd/bind/dist/lib/isc/include/isc/httpd.h patch external/bsd/bind/dist/lib/isc/include/isc/iterated_hash.h patch external/bsd/bind/dist/lib/isc/include/isc/list.h patch external/bsd/bind/dist/lib/isc/include/isc/mem.h patch external/bsd/bind/dist/lib/isc/include/isc/namespace.h patch external/bsd/bind/dist/lib/isc/include/isc/platform.h.in patch external/bsd/bind/dist/lib/isc/include/isc/pool.h new external/bsd/bind/dist/lib/isc/include/isc/print.h patch external/bsd/bind/dist/lib/isc/include/isc/queue.h patch external/bsd/bind/dist/lib/isc/include/isc/radix.h patch external/bsd/bind/dist/lib/isc/include/isc/regex.h new external/bsd/bind/dist/lib/isc/include/isc/region.h patch external/bsd/bind/dist/lib/isc/include/isc/result.h patch external/bsd/bind/dist/lib/isc/include/isc/safe.h new external/bsd/bind/dist/lib/isc/include/isc/sockaddr.h patch external/bsd/bind/dist/lib/isc/include/isc/socket.h patch external/bsd/bind/dist/lib/isc/include/isc/stdio.h patch external/bsd/bind/dist/lib/isc/include/isc/string.h patch external/bsd/bind/dist/lib/isc/include/isc/task.h patch external/bsd/bind/dist/lib/isc/include/isc/timer.h patch external/bsd/bind/dist/lib/isc/include/isc/tm.h new external/bsd/bind/dist/lib/isc/include/isc/types.h patch external/bsd/bind/dist/lib/isc/nothreads/Makefile.in patch external/bsd/bind/dist/lib/isc/nothreads/include/isc/thread.h patch external/bsd/bind/dist/lib/isc/pthreads/thread.c patch external/bsd/bind/dist/lib/isc/pthreads/include/isc/thread.h patch external/bsd/bind/dist/lib/isc/sparc64/include/isc/atomic.h patch external/bsd/bind/dist/lib/isc/tests/Makefile.in patch external/bsd/bind/dist/lib/isc/tests/counter_test.c new external/bsd/bind/dist/lib/isc/tests/hash_test.c patch external/bsd/bind/dist/lib/isc/tests/isctest.c patch external/bsd/bind/dist/lib/isc/tests/isctest.h patch external/bsd/bind/dist/lib/isc/tests/lex_test.c new external/bsd/bind/dist/lib/isc/tests/parse_test.c new external/bsd/bind/dist/lib/isc/tests/pool_test.c new external/bsd/bind/dist/lib/isc/tests/print_test.c new external/bsd/bind/dist/lib/isc/tests/regex_test.c new external/bsd/bind/dist/lib/isc/tests/safe_test.c new external/bsd/bind/dist/lib/isc/tests/sockaddr_test.c new external/bsd/bind/dist/lib/isc/tests/symtab_test.c patch external/bsd/bind/dist/lib/isc/tests/time_test.c new external/bsd/bind/dist/lib/isc/unix/app.c patch external/bsd/bind/dist/lib/isc/unix/entropy.c patch external/bsd/bind/dist/lib/isc/unix/file.c patch external/bsd/bind/dist/lib/isc/unix/ifiter_getifaddrs.c patch external/bsd/bind/dist/lib/isc/unix/ifiter_ioctl.c patch external/bsd/bind/dist/lib/isc/unix/ifiter_sysctl.c patch external/bsd/bind/dist/lib/isc/unix/interfaceiter.c patch external/bsd/bind/dist/lib/isc/unix/net.c patch external/bsd/bind/dist/lib/isc/unix/socket.c patch external/bsd/bind/dist/lib/isc/unix/stdio.c patch external/bsd/bind/dist/lib/isc/unix/time.c patch external/bsd/bind/dist/lib/isc/unix/include/isc/Makefile.in patch external/bsd/bind/dist/lib/isc/unix/include/isc/net.h patch external/bsd/bind/dist/lib/isc/unix/include/isc/stat.h patch external/bsd/bind/dist/lib/isc/unix/include/isc/time.h patch external/bsd/bind/dist/lib/isc/win32/libisc.def delete external/bsd/bind/dist/lib/isc/win32/libisc.dsp delete external/bsd/bind/dist/lib/isc/win32/libisc.mak delete external/bsd/bind/dist/lib/isc/win32/include/isc/platform.h delete external/bsd/bind/dist/lib/isccc/Makefile.in patch external/bsd/bind/dist/lib/isccc/api patch external/bsd/bind/dist/lib/isccc/base64.c patch external/bsd/bind/dist/lib/isccc/cc.c patch external/bsd/bind/dist/lib/isccc/sexpr.c patch external/bsd/bind/dist/lib/isccc/include/isccc/util.h patch external/bsd/bind/dist/lib/isccc/win32/libisccc.dsp delete external/bsd/bind/dist/lib/isccc/win32/libisccc.mak delete external/bsd/bind/dist/lib/isccfg/Makefile.in patch external/bsd/bind/dist/lib/isccfg/aclconf.c patch external/bsd/bind/dist/lib/isccfg/api patch external/bsd/bind/dist/lib/isccfg/namedconf.c patch external/bsd/bind/dist/lib/isccfg/parser.c patch external/bsd/bind/dist/lib/isccfg/include/isccfg/Makefile.in patch external/bsd/bind/dist/lib/isccfg/include/isccfg/aclconf.h patch external/bsd/bind/dist/lib/isccfg/include/isccfg/cfg.h patch external/bsd/bind/dist/lib/isccfg/include/isccfg/grammar.h patch external/bsd/bind/dist/lib/isccfg/win32/libisccfg.dsp delete external/bsd/bind/dist/lib/isccfg/win32/libisccfg.mak delete external/bsd/bind/dist/lib/lwres/Atffile new external/bsd/bind/dist/lib/lwres/Makefile.in patch external/bsd/bind/dist/lib/lwres/api patch external/bsd/bind/dist/lib/lwres/compat.c new external/bsd/bind/dist/lib/lwres/context.c patch external/bsd/bind/dist/lib/lwres/gai_strerror.c patch external/bsd/bind/dist/lib/lwres/getaddrinfo.c patch external/bsd/bind/dist/lib/lwres/gethost.c patch external/bsd/bind/dist/lib/lwres/getipnode.c patch external/bsd/bind/dist/lib/lwres/getnameinfo.c patch external/bsd/bind/dist/lib/lwres/getrrset.c patch external/bsd/bind/dist/lib/lwres/herror.c patch external/bsd/bind/dist/lib/lwres/lwbuffer.c patch external/bsd/bind/dist/lib/lwres/lwconfig.c patch external/bsd/bind/dist/lib/lwres/lwinetaton.c patch external/bsd/bind/dist/lib/lwres/lwinetpton.c patch external/bsd/bind/dist/lib/lwres/lwres_gabn.c patch external/bsd/bind/dist/lib/lwres/lwres_gnba.c patch external/bsd/bind/dist/lib/lwres/lwres_grbn.c patch external/bsd/bind/dist/lib/lwres/lwres_noop.c patch external/bsd/bind/dist/lib/lwres/lwresutil.c patch external/bsd/bind/dist/lib/lwres/print.c patch external/bsd/bind/dist/lib/lwres/strtoul.c delete external/bsd/bind/dist/lib/lwres/include/lwres/Makefile.in patch external/bsd/bind/dist/lib/lwres/include/lwres/lwres.h patch external/bsd/bind/dist/lib/lwres/include/lwres/netdb.h.in patch external/bsd/bind/dist/lib/lwres/include/lwres/platform.h.in patch external/bsd/bind/dist/lib/lwres/include/lwres/stdlib.h patch external/bsd/bind/dist/lib/lwres/include/lwres/string.h new external/bsd/bind/dist/lib/lwres/man/lwres.3 patch external/bsd/bind/dist/lib/lwres/man/lwres.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres.html patch external/bsd/bind/dist/lib/lwres/man/lwres_buffer.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_buffer.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_buffer.html patch external/bsd/bind/dist/lib/lwres/man/lwres_config.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_config.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_config.html patch external/bsd/bind/dist/lib/lwres/man/lwres_context.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_context.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_context.html patch external/bsd/bind/dist/lib/lwres/man/lwres_gabn.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_gabn.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_gabn.html patch external/bsd/bind/dist/lib/lwres/man/lwres_gai_strerror.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_gai_strerror.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_gai_strerror.html patch external/bsd/bind/dist/lib/lwres/man/lwres_getaddrinfo.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_getaddrinfo.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_getaddrinfo.html patch external/bsd/bind/dist/lib/lwres/man/lwres_gethostent.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_gethostent.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_gethostent.html patch external/bsd/bind/dist/lib/lwres/man/lwres_getipnode.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_getipnode.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_getipnode.html patch external/bsd/bind/dist/lib/lwres/man/lwres_getnameinfo.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_getnameinfo.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_getnameinfo.html patch external/bsd/bind/dist/lib/lwres/man/lwres_getrrsetbyname.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_getrrsetbyname.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_getrrsetbyname.html patch external/bsd/bind/dist/lib/lwres/man/lwres_gnba.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_gnba.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_gnba.html patch external/bsd/bind/dist/lib/lwres/man/lwres_hstrerror.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_hstrerror.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_hstrerror.html patch external/bsd/bind/dist/lib/lwres/man/lwres_inetntop.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_inetntop.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_inetntop.html patch external/bsd/bind/dist/lib/lwres/man/lwres_noop.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_noop.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_noop.html patch external/bsd/bind/dist/lib/lwres/man/lwres_packet.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_packet.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_packet.html patch external/bsd/bind/dist/lib/lwres/man/lwres_resutil.3 patch external/bsd/bind/dist/lib/lwres/man/lwres_resutil.docbook patch external/bsd/bind/dist/lib/lwres/man/lwres_resutil.html patch external/bsd/bind/dist/lib/lwres/tests/Atffile new external/bsd/bind/dist/lib/lwres/tests/Makefile.in new external/bsd/bind/dist/lib/lwres/tests/config_test.c new external/bsd/bind/dist/lib/lwres/tests/testdata/link-local.conf new external/bsd/bind/dist/lib/lwres/win32/liblwres.dsp delete external/bsd/bind/dist/lib/lwres/win32/liblwres.mak delete external/bsd/bind/dist/lib/tests/t_api.c patch external/bsd/bind/dist/lib/tests/include/tests/t_api.h patch external/bsd/bind/dist/lib/win32/bindevt/bindevt.dsp delete external/bsd/bind/dist/lib/win32/bindevt/bindevt.mak delete external/bsd/bind/dist/make/mkdep.in patch external/bsd/bind/dist/make/rules.in patch external/bsd/bind/dist/unit/README patch external/bsd/bind/dist/unit/unittest.sh.in patch external/bsd/bind/dist/unit/atf-src/AUTHORS patch external/bsd/bind/dist/unit/atf-src/Atffile patch external/bsd/bind/dist/unit/atf-src/COPYING patch external/bsd/bind/dist/unit/atf-src/INSTALL patch external/bsd/bind/dist/unit/atf-src/Kyuafile new external/bsd/bind/dist/unit/atf-src/Makefile.am patch external/bsd/bind/dist/unit/atf-src/Makefile.in patch external/bsd/bind/dist/unit/atf-src/NEWS patch external/bsd/bind/dist/unit/atf-src/TODO new external/bsd/bind/dist/unit/atf-src/aclocal.m4 patch external/bsd/bind/dist/unit/atf-src/atf-c++.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c.h patch external/bsd/bind/dist/unit/atf-src/configure patch external/bsd/bind/dist/unit/atf-src/configure.ac patch external/bsd/bind/dist/unit/atf-src/admin/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/admin/check-install.sh delete external/bsd/bind/dist/unit/atf-src/admin/check-style-c.awk patch external/bsd/bind/dist/unit/atf-src/admin/check-style-common.awk patch external/bsd/bind/dist/unit/atf-src/admin/check-style-cpp.awk patch external/bsd/bind/dist/unit/atf-src/admin/check-style-man.awk patch external/bsd/bind/dist/unit/atf-src/admin/check-style-shell.awk patch external/bsd/bind/dist/unit/atf-src/admin/check-style.sh patch external/bsd/bind/dist/unit/atf-src/admin/compile patch external/bsd/bind/dist/unit/atf-src/admin/depcomp patch external/bsd/bind/dist/unit/atf-src/admin/install-sh patch external/bsd/bind/dist/unit/atf-src/admin/ltmain.sh patch external/bsd/bind/dist/unit/atf-src/admin/missing patch external/bsd/bind/dist/unit/atf-src/atf-c/Atffile patch external/bsd/bind/dist/unit/atf-src/atf-c/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-c/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-c/atf-c-api.3 patch external/bsd/bind/dist/unit/atf-src/atf-c/atf-c.m4 new external/bsd/bind/dist/unit/atf-src/atf-c/atf-common.m4 new external/bsd/bind/dist/unit/atf-src/atf-c/atf_c_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/check.c patch external/bsd/bind/dist/unit/atf-src/atf-c/check.h patch external/bsd/bind/dist/unit/atf-src/atf-c/check_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/config.c patch external/bsd/bind/dist/unit/atf-src/atf-c/config_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/defs.h.in patch external/bsd/bind/dist/unit/atf-src/atf-c/error.c patch external/bsd/bind/dist/unit/atf-src/atf-c/error.h patch external/bsd/bind/dist/unit/atf-src/atf-c/error_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/macros.h patch external/bsd/bind/dist/unit/atf-src/atf-c/macros_h_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/macros_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/pkg_config_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-c/tc.c patch external/bsd/bind/dist/unit/atf-src/atf-c/tc.h patch external/bsd/bind/dist/unit/atf-src/atf-c/tc_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/tp.c patch external/bsd/bind/dist/unit/atf-src/atf-c/tp.h patch external/bsd/bind/dist/unit/atf-src/atf-c/tp_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/unused_test.c new external/bsd/bind/dist/unit/atf-src/atf-c/utils.c patch external/bsd/bind/dist/unit/atf-src/atf-c/utils.h patch external/bsd/bind/dist/unit/atf-src/atf-c/utils_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/Atffile patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-c/detail/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/dynstr.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/dynstr.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/dynstr_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/env.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/env_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/fs.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/fs.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/fs_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/list.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/list.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/list_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/map.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/map.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/map_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/process.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/process.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/process_helpers.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/process_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/sanity.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/sanity_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/test_helpers.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/test_helpers.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/test_helpers_test.c delete external/bsd/bind/dist/unit/atf-src/atf-c/detail/text.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/text.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/text_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/tp_main.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/user.c patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/user.h patch external/bsd/bind/dist/unit/atf-src/atf-c/detail/user_test.c patch external/bsd/bind/dist/unit/atf-src/atf-c++/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-c++/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-c++/atf-c++-api.3 patch external/bsd/bind/dist/unit/atf-src/atf-c++/atf-c++.m4 new external/bsd/bind/dist/unit/atf-src/atf-c++/check.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/check.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/check_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/config.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/config.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/config_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/macros.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/macros_hpp_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/macros_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/noncopyable.hpp new external/bsd/bind/dist/unit/atf-src/atf-c++/pkg_config_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-c++/tests.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/tests.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/tests_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/unused_test.cpp new external/bsd/bind/dist/unit/atf-src/atf-c++/utils.cpp new external/bsd/bind/dist/unit/atf-src/atf-c++/utils.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/utils_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/Atffile patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-c++/detail/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/application.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/application.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/application_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/auto_array.hpp new external/bsd/bind/dist/unit/atf-src/atf-c++/detail/auto_array_test.cpp new external/bsd/bind/dist/unit/atf-src/atf-c++/detail/env.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/env.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/env_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/exceptions.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/exceptions.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/exceptions_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/expand.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/expand.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/expand_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/fs.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/fs.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/fs_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/parser.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/parser.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/parser_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/process.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/process.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/process_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/sanity.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/test_helpers.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/test_helpers.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/text.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/text.hpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/text_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/ui.cpp patch external/bsd/bind/dist/unit/atf-src/atf-c++/detail/ui.hpp patch external/bsd/bind/dist/unit/atf-src/atf-config/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-config/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-config/atf-config.1 patch external/bsd/bind/dist/unit/atf-src/atf-config/atf-config.cpp patch external/bsd/bind/dist/unit/atf-src/atf-config/integration_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-report/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-report/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-report/atf-report.1 patch external/bsd/bind/dist/unit/atf-src/atf-report/atf-report.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/fail_helper.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/integration_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-report/misc_helpers.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/pass_helper.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/reader.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/reader.hpp patch external/bsd/bind/dist/unit/atf-src/atf-report/reader_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-report/tests-results.css patch external/bsd/bind/dist/unit/atf-src/atf-report/tests-results.dtd patch external/bsd/bind/dist/unit/atf-src/atf-report/tests-results.xsl patch external/bsd/bind/dist/unit/atf-src/atf-run/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-run/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-run/atf-run.1 patch external/bsd/bind/dist/unit/atf-src/atf-run/atf-run.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/atffile.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/atffile.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/atffile_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/config.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/config_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/fs.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/fs.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/fs_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/integration_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-run/io.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/io.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/io_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/misc_helpers.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/pass_helper.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/requirements.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/requirements_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/several_tcs_helper.c patch external/bsd/bind/dist/unit/atf-src/atf-run/signals.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/signals.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/signals_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/test-program.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/test_program_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/timer.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/timer.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/user.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/user.hpp patch external/bsd/bind/dist/unit/atf-src/atf-run/user_test.cpp patch external/bsd/bind/dist/unit/atf-src/atf-run/zero_tcs_helper.c patch external/bsd/bind/dist/unit/atf-src/atf-run/share/atf-run.hooks patch external/bsd/bind/dist/unit/atf-src/atf-sh/Kyuafile new external/bsd/bind/dist/unit/atf-src/atf-sh/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-check.1 patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-check.cpp patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-check_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-sh-api.3 patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-sh.cpp patch external/bsd/bind/dist/unit/atf-src/atf-sh/atf-sh.m4 new external/bsd/bind/dist/unit/atf-src/atf-sh/atf-sh.pc.in new external/bsd/bind/dist/unit/atf-src/atf-sh/atf_check_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/config_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/libatf-sh.subr patch external/bsd/bind/dist/unit/atf-src/atf-sh/misc_helpers.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/normalize_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/tc_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-sh/tp_test.sh patch external/bsd/bind/dist/unit/atf-src/atf-version/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/atf-version/atf-version.1 patch external/bsd/bind/dist/unit/atf-src/atf-version/atf-version.cpp patch external/bsd/bind/dist/unit/atf-src/atf-version/generate-revision.sh patch external/bsd/bind/dist/unit/atf-src/bootstrap/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/bootstrap/h_app_empty.cpp patch external/bsd/bind/dist/unit/atf-src/bootstrap/h_app_opts_args.cpp patch external/bsd/bind/dist/unit/atf-src/bootstrap/h_tp_atf_check_sh.sh patch external/bsd/bind/dist/unit/atf-src/bootstrap/h_tp_basic_cpp.cpp patch external/bsd/bind/dist/unit/atf-src/bootstrap/h_tp_basic_sh.sh patch external/bsd/bind/dist/unit/atf-src/bootstrap/package.m4 patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_application_help.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_application_opts_args.atpatch external/bsd/bind/dist/unit/atf-src/bootstrap/t_atf_config.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_atf_run.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_subr_atf_check.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_test_program_compare.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_test_program_filter.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_test_program_list.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/t_test_program_run.at patch external/bsd/bind/dist/unit/atf-src/bootstrap/testsuite patch external/bsd/bind/dist/unit/atf-src/bootstrap/testsuite.at patch external/bsd/bind/dist/unit/atf-src/doc/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/doc/atf-formats.5 patch external/bsd/bind/dist/unit/atf-src/doc/atf-test-case.4 patch external/bsd/bind/dist/unit/atf-src/doc/atf-test-program.1 patch external/bsd/bind/dist/unit/atf-src/doc/atf.7.in patch external/bsd/bind/dist/unit/atf-src/m4/compiler-flags.m4 patch external/bsd/bind/dist/unit/atf-src/m4/cxx-std-funcs.m4 patch external/bsd/bind/dist/unit/atf-src/m4/developer-mode.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-application.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-defs.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-env.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-fs.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-sanity.m4 patch external/bsd/bind/dist/unit/atf-src/m4/module-signals.m4 patch external/bsd/bind/dist/unit/atf-src/test-programs/Atffile patch external/bsd/bind/dist/unit/atf-src/test-programs/Kyuafile new external/bsd/bind/dist/unit/atf-src/test-programs/Makefile.am.inc patch external/bsd/bind/dist/unit/atf-src/test-programs/c_helpers.c patch external/bsd/bind/dist/unit/atf-src/test-programs/config_test.sh patch external/bsd/bind/dist/unit/atf-src/test-programs/cpp_helpers.cpp patch external/bsd/bind/dist/unit/atf-src/test-programs/expect_test.sh patch external/bsd/bind/dist/unit/atf-src/test-programs/fork_test.sh delete external/bsd/bind/dist/unit/atf-src/test-programs/meta_data_test.sh patch external/bsd/bind/dist/unit/atf-src/test-programs/result_test.sh patch external/bsd/bind/dist/unit/atf-src/test-programs/sh_helpers.sh patch external/bsd/bind/dist/unit/atf-src/test-programs/srcdir_test.sh patch external/bsd/bind/dist/win32utils/BINDBuild.dsw delete external/bsd/bind/dist/win32utils/BuildAll.bat delete external/bsd/bind/dist/win32utils/BuildPost.bat delete external/bsd/bind/dist/win32utils/BuildSetup.bat delete external/bsd/bind/dist/win32utils/SetupLibs.bat delete external/bsd/bind/dist/win32utils/dnsheadergen.bat delete external/bsd/bind/dist/win32utils/makedefs.pl delete external/bsd/bind/dist/win32utils/makeversion.pl delete external/bsd/bind/dist/win32utils/setpk11provider.pl delete external/bsd/bind/dist/win32utils/updatelibxml2.pl delete external/bsd/bind/dist/win32utils/updateopenssl.pl delete external/bsd/bind/dist/win32utils/win32-build.txt delete external/bsd/bind/include/config.h patch external/bsd/bind/include/dns/code.h patch external/bsd/bind/include/dns/enumclass.h patch external/bsd/bind/include/dns/enumtype.h patch external/bsd/bind/include/dns/rdatastruct.h patch external/bsd/bind/include/irs/netdb.h new external/bsd/bind/include/irs/platform.h new external/bsd/bind/include/isc/platform.h patch external/bsd/bind/include/lwres/netdb.h patch external/bsd/bind/include/lwres/platform.h patch external/bsd/bind/lib/Makefile patch external/bsd/bind/lib/libbind9/Makefile patch external/bsd/bind/lib/libbind9/shlib_version patch external/bsd/bind/lib/libdns/Makefile patch external/bsd/bind/lib/libdns/shlib_version patch external/bsd/bind/lib/libirs/Makefile new external/bsd/bind/lib/libirs/shlib_version new external/bsd/bind/lib/libisc/Makefile patch external/bsd/bind/lib/libisc/shlib_version patch external/bsd/bind/lib/libisccc/Makefile patch external/bsd/bind/lib/libisccc/shlib_version patch external/bsd/bind/lib/libisccfg/Makefile patch external/bsd/bind/lib/libisccfg/shlib_version patch external/bsd/bind/lib/liblwres/shlib_version patch Update bind to 9.9.6-P1. CVE-2014-8500.

/*	$NetBSD: hash_test.c,v 1.1.1.1.4.1.6.1 2014/12/26 03:08:37 msaitoh Exp $	*/

/*
 * Copyright (C) 2011, 2012, 2014  Internet Systems Consortium, Inc. ("ISC")
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
 * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 * PERFORMANCE OF THIS SOFTWARE.
 */

/* Id */

/* ! \file */

#include <config.h>

#include <atf-c.h>

#include <stdio.h>
#include <string.h>

#include <isc/hmacmd5.h>
#include <isc/hmacsha.h>
#include <isc/md5.h>
#include <isc/sha1.h>
#include <isc/util.h>
#include <isc/string.h>

/*
 * Test data from RFC6234
 */

unsigned char digest[ISC_SHA512_DIGESTLENGTH];
unsigned char buffer[1024];
const char *s;
char str[2 * ISC_SHA512_DIGESTLENGTH + 1];
unsigned char key[20];
int i = 0;

isc_result_t
tohexstr(unsigned char *d, unsigned int len, char *out);
/*
 * Precondition: a hexadecimal number in *d, the length of that number in len,
 *   and a pointer to a character array to put the output (*out).
 * Postcondition: A String representation of the given hexadecimal number is
 *   placed into the array *out
 *
 * 'out' MUST point to an array of at least len * 2 + 1
 *
 * Return values: ISC_R_SUCCESS if the operation is sucessful
 */

isc_result_t
tohexstr(unsigned char *d, unsigned int len, char *out) {

	out[0]='\0';
	char c_ret[] = "AA";
	unsigned int i;
	strcat(out, "0x");
	for (i = 0; i < len; i++) {
		sprintf(c_ret, "%02X", d[i]);
		strcat(out, c_ret);
	}
	strcat(out, "\0");
	return (ISC_R_SUCCESS);
}


#define TEST_INPUT(x) (x), sizeof(x)-1

typedef struct hash_testcase {
	const char *input;
	size_t input_len;
	const char *result;
	int repeats;
} hash_testcase_t;

typedef struct hash_test_key {
	const char *key;
	const int len;
} hash_test_key_t;

/* non-hmac tests */

ATF_TC(isc_sha1);
ATF_TC_HEAD(isc_sha1, tc) {
	atf_tc_set_md_var(tc, "descr", "sha1 examples from RFC4634");
}
ATF_TC_BODY(isc_sha1, tc) {
	isc_sha1_t sha1;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("abc"),
			"0xA9993E364706816ABA3E25717850C26C9CD0D89D",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("abcdbcdecdefdefgefghfghighijhijkijk"
				   "ljklmklmnlmnomnopnopq"),
			"0x84983E441C3BD26EBAAE4AA1F95129E5E54670F1",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("a") /* times 1000000 */,
			"0x34AA973CD4C4DAA4F61EEB2BDBAD27316534016F",
			1000000
		},
		/* Test 4 -- exact multiple of 512 bits */
		{
			TEST_INPUT("01234567012345670123456701234567"),
			"0xDEA356A2CDDD90C7A7ECEDC5EBB563934F460452",
			20 /* 20 times */
		},
#if 0
		/* Test 5 -- optional feature, not implemented */
		{
			TEST_INPUT(""),
			/* "extrabits": 0x98 , "numberextrabits": 5 */
			"0x29826B003B906E660EFF4027CE98AF3531AC75BA",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("\x5e"),
			"0x5E6F80A34A9798CAFC6A5DB96CC57BA4C4DB59C2",
			1
		},
#if 0
		/* Test 7 -- optional feature, not implemented */
		{
			TEST_INPUT("\x49\xb2\xae\xc2\x59\x4b\xbe\x3a"
				   "\x3b\x11\x75\x42\xd9\x4a\xc8"),
			/* "extrabits": 0x80, "numberextrabits": 3 */
		  "0x6239781E03729919C01955B3FFA8ACB60B988340", 1 },
#endif
		/* Test 8 */
		{
			TEST_INPUT("\x9a\x7d\xfd\xf1\xec\xea\xd0\x6e\xd6\x46"
				   "\xaa\x55\xfe\x75\x71\x46"),
			"0x82ABFF6605DBE1C17DEF12A394FA22A82B544A35",
			1
		},
#if 0
		/* Test 9 -- optional feature, not implemented */
		{
			TEST_INPUT("\x65\xf9\x32\x99\x5b\xa4\xce\x2c\xb1\xb4"
				   "\xa2\xe7\x1a\xe7\x02\x20\xaa\xce\xc8\x96"
				   "\x2d\xd4\x49\x9c\xbd\x7c\x88\x7a\x94\xea"
				   "\xaa\x10\x1e\xa5\xaa\xbc\x52\x9b\x4e\x7e"
				   "\x43\x66\x5a\x5a\xf2\xcd\x03\xfe\x67\x8e"
				   "\xa6\xa5\x00\x5b\xba\x3b\x08\x22\x04\xc2"
				   "\x8b\x91\x09\xf4\x69\xda\xc9\x2a\xaa\xb3"
				   "\xaa\x7c\x11\xa1\xb3\x2a"),
			/* "extrabits": 0xE0 , "numberextrabits": 3 */
			"0x8C5B2A5DDAE5A97FC7F9D85661C672ADBF7933D4",
			1
		},
#endif
		/* Test 10 */
		{
			TEST_INPUT("\xf7\x8f\x92\x14\x1b\xcd\x17\x0a\xe8\x9b"
				   "\x4f\xba\x15\xa1\xd5\x9f\x3f\xd8\x4d\x22"
				   "\x3c\x92\x51\xbd\xac\xbb\xae\x61\xd0\x5e"
				   "\xd1\x15\xa0\x6a\x7c\xe1\x17\xb7\xbe\xea"
				   "\xd2\x44\x21\xde\xd9\xc3\x25\x92\xbd\x57"
				   "\xed\xea\xe3\x9c\x39\xfa\x1f\xe8\x94\x6a"
				   "\x84\xd0\xcf\x1f\x7b\xee\xad\x17\x13\xe2"
				   "\xe0\x95\x98\x97\x34\x7f\x67\xc8\x0b\x04"
				   "\x00\xc2\x09\x81\x5d\x6b\x10\xa6\x83\x83"
				   "\x6f\xd5\x56\x2a\x56\xca\xb1\xa2\x8e\x81"
				   "\xb6\x57\x66\x54\x63\x1c\xf1\x65\x66\xb8"
				   "\x6e\x3b\x33\xa1\x08\xb0\x53\x07\xc0\x0a"
				   "\xff\x14\xa7\x68\xed\x73\x50\x60\x6a\x0f"
				   "\x85\xe6\xa9\x1d\x39\x6f\x5b\x5c\xbe\x57"
				   "\x7f\x9b\x38\x80\x7c\x7d\x52\x3d\x6d\x79"
				   "\x2f\x6e\xbc\x24\xa4\xec\xf2\xb3\xa4\x27"
				   "\xcd\xbb\xfb"),
			"0xCB0082C8F197D260991BA6A460E76E202BAD27B3",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_sha1_init(&sha1);
		for(i = 0; i < testcase->repeats; i++) {
			isc_sha1_update(&sha1,
					(const isc_uint8_t *) testcase->input,
					testcase->input_len);
		}
		isc_sha1_final(&sha1, digest);
		tohexstr(digest, ISC_SHA1_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}
}


ATF_TC(isc_sha224);
ATF_TC_HEAD(isc_sha224, tc) {
	atf_tc_set_md_var(tc, "descr", "sha224 examples from RFC4634");
}
ATF_TC_BODY(isc_sha224, tc) {
	isc_sha224_t sha224;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("abc"),
			"0x23097D223405D8228642A477BDA255B32AADBCE4BDA0B3F7"
				"E36C9DA7",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("abcdbcdecdefdefgefghfghighijhijkijklj"
				   "klmklmnlmnomnopnopq"),
			"0x75388B16512776CC5DBA5DA1FD890150B0C6455CB4F58B"
				"1952522525",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("a"),
			"0x20794655980C91D8BBB4C1EA97618A4BF03F42581948B2"
				"EE4EE7AD67",
			1000000
		},
		/* Test 4 */
		{
			TEST_INPUT("01234567012345670123456701234567"),
			"0x567F69F168CD7844E65259CE658FE7AADFA25216E68ECA"
				"0EB7AB8262",
			20
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("\x07"),
			"0x00ECD5F138422B8AD74C9799FD826C531BAD2FCABC7450"
				"BEE2AA8C2A",
			1
		},
#if 0
		/* Test 7 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 8 */
		{
			TEST_INPUT("\x18\x80\x40\x05\xdd\x4f\xbd\x15\x56\x29"
				   "\x9d\x6f\x9d\x93\xdf\x62"),
			"0xDF90D78AA78821C99B40BA4C966921ACCD8FFB1E98AC38"
				"8E56191DB1",
			1
		},
#if 0
		/* Test 9 */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 10 */
		{
			TEST_INPUT("\x55\xb2\x10\x07\x9c\x61\xb5\x3a\xdd\x52"
				   "\x06\x22\xd1\xac\x97\xd5\xcd\xbe\x8c\xb3"
				   "\x3a\xa0\xae\x34\x45\x17\xbe\xe4\xd7\xba"
				   "\x09\xab\xc8\x53\x3c\x52\x50\x88\x7a\x43"
				   "\xbe\xbb\xac\x90\x6c\x2e\x18\x37\xf2\x6b"
				   "\x36\xa5\x9a\xe3\xbe\x78\x14\xd5\x06\x89"
				   "\x6b\x71\x8b\x2a\x38\x3e\xcd\xac\x16\xb9"
				   "\x61\x25\x55\x3f\x41\x6f\xf3\x2c\x66\x74"
				   "\xc7\x45\x99\xa9\x00\x53\x86\xd9\xce\x11"
				   "\x12\x24\x5f\x48\xee\x47\x0d\x39\x6c\x1e"
				   "\xd6\x3b\x92\x67\x0c\xa5\x6e\xc8\x4d\xee"
				   "\xa8\x14\xb6\x13\x5e\xca\x54\x39\x2b\xde"
				   "\xdb\x94\x89\xbc\x9b\x87\x5a\x8b\xaf\x0d"
				   "\xc1\xae\x78\x57\x36\x91\x4a\xb7\xda\xa2"
				   "\x64\xbc\x07\x9d\x26\x9f\x2c\x0d\x7e\xdd"
				   "\xd8\x10\xa4\x26\x14\x5a\x07\x76\xf6\x7c"
				   "\x87\x82\x73"),
			"0x0B31894EC8937AD9B91BDFBCBA294D9ADEFAA18E09305E"
				"9F20D5C3A4",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_sha224_init(&sha224);
		for(i = 0; i < testcase->repeats; i++) {
			isc_sha224_update(&sha224,
					  (const isc_uint8_t *) testcase->input,
					  testcase->input_len);
		}
		isc_sha224_final(digest, &sha224);
		/*
		*API inconsistency BUG HERE
		* in order to be consistant with the other isc_hash_final
		* functions the call should be
		* isc_sha224_final(&sha224, digest);
		 */
		tohexstr(digest, ISC_SHA224_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}

}

ATF_TC(isc_sha256);
ATF_TC_HEAD(isc_sha256, tc) {
	atf_tc_set_md_var(tc, "descr", "sha224 examples from RFC4634");
}
ATF_TC_BODY(isc_sha256, tc) {
	isc_sha256_t sha256;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("abc"),
			"0xBA7816BF8F01CFEA414140DE5DAE2223B00361A396177A"
				"9CB410FF61F20015AD",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("abcdbcdecdefdefgefghfghighijhijkijkljk"
				   "lmklmnlmnomnopnopq"),
			"0x248D6A61D20638B8E5C026930C3E6039A33CE45964FF21"
				"67F6ECEDD419DB06C1",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("a"),
			"0xCDC76E5C9914FB9281A1C7E284D73E67F1809A48A49720"
				"0E046D39CCC7112CD0",
			1000000 },
		/* Test 4 */
		{
			TEST_INPUT("01234567012345670123456701234567"),
			"0x594847328451BDFA85056225462CC1D867D877FB388DF0"
				"CE35F25AB5562BFBB5",
			20
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("\x19"),
			"0x68AA2E2EE5DFF96E3355E6C7EE373E3D6A4E17F75F9518"
				"D843709C0C9BC3E3D4",
			1
		},
#if 0
		/* Test 7 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 8 */
		{
			TEST_INPUT("\xe3\xd7\x25\x70\xdc\xdd\x78\x7c\xe3"
				   "\x88\x7a\xb2\xcd\x68\x46\x52"),
			"0x175EE69B02BA9B58E2B0A5FD13819CEA573F3940A94F82"
				"5128CF4209BEABB4E8",
			1
		},
#if 0
		/* Test 9 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 10 */
		{
			TEST_INPUT("\x83\x26\x75\x4e\x22\x77\x37\x2f\x4f\xc1"
				   "\x2b\x20\x52\x7a\xfe\xf0\x4d\x8a\x05\x69"
				   "\x71\xb1\x1a\xd5\x71\x23\xa7\xc1\x37\x76"
				   "\x00\x00\xd7\xbe\xf6\xf3\xc1\xf7\xa9\x08"
				   "\x3a\xa3\x9d\x81\x0d\xb3\x10\x77\x7d\xab"
				   "\x8b\x1e\x7f\x02\xb8\x4a\x26\xc7\x73\x32"
				   "\x5f\x8b\x23\x74\xde\x7a\x4b\x5a\x58\xcb"
				   "\x5c\x5c\xf3\x5b\xce\xe6\xfb\x94\x6e\x5b"
				   "\xd6\x94\xfa\x59\x3a\x8b\xeb\x3f\x9d\x65"
				   "\x92\xec\xed\xaa\x66\xca\x82\xa2\x9d\x0c"
				   "\x51\xbc\xf9\x33\x62\x30\xe5\xd7\x84\xe4"
				   "\xc0\xa4\x3f\x8d\x79\xa3\x0a\x16\x5c\xba"
				   "\xbe\x45\x2b\x77\x4b\x9c\x71\x09\xa9\x7d"
				   "\x13\x8f\x12\x92\x28\x96\x6f\x6c\x0a\xdc"
				   "\x10\x6a\xad\x5a\x9f\xdd\x30\x82\x57\x69"
				   "\xb2\xc6\x71\xaf\x67\x59\xdf\x28\xeb\x39"
				   "\x3d\x54\xd6"),
			"0x97DBCA7DF46D62C8A422C941DD7E835B8AD3361763F7E9"
				"B2D95F4F0DA6E1CCBC",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_sha256_init(&sha256);
		for(i = 0; i < testcase->repeats; i++) {
			isc_sha256_update(&sha256,
					  (const isc_uint8_t *) testcase->input,
					  testcase->input_len);
		}
		isc_sha256_final(digest, &sha256);
		/*
		*API inconsistency BUG HERE
		* in order to be consistant with the other isc_hash_final
		* functions the call should be
		* isc_sha224_final(&sha224, digest);
		 */
		tohexstr(digest, ISC_SHA256_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}

}

ATF_TC(isc_sha384);
ATF_TC_HEAD(isc_sha384, tc) {
	atf_tc_set_md_var(tc, "descr", "sha224 examples from RFC4634");
}
ATF_TC_BODY(isc_sha384, tc) {
	isc_sha384_t sha384;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("abc"),
			"0xCB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1"
				"631A8B605A43FF5BED8086072BA1E7CC2358BAEC"
				"A134C825A7",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("abcdefghbcdefghicdefghijdefghijkefghijkl"
				   "fghijklmghijklmnhijklmnoijklmnopjklmnopq"
				   "klmnopqrlmnopqrsmnopqrstnopqrstu"),
			"0x09330C33F71147E83D192FC782CD1B4753111B173B3B05"
				"D22FA08086E3B0F712FCC7C71A557E2DB966C3E9"
				"FA91746039",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("a"),
			"0x9D0E1809716474CB086E834E310A4A1CED149E9C00F248"
				"527972CEC5704C2A5B07B8B3DC38ECC4EBAE97DD"
				"D87F3D8985",
			1000000
		},
		/* Test 4 */
		{
			TEST_INPUT("01234567012345670123456701234567"),
			"0x2FC64A4F500DDB6828F6A3430B8DD72A368EB7F3A8322A"
				"70BC84275B9C0B3AB00D27A5CC3C2D224AA6B61A"
				"0D79FB4596",
			20
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 6 */
		{ TEST_INPUT("\xb9"),
			"0xBC8089A19007C0B14195F4ECC74094FEC64F01F9092928"
				"2C2FB392881578208AD466828B1C6C283D2722CF"
				"0AD1AB6938",
			1
		},
#if 0
		/* Test 7 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 8 */
		{
			TEST_INPUT("\xa4\x1c\x49\x77\x79\xc0\x37\x5f\xf1"
				   "\x0a\x7f\x4e\x08\x59\x17\x39"),
			"0xC9A68443A005812256B8EC76B00516F0DBB74FAB26D665"
				"913F194B6FFB0E91EA9967566B58109CBC675CC2"
				"08E4C823F7",
			1
		},
#if 0
		/* Test 9 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 10 */
		{
			TEST_INPUT("\x39\x96\x69\xe2\x8f\x6b\x9c\x6d\xbc\xbb"
				   "\x69\x12\xec\x10\xff\xcf\x74\x79\x03\x49"
				   "\xb7\xdc\x8f\xbe\x4a\x8e\x7b\x3b\x56\x21"
				   "\xdb\x0f\x3e\x7d\xc8\x7f\x82\x32\x64\xbb"
				   "\xe4\x0d\x18\x11\xc9\xea\x20\x61\xe1\xc8"
				   "\x4a\xd1\x0a\x23\xfa\xc1\x72\x7e\x72\x02"
				   "\xfc\x3f\x50\x42\xe6\xbf\x58\xcb\xa8\xa2"
				   "\x74\x6e\x1f\x64\xf9\xb9\xea\x35\x2c\x71"
				   "\x15\x07\x05\x3c\xf4\xe5\x33\x9d\x52\x86"
				   "\x5f\x25\xcc\x22\xb5\xe8\x77\x84\xa1\x2f"
				   "\xc9\x61\xd6\x6c\xb6\xe8\x95\x73\x19\x9a"
				   "\x2c\xe6\x56\x5c\xbd\xf1\x3d\xca\x40\x38"
				   "\x32\xcf\xcb\x0e\x8b\x72\x11\xe8\x3a\xf3"
				   "\x2a\x11\xac\x17\x92\x9f\xf1\xc0\x73\xa5"
				   "\x1c\xc0\x27\xaa\xed\xef\xf8\x5a\xad\x7c"
				   "\x2b\x7c\x5a\x80\x3e\x24\x04\xd9\x6d\x2a"
				   "\x77\x35\x7b\xda\x1a\x6d\xae\xed\x17\x15"
				   "\x1c\xb9\xbc\x51\x25\xa4\x22\xe9\x41\xde"
				   "\x0c\xa0\xfc\x50\x11\xc2\x3e\xcf\xfe\xfd"
				   "\xd0\x96\x76\x71\x1c\xf3\xdb\x0a\x34\x40"
				   "\x72\x0e\x16\x15\xc1\xf2\x2f\xbc\x3c\x72"
				   "\x1d\xe5\x21\xe1\xb9\x9b\xa1\xbd\x55\x77"
				   "\x40\x86\x42\x14\x7e\xd0\x96"),
			"0x4F440DB1E6EDD2899FA335F09515AA025EE177A79F4B4A"
				"AF38E42B5C4DE660F5DE8FB2A5B2FBD2A3CBFFD2"
				"0CFF1288C0",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_sha384_init(&sha384);
		for(i = 0; i < testcase->repeats; i++) {
			isc_sha384_update(&sha384,
					  (const isc_uint8_t *) testcase->input,
					  testcase->input_len);
		}
		isc_sha384_final(digest, &sha384);
		/*
		*API inconsistency BUG HERE
		* in order to be consistant with the other isc_hash_final
		* functions the call should be
		* isc_sha224_final(&sha224, digest);
		 */
		tohexstr(digest, ISC_SHA384_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}

}

ATF_TC(isc_sha512);
ATF_TC_HEAD(isc_sha512, tc) {
	atf_tc_set_md_var(tc, "descr", "sha224 examples from RFC4634");
}
ATF_TC_BODY(isc_sha512, tc) {
	isc_sha512_t sha512;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("abc"),
			"0xDDAF35A193617ABACC417349AE20413112E6FA4E89A97E"
				"A20A9EEEE64B55D39A2192992A274FC1A836BA3C"
				"23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("abcdefghbcdefghicdefghijdefghijkefghijkl"
				   "fghijklmghijklmnhijklmnoijklmnopjklmnopq"
				   "klmnopqrlmnopqrsmnopqrstnopqrstu"),
			"0x8E959B75DAE313DA8CF4F72814FC143F8F7779C6EB9F7F"
				"A17299AEADB6889018501D289E4900F7E4331B99"
				"DEC4B5433AC7D329EEB6DD26545E96E55B874BE909",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("a"),
			"0xE718483D0CE769644E2E42C7BC15B4638E1F98B13B2044"
				"285632A803AFA973EBDE0FF244877EA60A4CB043"
				"2CE577C31BEB009C5C2C49AA2E4EADB217AD8CC09B",
			1000000
		},
		/* Test 4 */
		{
			TEST_INPUT("01234567012345670123456701234567"),
			"0x89D05BA632C699C31231DED4FFC127D5A894DAD412C0E0"
				"24DB872D1ABD2BA8141A0F85072A9BE1E2AA04CF"
				"33C765CB510813A39CD5A84C4ACAA64D3F3FB7BAE9",
			20
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("\xD0"),
			"0x9992202938E882E73E20F6B69E68A0A7149090423D93C8"
				"1BAB3F21678D4ACEEEE50E4E8CAFADA4C85A54EA"
				"8306826C4AD6E74CECE9631BFA8A549B4AB3FBBA15",
			1
		},
#if 0
		/* Test 7 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 8 */
		{
			TEST_INPUT("\x8d\x4e\x3c\x0e\x38\x89\x19\x14\x91\x81"
				   "\x6e\x9d\x98\xbf\xf0\xa0"),
			"0xCB0B67A4B8712CD73C9AABC0B199E9269B20844AFB75AC"
				"BDD1C153C9828924C3DDEDAAFE669C5FDD0BC66F"
				"630F6773988213EB1B16F517AD0DE4B2F0C95C90F8",
			1
		},
#if 0
		/* Test 9 -- unimplemented optional functionality */
		{
			TEST_INPUT(""),
			"0xXXX",
			1
		},
#endif
		/* Test 10 */
		{
			TEST_INPUT("\xa5\x5f\x20\xc4\x11\xaa\xd1\x32\x80\x7a"
				   "\x50\x2d\x65\x82\x4e\x31\xa2\x30\x54\x32"
				   "\xaa\x3d\x06\xd3\xe2\x82\xa8\xd8\x4e\x0d"
				   "\xe1\xde\x69\x74\xbf\x49\x54\x69\xfc\x7f"
				   "\x33\x8f\x80\x54\xd5\x8c\x26\xc4\x93\x60"
				   "\xc3\xe8\x7a\xf5\x65\x23\xac\xf6\xd8\x9d"
				   "\x03\xe5\x6f\xf2\xf8\x68\x00\x2b\xc3\xe4"
				   "\x31\xed\xc4\x4d\xf2\xf0\x22\x3d\x4b\xb3"
				   "\xb2\x43\x58\x6e\x1a\x7d\x92\x49\x36\x69"
				   "\x4f\xcb\xba\xf8\x8d\x95\x19\xe4\xeb\x50"
				   "\xa6\x44\xf8\xe4\xf9\x5e\xb0\xea\x95\xbc"
				   "\x44\x65\xc8\x82\x1a\xac\xd2\xfe\x15\xab"
				   "\x49\x81\x16\x4b\xbb\x6d\xc3\x2f\x96\x90"
				   "\x87\xa1\x45\xb0\xd9\xcc\x9c\x67\xc2\x2b"
				   "\x76\x32\x99\x41\x9c\xc4\x12\x8b\xe9\xa0"
				   "\x77\xb3\xac\xe6\x34\x06\x4e\x6d\x99\x28"
				   "\x35\x13\xdc\x06\xe7\x51\x5d\x0d\x73\x13"
				   "\x2e\x9a\x0d\xc6\xd3\xb1\xf8\xb2\x46\xf1"
				   "\xa9\x8a\x3f\xc7\x29\x41\xb1\xe3\xbb\x20"
				   "\x98\xe8\xbf\x16\xf2\x68\xd6\x4f\x0b\x0f"
				   "\x47\x07\xfe\x1e\xa1\xa1\x79\x1b\xa2\xf3"
				   "\xc0\xc7\x58\xe5\xf5\x51\x86\x3a\x96\xc9"
				   "\x49\xad\x47\xd7\xfb\x40\xd2"),
		  "0xC665BEFB36DA189D78822D10528CBF3B12B3EEF7260399"
			  "09C1A16A270D48719377966B957A878E72058477"
			  "9A62825C18DA26415E49A7176A894E7510FD1451F5",
		  1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_sha512_init(&sha512);
		for(i = 0; i < testcase->repeats; i++) {
			isc_sha512_update(&sha512,
					  (const isc_uint8_t *) testcase->input,
					  testcase->input_len);
		}
		isc_sha512_final(digest, &sha512);
		/*
		*API inconsistency BUG HERE
		* in order to be consistant with the other isc_hash_final
		* functions the call should be
		* isc_sha224_final(&sha224, digest);
		 */
		tohexstr(digest, ISC_SHA512_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}

}

ATF_TC(isc_md5);
ATF_TC_HEAD(isc_md5, tc) {
	atf_tc_set_md_var(tc, "descr", "md5 example from RFC1321");
}
ATF_TC_BODY(isc_md5, tc) {
	isc_md5_t md5;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		{
			TEST_INPUT(""),
			"0xD41D8CD98F00B204E9800998ECF8427E",
			1
		},
		{
			TEST_INPUT("a"),
			"0x0CC175B9C0F1B6A831C399E269772661",
			1
		},
		{
			TEST_INPUT("abc"),
			"0x900150983CD24FB0D6963F7D28E17F72",
			1
		},
		{
			TEST_INPUT("message digest"),
			"0xF96B697D7CB7938D525A2F31AAF161D0",
			1
		},
		{
			TEST_INPUT("abcdefghijklmnopqrstuvwxyz"),
			"0xC3FCD3D76192E4007DFB496CCA67E13B",
			1
		},
		{
			TEST_INPUT("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklm"
				   "nopqrstuvwxyz0123456789"),
			"0xD174AB98D277D9F5A5611C2C9F419D9F",
			1
		},
		{
			TEST_INPUT("123456789012345678901234567890123456789"
				   "01234567890123456789012345678901234567890"),
			"0x57EDF4A22BE3C955AC49DA2E2107B67A",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	while (testcase->input != NULL && testcase->result != NULL) {
		isc_md5_init(&md5);
		for(i = 0; i < testcase->repeats; i++) {
			isc_md5_update(&md5,
				       (const isc_uint8_t *) testcase->input,
				       testcase->input_len);
		}
		isc_md5_final(&md5, digest);
		tohexstr(digest, ISC_MD5_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
	}
}

/* HMAC-SHA1 test */
ATF_TC(isc_hmacsha1);
ATF_TC_HEAD(isc_hmacsha1, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-SHA1 examples from RFC2104");
}
ATF_TC_BODY(isc_hmacsha1, tc) {
	isc_hmacsha1_t hmacsha1;

	UNUSED(tc);
	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0xB617318655057264E28BC0B6FB378C8EF146BE00",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79\x61"
				   "\x20\x77\x61\x6e\x74\x20\x66\x6f\x72\x20"
				   "\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0xEFFCDF6AE5EB2FA2D27416D5F184DF9C259A7C79",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0x125D7342B9AC11CD91A39AF48AA17B4F63F175D3",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0x4C9007F4026250C6BC8414F9BF50C86C2D7235DA",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0xAA4AE5E15272D00E95705637CE8A3B55ED402112", 1 },
		/* Test 7 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key and "
				   "Larger Than One Block-Size Data"),
			"0xE8E99D0F45237D786D6BBAA7965C7808BBFF1A91",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", 20 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 20 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
#endif
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 80 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 80 },
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacsha1_init(&hmacsha1, buffer, test_key->len);
		isc_hmacsha1_update(&hmacsha1,
				    (const isc_uint8_t *) testcase->input,
				    testcase->input_len);
		isc_hmacsha1_sign(&hmacsha1, digest, ISC_SHA1_DIGESTLENGTH);
		tohexstr(digest, ISC_SHA1_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}

/* HMAC-SHA224 test */
ATF_TC(isc_hmacsha224);
ATF_TC_HEAD(isc_hmacsha224, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-SHA224 examples from RFC4634");
}
ATF_TC_BODY(isc_hmacsha224, tc) {
	isc_hmacsha224_t hmacsha224;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0x896FB1128ABBDF196832107CD49DF33F47B4B1169912BA"
				"4F53684B22",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79\x61"
				   "\x20\x77\x61\x6e\x74\x20\x66\x6f\x72\x20"
				   "\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0xA30E01098BC6DBBF45690F3A7E9E6D0F8BBEA2A39E61480"
				"08FD05E44",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0x7FB3CB3588C6C1F6FFA9694D7D6AD2649365B0C1F65D69"
				"D1EC8333EA",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0x6C11506874013CAC6A2ABC1BB382627CEC6A90D86EFC01"
				"2DE7AFEC5A",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0x95E9A0DB962095ADAEBE9B2D6F0DBCE2D499F112F2D2B7"
				"273FA6870E",
			1
		},
		/* Test 7 */
		{
			TEST_INPUT("\x54\x68\x69\x73\x20\x69\x73\x20\x61\x20"
				   "\x74\x65\x73\x74\x20\x75\x73\x69\x6e\x67"
				   "\x20\x61\x20\x6c\x61\x72\x67\x65\x72\x20"
				   "\x74\x68\x61\x6e\x20\x62\x6c\x6f\x63\x6b"
				   "\x2d\x73\x69\x7a\x65\x20\x6b\x65\x79\x20"
				   "\x61\x6e\x64\x20\x61\x20\x6c\x61\x72\x67"
				   "\x65\x72\x20\x74\x68\x61\x6e\x20\x62\x6c"
				   "\x6f\x63\x6b\x2d\x73\x69\x7a\x65\x20\x64"
				   "\x61\x74\x61\x2e\x20\x54\x68\x65\x20\x6b"
				   "\x65\x79\x20\x6e\x65\x65\x64\x73\x20\x74"
				   "\x6f\x20\x62\x65\x20\x68\x61\x73\x68\x65"
				   "\x64\x20\x62\x65\x66\x6f\x72\x65\x20\x62"
				   "\x65\x69\x6e\x67\x20\x75\x73\x65\x64\x20"
				   "\x62\x79\x20\x74\x68\x65\x20\x48\x4d\x41"
				   "\x43\x20\x61\x6c\x67\x6f\x72\x69\x74\x68"
				   "\x6d\x2e"),
			"0x3A854166AC5D9F023F54D517D0B39DBD946770DB9C2B95"
				"C9F6F565D1",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", 20 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 20 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
#endif
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacsha224_init(&hmacsha224, buffer, test_key->len);
		isc_hmacsha224_update(&hmacsha224,
				      (const isc_uint8_t *) testcase->input,
				      testcase->input_len);
		isc_hmacsha224_sign(&hmacsha224, digest, ISC_SHA224_DIGESTLENGTH);
		tohexstr(digest, ISC_SHA224_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}

/* HMAC-SHA256 test */
ATF_TC(isc_hmacsha256);
ATF_TC_HEAD(isc_hmacsha256, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-SHA256 examples from RFC4634");
}
ATF_TC_BODY(isc_hmacsha256, tc) {
	isc_hmacsha256_t hmacsha256;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0xB0344C61D8DB38535CA8AFCEAF0BF12B881DC200C9833D"
				"A726E9376C2E32CFF7",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79\x61"
				   "\x20\x77\x61\x6e\x74\x20\x66\x6f\x72\x20"
				   "\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0x5BDCC146BF60754E6A042426089575C75A003F089D2739"
				"839DEC58B964EC3843",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0x773EA91E36800E46854DB8EBD09181A72959098B3EF8C1"
				"22D9635514CED565FE",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0x82558A389A443C0EA4CC819899F2083A85F0FAA3E578F8"
				"077A2E3FF46729665B",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0x60E431591EE0B67F0D8A26AACBF5B77F8E0BC6213728C5"
				"140546040F0EE37F54",
			1
		},
		/* Test 7 */
		{
			TEST_INPUT("\x54\x68\x69\x73\x20\x69\x73\x20\x61\x20"
				   "\x74\x65\x73\x74\x20\x75\x73\x69\x6e\x67"
				   "\x20\x61\x20\x6c\x61\x72\x67\x65\x72\x20"
				   "\x74\x68\x61\x6e\x20\x62\x6c\x6f\x63\x6b"
				   "\x2d\x73\x69\x7a\x65\x20\x6b\x65\x79\x20"
				   "\x61\x6e\x64\x20\x61\x20\x6c\x61\x72\x67"
				   "\x65\x72\x20\x74\x68\x61\x6e\x20\x62\x6c"
				   "\x6f\x63\x6b\x2d\x73\x69\x7a\x65\x20\x64"
				   "\x61\x74\x61\x2e\x20\x54\x68\x65\x20\x6b"
				   "\x65\x79\x20\x6e\x65\x65\x64\x73\x20\x74"
				   "\x6f\x20\x62\x65\x20\x68\x61\x73\x68\x65"
				   "\x64\x20\x62\x65\x66\x6f\x72\x65\x20\x62"
				   "\x65\x69\x6e\x67\x20\x75\x73\x65\x64\x20"
				   "\x62\x79\x20\x74\x68\x65\x20\x48\x4d\x41"
				   "\x43\x20\x61\x6c\x67\x6f\x72\x69\x74\x68"
				   "\x6d\x2e"),
			"0x9B09FFA71B942FCB27635FBCD5B0E944BFDC63644F0713"
				"938A7F51535C3A35E2",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", 20 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 20 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
#endif
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacsha256_init(&hmacsha256, buffer, test_key->len);
		isc_hmacsha256_update(&hmacsha256,
				      (const isc_uint8_t *) testcase->input,
				      testcase->input_len);
		isc_hmacsha256_sign(&hmacsha256, digest, ISC_SHA256_DIGESTLENGTH);
		tohexstr(digest, ISC_SHA256_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}

/* HMAC-SHA384 test */
ATF_TC(isc_hmacsha384);
ATF_TC_HEAD(isc_hmacsha384, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-SHA384 examples from RFC4634");
}
ATF_TC_BODY(isc_hmacsha384, tc) {
	isc_hmacsha384_t hmacsha384;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0xAFD03944D84895626B0825F4AB46907F15F9DADBE4101E"
				"C682AA034C7CEBC59CFAEA9EA9076EDE7F4AF152"
				"E8B2FA9CB6",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79\x61"
				   "\x20\x77\x61\x6e\x74\x20\x66\x6f\x72\x20"
				   "\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0xAF45D2E376484031617F78D2B58A6B1B9C7EF464F5A01B"
				"47E42EC3736322445E8E2240CA5E69E2C78B3239"
				"ECFAB21649",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0x88062608D3E6AD8A0AA2ACE014C8A86F0AA635D947AC9F"
				"EBE83EF4E55966144B2A5AB39DC13814B94E3AB6"
				"E101A34F27",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0x3E8A69B7783C25851933AB6290AF6CA77A998148085000"
				"9CC5577C6E1F573B4E6801DD23C4A7D679CCF8A3"
				"86C674CFFB",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0x4ECE084485813E9088D2C63A041BC5B44F9EF1012A2B58"
				"8F3CD11F05033AC4C60C2EF6AB4030FE8296248D"
				"F163F44952",
			1
		},
		/* Test 7 */
		{
			TEST_INPUT("\x54\x68\x69\x73\x20\x69\x73\x20\x61\x20"
				   "\x74\x65\x73\x74\x20\x75\x73\x69\x6e\x67"
				   "\x20\x61\x20\x6c\x61\x72\x67\x65\x72\x20"
				   "\x74\x68\x61\x6e\x20\x62\x6c\x6f\x63\x6b"
				   "\x2d\x73\x69\x7a\x65\x20\x6b\x65\x79\x20"
				   "\x61\x6e\x64\x20\x61\x20\x6c\x61\x72\x67"
				   "\x65\x72\x20\x74\x68\x61\x6e\x20\x62\x6c"
				   "\x6f\x63\x6b\x2d\x73\x69\x7a\x65\x20\x64"
				   "\x61\x74\x61\x2e\x20\x54\x68\x65\x20\x6b"
				   "\x65\x79\x20\x6e\x65\x65\x64\x73\x20\x74"
				   "\x6f\x20\x62\x65\x20\x68\x61\x73\x68\x65"
				   "\x64\x20\x62\x65\x66\x6f\x72\x65\x20\x62"
				   "\x65\x69\x6e\x67\x20\x75\x73\x65\x64\x20"
				   "\x62\x79\x20\x74\x68\x65\x20\x48\x4d\x41"
				   "\x43\x20\x61\x6c\x67\x6f\x72\x69\x74\x68"
				   "\x6d\x2e"),
			"0x6617178E941F020D351E2F254E8FD32C602420FEB0B8FB"
				"9ADCCEBB82461E99C5A678CC31E799176D3860E6"
				"110C46523E",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", 20 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 20 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
#endif
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacsha384_init(&hmacsha384, buffer, test_key->len);
		isc_hmacsha384_update(&hmacsha384,
				      (const isc_uint8_t *) testcase->input,
				      testcase->input_len);
		isc_hmacsha384_sign(&hmacsha384, digest, ISC_SHA384_DIGESTLENGTH);
		tohexstr(digest, ISC_SHA384_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}

/* HMAC-SHA512 test */
ATF_TC(isc_hmacsha512);
ATF_TC_HEAD(isc_hmacsha512, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-SHA512 examples from RFC4634");
}
ATF_TC_BODY(isc_hmacsha512, tc) {
	isc_hmacsha512_t hmacsha512;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0x87AA7CDEA5EF619D4FF0B4241A1D6CB02379F4E2CE4EC2"
				"787AD0B30545E17CDEDAA833B7D6B8A702038B27"
				"4EAEA3F4E4BE9D914EEB61F1702E696C203A126854",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79\x61"
				   "\x20\x77\x61\x6e\x74\x20\x66\x6f\x72\x20"
				   "\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0x164B7A7BFCF819E2E395FBE73B56E0A387BD64222E831F"
				"D610270CD7EA2505549758BF75C05A994A6D034F"
				"65F8F0E6FDCAEAB1A34D4A6B4B636E070A38BCE737",
			1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0xFA73B0089D56A284EFB0F0756C890BE9B1B5DBDD8EE81A"
				"3655F83E33B2279D39BF3E848279A722C806B485"
				"A47E67C807B946A337BEE8942674278859E13292FB",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0xB0BA465637458C6990E5A8C5F61D4AF7E576D97FF94B87"
				"2DE76F8050361EE3DBA91CA5C11AA25EB4D67927"
				"5CC5788063A5F19741120C4F2DE2ADEBEB10A298DD",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
#endif
		/* Test 6 */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0x80B24263C7C1A3EBB71493C1DD7BE8B49B46D1F41B4AEE"
				"C1121B013783F8F3526B56D037E05F2598BD0FD2"
				"215D6A1E5295E64F73F63F0AEC8B915A985D786598",
			1
		},
		/* Test 7 */
		{
			TEST_INPUT("\x54\x68\x69\x73\x20\x69\x73\x20\x61\x20"
				   "\x74\x65\x73\x74\x20\x75\x73\x69\x6e\x67"
				   "\x20\x61\x20\x6c\x61\x72\x67\x65\x72\x20"
				   "\x74\x68\x61\x6e\x20\x62\x6c\x6f\x63\x6b"
				   "\x2d\x73\x69\x7a\x65\x20\x6b\x65\x79\x20"
				   "\x61\x6e\x64\x20\x61\x20\x6c\x61\x72\x67"
				   "\x65\x72\x20\x74\x68\x61\x6e\x20\x62\x6c"
				   "\x6f\x63\x6b\x2d\x73\x69\x7a\x65\x20\x64"
				   "\x61\x74\x61\x2e\x20\x54\x68\x65\x20\x6b"
				   "\x65\x79\x20\x6e\x65\x65\x64\x73\x20\x74"
				   "\x6f\x20\x62\x65\x20\x68\x61\x73\x68\x65"
				   "\x64\x20\x62\x65\x66\x6f\x72\x65\x20\x62"
				   "\x65\x69\x6e\x67\x20\x75\x73\x65\x64\x20"
				   "\x62\x79\x20\x74\x68\x65\x20\x48\x4d\x41"
				   "\x43\x20\x61\x6c\x67\x6f\x72\x69\x74\x68"
				   "\x6d\x2e"),
			"0xE37B6A775DC87DBAA4DFA9F96E5E3FFDDEBD71F8867289"
				"865DF5A32D20CDC944B6022CAC3C4982B10D5EEB"
				"55C3E4DE15134676FB6DE0446065C97440FA8C6A58",
			1
		},
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", 20 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 20 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
#endif
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacsha512_init(&hmacsha512, buffer, test_key->len);
		isc_hmacsha512_update(&hmacsha512,
				      (const isc_uint8_t *) testcase->input,
				      testcase->input_len);
		isc_hmacsha512_sign(&hmacsha512, digest, ISC_SHA512_DIGESTLENGTH);
		tohexstr(digest, ISC_SHA512_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}


/* HMAC-MD5 Test */
ATF_TC(isc_hmacmd5);
ATF_TC_HEAD(isc_hmacmd5, tc) {
	atf_tc_set_md_var(tc, "descr", "HMAC-MD5 examples from RFC2104");
}
ATF_TC_BODY(isc_hmacmd5, tc) {
	isc_hmacmd5_t hmacmd5;

	UNUSED(tc);

	/*
	 * These are the various test vectors.  All of these are passed
	 * through the hash function and the results are compared to the
	 * result specified here.
	 */
	hash_testcase_t testcases[] = {
		/* Test 1 */
		{
			TEST_INPUT("\x48\x69\x20\x54\x68\x65\x72\x65"),
			"0x9294727A3638BB1C13F48EF8158BFC9D",
			1
		},
		/* Test 2 */
		{
			TEST_INPUT("\x77\x68\x61\x74\x20\x64\x6f\x20\x79"
				   "\x61\x20\x77\x61\x6e\x74\x20\x66\x6f"
				   "\x72\x20\x6e\x6f\x74\x68\x69\x6e\x67\x3f"),
			"0x750C783E6AB0B503EAA86E310A5DB738", 1
		},
		/* Test 3 */
		{
			TEST_INPUT("\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"
				   "\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD\xDD"),
			"0x56BE34521D144C88DBB8C733F0E8B3F6",
			1
		},
		/* Test 4 */
		{
			TEST_INPUT("\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"
				   "\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd"),
			"0x697EAF0ACA3A3AEA3A75164746FFAA79",
			1
		},
#if 0
		/* Test 5 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test With Truncation"),
			"0x4C1A03424B55E07FE7F27BE1",
			1
		},
		/* Test 6 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key - "
				   "Hash Key First"),
			"0xAA4AE5E15272D00E95705637CE8A3B55ED402112",
			1
		 },
		/* Test 7 -- unimplemented optional functionality */
		{
			TEST_INPUT("Test Using Larger Than Block-Size Key and "
				   "Larger Than One Block-Size Data"),
			"0xE8E99D0F45237D786D6BBAA7965C7808BBFF1A91",
			1
		},
#endif
		{ NULL, 0, NULL, 1 }
	};

	hash_testcase_t *testcase = testcases;

	hash_test_key_t test_keys[] = {
		/* Key 1 */
		{ "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b"
		  "\x0b\x0b\x0b\x0b\x0b\x0b", 16 },
		/* Key 2 */
		{ "Jefe", 4 },
		/* Key 3 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa", 16 },
		/* Key 4 */
		{ "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
		  "\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
		  "\x15\x16\x17\x18\x19", 25 },
#if 0
		/* Key 5 */
		{ "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c"
		  "\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c", 20 },
		/* Key 6 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
		/* Key 7 */
		{ "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa"
		  "\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa", 131 },
#endif
		{ "", 0 }
	};

	hash_test_key_t *test_key = test_keys;

	while (testcase->input != NULL && testcase->result != NULL) {
		memmove(buffer, test_key->key, test_key->len);
		isc_hmacmd5_init(&hmacmd5, buffer, test_key->len);
		isc_hmacmd5_update(&hmacmd5,
				   (const isc_uint8_t *) testcase->input,
				   testcase->input_len);
		isc_hmacmd5_sign(&hmacmd5, digest);
		tohexstr(digest, ISC_MD5_DIGESTLENGTH, str);
		ATF_CHECK_STREQ(str, testcase->result);

		testcase++;
		test_key++;
	}
}

/*
 * Main
 */
ATF_TP_ADD_TCS(tp) {
	ATF_TP_ADD_TC(tp, isc_hmacmd5);
	ATF_TP_ADD_TC(tp, isc_hmacsha1);
	ATF_TP_ADD_TC(tp, isc_hmacsha224);
	ATF_TP_ADD_TC(tp, isc_hmacsha256);
	ATF_TP_ADD_TC(tp, isc_hmacsha384);
	ATF_TP_ADD_TC(tp, isc_hmacsha512);
	ATF_TP_ADD_TC(tp, isc_md5);
	ATF_TP_ADD_TC(tp, isc_sha1);
	ATF_TP_ADD_TC(tp, isc_sha224);
	ATF_TP_ADD_TC(tp, isc_sha256);
	ATF_TP_ADD_TC(tp, isc_sha384);
	ATF_TP_ADD_TC(tp, isc_sha512);
	return (atf_no_error());
}