]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
7 years agocorrect the configuration of the default allow-notify ACL cleanup-allow-notify
Evan Hunt [Tue, 5 Jun 2018 20:57:10 +0000 (13:57 -0700)] 
correct the configuration of the default allow-notify ACL

7 years agoMerge branch '254-invalid-rpz-prefix-length-log-message-improperly-displays-the-prefi...
Mark Andrews [Mon, 25 Jun 2018 07:29:23 +0000 (03:29 -0400)] 
Merge branch '254-invalid-rpz-prefix-length-log-message-improperly-displays-the-prefix-labels-not-length' into 'master'

Resolve ""invalid RPZ prefix length" log message improperly displays the prefix labels, not length"

Closes #254

See merge request isc-projects/bind9!270

7 years agoAdd CHANGES entry
Mukund Sivaraman [Sat, 12 May 2018 03:27:56 +0000 (08:57 +0530)] 
Add CHANGES entry

7 years agoAdd system test
Mukund Sivaraman [Sat, 12 May 2018 03:03:18 +0000 (08:33 +0530)] 
Add system test

7 years agoPatch in trailing nul character to print just the length label (for various cases...
Mukund Sivaraman [Sat, 12 May 2018 02:50:57 +0000 (08:20 +0530)] 
Patch in trailing nul character to print just the length label (for various cases below)

7 years agoMerge branch '343-casecompare-of-ninfo-tkey-txt-have-wrong-return-type' into 'master'
Mark Andrews [Mon, 25 Jun 2018 02:57:20 +0000 (22:57 -0400)] 
Merge branch '343-casecompare-of-ninfo-tkey-txt-have-wrong-return-type' into 'master'

Resolve "casecompare of NINFO, TKEY, TXT have wrong return type"

Closes #343

See merge request isc-projects/bind9!384

7 years agofix casecompare return type for ninfo, tkey, txt
Mark Andrews [Mon, 18 Jun 2018 01:10:42 +0000 (11:10 +1000)] 
fix casecompare return type for ninfo, tkey, txt

7 years agoMerge branch '355-bind-9-13-1-windows-build-fails' into 'master'
Ondřej Surý [Fri, 22 Jun 2018 10:37:33 +0000 (06:37 -0400)] 
Merge branch '355-bind-9-13-1-windows-build-fails' into 'master'

Resolve "BIND 9.13.1: Windows Build Fails"

Closes #355

See merge request isc-projects/bind9!400

7 years agoadd zoneverify.c and zoneverify.h to libdns.vcxproj.filters.in and libdns.vcxproj.in
Mark Andrews [Fri, 22 Jun 2018 00:46:06 +0000 (10:46 +1000)] 
add zoneverify.c and zoneverify.h to libdns.vcxproj.filters.in and libdns.vcxproj.in

7 years agoMerge branch '356-client-cookie-is-being-hashed-twice-when-computing-the-dns-server...
Mark Andrews [Fri, 22 Jun 2018 07:40:23 +0000 (03:40 -0400)] 
Merge branch '356-client-cookie-is-being-hashed-twice-when-computing-the-dns-server-cookie' into 'master'

Resolve "Client cookie is being hashed twice when computing the DNS server cookie."

Closes #356

See merge request isc-projects/bind9!399

7 years ago4975. [bug] The server cookie computation for sha1 and sha256 did
Mark Andrews [Fri, 22 Jun 2018 00:26:21 +0000 (10:26 +1000)] 
4975.   [bug]           The server cookie computation for sha1 and sha256 did
                        not match the method described in RFC 7873. [GL #356]

7 years agothe client cookie was being hashed twice when computing the server cookie for sha1...
Mark Andrews [Thu, 21 Jun 2018 23:50:10 +0000 (09:50 +1000)] 
the client cookie was being hashed twice when computing the server cookie for sha1 and sha256

7 years agoMerge branch '351-fix-with-cmocka=path-build' into 'master'
Ondřej Surý [Thu, 21 Jun 2018 12:22:48 +0000 (08:22 -0400)] 
Merge branch '351-fix-with-cmocka=path-build' into 'master'

Resolve "configure fails unless --enable-developer is specified"

Closes #351

See merge request isc-projects/bind9!393

7 years agoUse cmocka_set_message_output as test function for cmocka presence
Ondřej Surý [Thu, 21 Jun 2018 12:12:02 +0000 (14:12 +0200)] 
Use cmocka_set_message_output as test function for cmocka presence

7 years agoMerge branch '350-merge-9-13-1-release-to-master' into 'master'
Ondřej Surý [Thu, 21 Jun 2018 10:40:12 +0000 (06:40 -0400)] 
Merge branch '350-merge-9-13-1-release-to-master' into 'master'

Resolve "Merge 9.13.1 release to master"

Closes #350

See merge request isc-projects/bind9!392

7 years agoprepare 9.13.1 release
Evan Hunt [Fri, 8 Jun 2018 19:50:21 +0000 (12:50 -0700)] 
prepare 9.13.1 release

7 years agoMerge branch '351-disable-cmocka-by-default' into 'master'
Ondřej Surý [Thu, 21 Jun 2018 10:29:10 +0000 (06:29 -0400)] 
Merge branch '351-disable-cmocka-by-default' into 'master'

Resolve "configure fails unless --enable-developer is specified"

Closes #351

See merge request isc-projects/bind9!391

7 years agoCleanup cmocka related whitespace
Ondřej Surý [Thu, 21 Jun 2018 10:20:07 +0000 (12:20 +0200)] 
Cleanup cmocka related whitespace

7 years agoSet with_cmocka=no by default
Ondřej Surý [Thu, 21 Jun 2018 10:18:56 +0000 (12:18 +0200)] 
Set with_cmocka=no by default

7 years agoMerge branch '250-integrate-cmocka-into-our-build-scripts' into 'master'
Ondřej Surý [Wed, 20 Jun 2018 10:38:40 +0000 (06:38 -0400)] 
Merge branch '250-integrate-cmocka-into-our-build-scripts' into 'master'

Add cmocka support to infrastructure (build) files

Closes #250

See merge request isc-projects/bind9!369

7 years agoAdd support for cmocka assert testing by overriding REQUIRE/INSIST/... macros when...
Ondřej Surý [Thu, 14 Jun 2018 07:07:23 +0000 (09:07 +0200)] 
Add support for cmocka assert testing by overriding REQUIRE/INSIST/... macros when UNIT_TESTING is defined

7 years agoAdd --wrap linker option detection
Ondřej Surý [Thu, 14 Jun 2018 07:05:08 +0000 (09:05 +0200)] 
Add --wrap linker option detection

7 years agoEnforce TAP output from cmocka based unit tests
Ondřej Surý [Mon, 4 Jun 2018 11:01:42 +0000 (13:01 +0200)] 
Enforce TAP output from cmocka based unit tests

7 years agoIntegrate cmocka unit testing framework to kyua
Ondřej Surý [Mon, 4 Jun 2018 06:54:58 +0000 (08:54 +0200)] 
Integrate cmocka unit testing framework to kyua

7 years agoMerge branch 'check-gitlab-existence' into 'master'
Ondřej Surý [Tue, 19 Jun 2018 07:27:28 +0000 (03:27 -0400)] 
Merge branch 'check-gitlab-existence' into 'master'

Check if gitlab exists in git-replay-merge.sh

See merge request isc-projects/bind9!388

7 years agoCheck if gitlab exists in git-replay-merge.sh{
Witold Kręcicki [Tue, 19 Jun 2018 07:18:59 +0000 (09:18 +0200)] 
Check if gitlab exists in git-replay-merge.sh{

7 years agoMerge branch '336-default-of-rrset-order-silently-changed-to-be-sorted-rather-than...
Mark Andrews [Tue, 19 Jun 2018 00:34:14 +0000 (20:34 -0400)] 
Merge branch '336-default-of-rrset-order-silently-changed-to-be-sorted-rather-than-random' into 'master'

Resolve "Default of rrset-order silently changed to be sorted (rather than random)"

Closes #336

See merge request isc-projects/bind9!379

7 years agoRestore default rrset-order to random.
Mark Andrews [Fri, 15 Jun 2018 03:34:27 +0000 (13:34 +1000)] 
Restore default rrset-order to random.

7 years agoMerge branch '266-convert-verifyzone-to-a-libdns-function' into 'master'
Michał Kępień [Fri, 15 Jun 2018 08:58:30 +0000 (04:58 -0400)] 
Merge branch '266-convert-verifyzone-to-a-libdns-function' into 'master'

Convert verifyzone() to a libdns function

Closes #266

See merge request isc-projects/bind9!291

7 years agoAdd CHANGES entry
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Add CHANGES entry

4973. [func] verifyzone() and the functions it uses were moved to
libdns and refactored to prevent exit() from being
called upon failure.  A side effect of that is that
dnssec-signzone and dnssec-verify now check for memory
leaks upon shutdown. [GL #266]

7 years agoFix coding style issues in lib/dns/zoneverify.c
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Fix coding style issues in lib/dns/zoneverify.c

7 years agoConstify function arguments throughout lib/dns/zoneverify.c
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Constify function arguments throughout lib/dns/zoneverify.c

Where possible, apply the const qualifier to arguments of functions
present in lib/dns/zoneverify.c.

7 years agoPropagate dns_zoneverify_dnssec() errors to callers
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Propagate dns_zoneverify_dnssec() errors to callers

Since exit() is no longer called upon any dns_zoneverify_dnssec() error,
verification failures should be signalled to callers.  Make
dns_zoneverify_dnssec() return an isc_result_t and handle both success
and error appropriately in bin/dnssec/dnssec-signzone.c and
bin/dnssec/dnssec-verify.c.  This enables memory leak detection during
shutdown of these tools and causes dnssec-signzone to print signing
statistics even when zone verification fails.

7 years agoRemove fatal() and check_result() from lib/dns/zoneverify.c
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Remove fatal() and check_result() from lib/dns/zoneverify.c

Since no function in lib/dns/zoneverify.c uses fatal() or check_result()
any more, remove them.

7 years agoReplace remaining fprintf() calls with zoneverify_*() calls
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Replace remaining fprintf() calls with zoneverify_*() calls

Replace all fprintf() calls inside lib/dns/zoneverify.c, but outside of
zoneverify_log_error() and zoneverify_print() with calls to these
functions.

7 years agoProperly handle record_found() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Properly handle record_found() errors

record_found() returns an isc_result_t, but its value is not checked.
Modify the only call site of record_found() so that its errors are
properly handled.

7 years agoDo not call exit() upon dns_zoneverify_dnssec() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon dns_zoneverify_dnssec() errors

Replace the remaining fatal() calls inside dns_zoneverify_dnssec() with
zoneverify_log_error() and zoneverify_print() calls, ensuring proper
cleanup.

7 years agoDo not call exit() upon record_nsec3() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon record_nsec3() errors

Replace the fprintf() call inside record_nsec3() with a
zoneverify_log_error() call.  Remove the "mctx" argument of
record_nsec3() as it can be extracted from "vctx".

Modify one of the record_nsec3() call sites so that its errors are
properly handled.

7 years agoDo not call exit() upon match_nsec3() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon match_nsec3() errors

Make match_nsec3() return the verification result through a separate
pointer, thus making it possible to signal errors using function
return value.  Replace all check_result() and fprintf() calls inside
match_nsec3() with zoneverify_log_error() calls and error handling code.

Modify all call sites of match_nsec3() so that its errors are properly
handled.

7 years agoDo not call exit() upon isoptout() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon isoptout() errors

Replace all check_result() calls inside isoptout() with
zoneverify_log_error() calls and error handling code.  Enable isoptout()
to signal errors to the caller using its return value.

Modify the call site of isoptout() so that its errors are properly
handled.

7 years agoDo not call exit() upon NSEC3 verification errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon NSEC3 verification errors

Make verifynsec3(), verifynsec3s(), and verifyemptynodes() return the
verification result through a separate pointer, thus making it possible
to signal errors using function return values.  Replace all
check_result() and fprintf() calls inside these functions with
zoneverify_log_error() calls and error handling code.

Modify all call sites of verifynsec3(), verifynsec3s(), and
verifyemptynodes() so that their errors are properly handled.

7 years agoDo not call exit() upon verifynsec() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon verifynsec() errors

Make verifynsec() return the verification result through a separate
pointer, thus making it possible to signal errors using function
return value.  Replace all check_result() and fprintf() calls inside
verifynsec() with zoneverify_log_error() calls and error handling code.

Modify the call site of verifynsec() so that its errors are properly
handled.

Rename "tresult" to "tvresult" in order to improve variable naming
consistency between functions.

7 years agoDo not call exit() upon check_no_rrsig() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon check_no_rrsig() errors

Replace all check_result() and fprintf() calls inside check_no_rrsig()
with zoneverify_log_error() calls and error handling code.  Enable
check_no_rrsig() to signal errors to the caller using its return
value.

Modify the call site of check_no_rrsig() so that its errors are properly
handled.

Define buffer size using a named constant rather than a plain integer.

7 years agoDo not call exit() upon verifyset() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon verifyset() errors

Replace all check_result() and fprintf() calls inside verifyset() with
zoneverify_log_error() calls and error handling code.  Enable
verifyset() to signal errors to the caller using its return value.

Modify the call site of verifyset() so that its errors are properly
handled.

Define buffer sizes using named constants rather than plain integers.

7 years agoDo not call exit() upon verifynode() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon verifynode() errors

Make verifynode() return the verification result through a separate
pointer, thus making it possible to signal errors using function
return value.  Replace all fatal() and check_result() calls inside
verifynode() with zoneverify_log_error() calls and error handling code.
Add a REQUIRE assertion to emphasize verifynode() may be called with
some of its arguments set to NULL.

Modify all call sites of verifynode() so that its errors are properly
handled.

7 years agoDo not call exit() upon is_empty() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon is_empty() errors

Replace the check_result() call inside is_empty() with a
zoneverify_log_error() call and error handling code.  Enable is_empty()
to signal errors to the caller using its return value.

Modify the call site of is_empty() so that its errors are properly
handled.

7 years agoDo not call exit() upon check_no_nsec() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon check_no_nsec() errors

Replace the fatal() call inside check_no_nsec() with a
zoneverify_log_error() call.  Enable check_no_nsec() to signal errors to
the caller using its return value.

Modify all call sites of check_no_nsec() so that its errors are properly
handled.

7 years agoDo not call exit() upon verify_nodes() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon verify_nodes() errors

Replace all fatal(), check_result(), and check_dns_dbiterator_current()
calls inside verify_nodes() with zoneverify_log_error() calls and error
handling code.  Enable verify_nodes() to signal errors to the caller
using its return value.

Modify the call site of verify_nodes() so that its errors are properly
handled.

Free all heap elements upon verification context cleanup as a
verification error may prevent them from being freed elsewhere.

Remove the check_dns_dbiterator_current() macro as it is no longer used
anywhere in lib/dns/zoneverify.c.

7 years agoDo not call exit() upon check_bad_algorithms() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon check_bad_algorithms() errors

Replace all fatal() and fprintf() calls inside check_bad_algorithms()
with zoneverify_print() calls and error handling code.  Enable
check_bad_algorithms() to signal errors to the caller using its return
value.

Modify the call site of check_bad_algorithms() so that its errors are
properly handled.

7 years agoDo not call exit() upon check_dnskey() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon check_dnskey() errors

Replace all fatal() and check_result() calls inside check_dnskey() with
zoneverify_log_error() calls and error handling code.  Enable
check_dnskey() to signal errors to the caller using its return value.

Modify the call site of check_dnskey() so that its errors are properly
handled.

7 years agoDo not call exit() upon check_apex_rrsets() errors
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not call exit() upon check_apex_rrsets() errors

Replace all fatal() calls inside check_apex_rrsets() with
zoneverify_log_error() calls and error handling code.  Enable
check_apex_rrsets() to signal errors to the caller using its return
value.

Modify the call site of check_apex_rrsets() so that its errors are
properly handled.

7 years agoUse RUNTIME_CHECK instead of check_result() where it is safe to do so
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Use RUNTIME_CHECK instead of check_result() where it is safe to do so

Replace calls to check_result() with RUNTIME_CHECK assertions for all
dns_rdata_tostruct() calls in lib/dns/zoneverify.c as this function
cannot fail when the "mctx" argument is NULL (and that is the case for
all call sites of this function throughout lib/dns/zoneverify.c).

7 years agoExtract print_summary() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract print_summary() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for printing a
summary for a fully signed zone to a separate function.

7 years agoExtract check_bad_algorithms() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract check_bad_algorithms() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for checking
whether the zone is fully signed using all active algorithms to a
separate function.

7 years agoExtract verify_nodes() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract verify_nodes() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for verifying
DNSSEC signatures against the DNSKEY RRset at zone apex and checking
consistency of NSEC/NSEC3 chains to a separate function.

7 years agoExtract determine_active_algorithms() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract determine_active_algorithms() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for determining
and printing a list of DNSSEC algorithms active in the verified zone to
a separate function.

7 years agoExtract check_dnskey_sigs() from check_dnskey()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract check_dnskey_sigs() from check_dnskey()

Extract the part of check_dnskey() responsible for determining active
algorithms in the verified zone based on the signatures at zone apex to
a separate function.

7 years agoExtract check_dnskey() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract check_dnskey() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for checking the
DNSKEY RRset at zone apex to a separate function.

7 years agoExtract check_apex_rrsets() from dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Extract check_apex_rrsets() from dns_zoneverify_dnssec()

Extract the part of dns_zoneverify_dnssec() responsible for fetching and
preliminarily checking DNSKEY, SOA, NSEC, and NSEC3PARAM RRsets from
zone apex to a separate function.

7 years agoImplement zoneverify_log_error() and zoneverify_print()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Implement zoneverify_log_error() and zoneverify_print()

These functions will be used in the process of replacing fatal(),
check_result(), and fprintf() calls throughout lib/dns/zoneverify.c with
code that does not call exit().  They are intended for:

  - zoneverify_log_error(): logging problems encountered while
    performing zone verification,

  - zoneverify_print(): printing status messages and reports which are
    only useful in standalone tools.

To make using dns_zone_logv() possible, add a new "zone" argument to
dns_zoneverify_dnssec() that standalone tools are expected to set to
NULL.

7 years agoMove algorithm tables to the verification context structure
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Move algorithm tables to the verification context structure

Tables representing algorithm use in the verified zone are commonly
accessed throughout dns_zoneverify_dnssec().  Move them into the
structure representing a verification context.  While this does not
really simplify currently existing code, it will facilitate passing data
around between smaller functions that dns_zoneverify_dnssec() is about
to get split into.

7 years agoMove commonly used dns_rdataset_t structures to the verification context structure
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Move commonly used dns_rdataset_t structures to the verification context structure

Eight structures representing four RRsets and their signatures are
commonly accessed throughout dns_zoneverify_dnssec().  Move them into
the structure representing a verification context.  While this does not
really simplify currently existing code, it will facilitate passing data
around between smaller functions that dns_zoneverify_dnssec() is about
to get split into.

7 years agoMove commonly used variables to the verification context structure
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Move commonly used variables to the verification context structure

Move variables commonly used throughout dns_zoneverify_dnssec() and its
helper functions to the structure representing a verification context in
order to reduce the number of arguments passed between functions.

7 years agoDo not use static variables in lib/dns/zoneverify.c
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Do not use static variables in lib/dns/zoneverify.c

Make dns_zoneverify_dnssec() eligible for multithreaded use by replacing
the static variables it accesses with a stack-allocated structure
containing these variables.  Implement setup and cleanup routines for
that structure, ensuring no error in these routines causes exit() to be
called any more.  Pass a pointer to that structure to functions
requiring access to variables which were previously static.

7 years agoRename verifyzone() to dns_zoneverify_dnssec()
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Rename verifyzone() to dns_zoneverify_dnssec()

This makes the function's name match the naming convention used for
libdns functions.

7 years agoMove verifyzone() and its dependencies into lib/dns/zoneverify.c
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Move verifyzone() and its dependencies into lib/dns/zoneverify.c

This commit only moves code around, with the following exceptions:

  - the check_dns_dbiterator_current() macro and functions
    is_delegation() and has_dname() were removed from
    bin/dnssec/dnssectool.{c,h} and duplicated in two locations:
    bin/dnssec/dnssec-signzone.c and lib/dns/zoneverify.c; these
    functions are used both by the code in bin/dnssec/dnssec-signzone.c
    and verifyzone(), but are not a good fit for being exported by a
    code module responsible for zone verification,

  - fatal() and check_result() were duplicated in lib/dns/zoneverify.c
    as static functions which do not use the "program" variable any more
    (as it is only set by the tools in bin/dnssec/); this is a temporary
    step which only aims to prevent compilation from breaking - these
    duplicate functions will be removed once lib/dns/zoneverify.c is
    refactored not to use them,

  - the list of header files included by lib/dns/zoneverify.c was
    expanded to encompass all header files that are actually used by the
    code in that file,

  - a description of the purpose of the commented out "fields" inside
    struct nsec3_chain_fixed was added.

7 years agoReplace type_format() and TYPE_FORMATSIZE with their libdns counterparts
Michał Kępień [Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)] 
Replace type_format() and TYPE_FORMATSIZE with their libdns counterparts

Rather than use custom functions and macros local to bin/dnssec/, use
their counterparts provided by libdns.

7 years agoMerge branch '341-constify-dns_rdata_tostruct' into 'master'
Michał Kępień [Fri, 15 Jun 2018 06:57:54 +0000 (02:57 -0400)] 
Merge branch '341-constify-dns_rdata_tostruct' into 'master'

Resolve "constify dns_rdata_tostruct"

Closes #341

See merge request isc-projects/bind9!378

7 years agoDeclare the 'rdata' argument for dns_rdata_tostruct() to be const
Mark Andrews [Fri, 15 Jun 2018 01:48:27 +0000 (11:48 +1000)] 
Declare the 'rdata' argument for dns_rdata_tostruct() to be const

7 years agoMerge branch 'fix-pkcs11-build' into 'master'
Ondřej Surý [Thu, 14 Jun 2018 22:06:22 +0000 (18:06 -0400)] 
Merge branch 'fix-pkcs11-build' into 'master'

Fix pkcs11 build

See merge request isc-projects/bind9!377

7 years agoAdd better EMPTY_TRANSLATION_UNIT to isc/util.h
Ondřej Surý [Thu, 14 Jun 2018 21:55:17 +0000 (23:55 +0200)] 
Add better EMPTY_TRANSLATION_UNIT to isc/util.h

7 years agoPut proper guards in openssl_shim.{c,h} when compiling with PKCS#11
Ondřej Surý [Thu, 14 Jun 2018 21:54:48 +0000 (23:54 +0200)] 
Put proper guards in openssl_shim.{c,h} when compiling with PKCS#11

7 years agoMerge branch 'tests-server-stale-prereq' into 'master'
Ondřej Surý [Thu, 14 Jun 2018 14:36:14 +0000 (10:36 -0400)] 
Merge branch 'tests-server-stale-prereq' into 'master'

Fix serve-stale requirement, skip without Time::HiRes

See merge request isc-projects/bind9!356

7 years agoFix server-stale requirement, skip without Time::HiRes
Petr Menšík [Tue, 5 Jun 2018 19:38:29 +0000 (21:38 +0200)] 
Fix server-stale requirement, skip without Time::HiRes

7 years agoMerge branch '309-fix-default-recursion' into 'master'
Ondřej Surý [Thu, 14 Jun 2018 12:51:55 +0000 (08:51 -0400)] 
Merge branch '309-fix-default-recursion' into 'master'

Resolve "Recursion improperly allowed by default"

Closes #309

See merge request isc-projects/bind9!372

7 years agoadd a regression test for default allow-recursion settings
Evan Hunt [Wed, 6 Jun 2018 22:54:49 +0000 (15:54 -0700)] 
add a regression test for default allow-recursion settings

7 years agoallow-recursion could incorrectly inherit from the default allow-query
Evan Hunt [Mon, 4 Jun 2018 22:57:58 +0000 (15:57 -0700)] 
allow-recursion could incorrectly inherit from the default allow-query

7 years agoMerge branch '337-remove-copyright-information-from-generated-configure-file' into...
Ondřej Surý [Thu, 14 Jun 2018 07:56:00 +0000 (03:56 -0400)] 
Merge branch '337-remove-copyright-information-from-generated-configure-file' into 'master'

Resolve "Remove copyright information from generated configure file"

Closes #337

See merge request isc-projects/bind9!370

7 years agoRemove copyright information from the generated configure file
Ondřej Surý [Thu, 14 Jun 2018 07:46:33 +0000 (09:46 +0200)] 
Remove copyright information from the generated configure file

7 years agoMerge branch '328-add-openssl-shim' into 'master'
Ondřej Surý [Wed, 13 Jun 2018 12:27:21 +0000 (08:27 -0400)] 
Merge branch '328-add-openssl-shim' into 'master'

Add thin openssl shim for OpenSSL 1.1.x and LibreSSL compatibility functions

See merge request isc-projects/bind9!367

7 years agoUpdate copyrights and whitespace
Ondřej Surý [Wed, 13 Jun 2018 11:44:34 +0000 (13:44 +0200)] 
Update copyrights and whitespace

7 years agoAdd thin openssl shim for OpenSSL 1.1.x and LibreSSL compatibility functions
Ondřej Surý [Wed, 13 Jun 2018 11:42:25 +0000 (13:42 +0200)] 
Add thin openssl shim for OpenSSL 1.1.x and LibreSSL compatibility functions

7 years agoMerge branch 'fix-qmin-test-addr-order' into 'master'
Witold Krecicki [Wed, 13 Jun 2018 11:58:34 +0000 (07:58 -0400)] 
Merge branch 'fix-qmin-test-addr-order' into 'master'

Fix qname minimization test failures with A/AAAA ordering

See merge request isc-projects/bind9!368

7 years agoFix qname minimization test failures with A/AAAA ordering
Witold Kręcicki [Wed, 13 Jun 2018 11:47:26 +0000 (13:47 +0200)] 
Fix qname minimization test failures with A/AAAA ordering

7 years agoMerge branch '298-fix-dname-handling-in-dnssec-tools' into 'master'
Michał Kępień [Wed, 13 Jun 2018 11:29:20 +0000 (07:29 -0400)] 
Merge branch '298-fix-dname-handling-in-dnssec-tools' into 'master'

Fix DNAME handling in DNSSEC tools

Closes #298

See merge request isc-projects/bind9!345

7 years agoAdd CHANGES entry
Michał Kępień [Wed, 13 Jun 2018 10:19:54 +0000 (12:19 +0200)] 
Add CHANGES entry

4971. [bug] dnssec-signzone and dnssec-verify did not treat records
below a DNAME as out-of-zone data. [GL #298]

7 years agoPull out the saving of the zone cut into a separate function
Mark Andrews [Wed, 13 Jun 2018 07:23:27 +0000 (17:23 +1000)] 
Pull out the saving of the zone cut into a separate function

7 years agoTreat records below a DNAME as out-of-zone data
Michał Kępień [Wed, 13 Jun 2018 10:19:54 +0000 (12:19 +0200)] 
Treat records below a DNAME as out-of-zone data

DNAME records indicate bottom of zone and thus no records below a DNAME
should be DNSSEC-signed or included in NSEC(3) chains.  Add a helper
function, has_dname(), for detecting DNAME records at a given node.
Prevent signing DNAME-obscured records.  Check that DNAME-obscured
records are not signed.

7 years agoMerge branch '328-remove-openssl-patch' into 'master'
Ondřej Surý [Wed, 13 Jun 2018 09:01:49 +0000 (05:01 -0400)] 
Merge branch '328-remove-openssl-patch' into 'master'

Remove the OpenSSL PKCS#11 patches

See merge request isc-projects/bind9!362

7 years agoRemove the OpenSSL PKCS#11 patches - not really needed now
Ondřej Surý [Wed, 13 Jun 2018 08:53:21 +0000 (10:53 +0200)] 
Remove the OpenSSL PKCS#11 patches - not really needed now

7 years agoMerge branch '284-unify-keyfile-to-configuration-conversions-in-system-tests' into...
Michał Kępień [Wed, 13 Jun 2018 06:06:15 +0000 (02:06 -0400)] 
Merge branch '284-unify-keyfile-to-configuration-conversions-in-system-tests' into 'master'

Unify keyfile-to-configuration conversions in system tests

Closes #284

See merge request isc-projects/bind9!312

7 years agoAdd helper variables in mkeys system test
Michał Kępień [Wed, 13 Jun 2018 05:47:12 +0000 (07:47 +0200)] 
Add helper variables in mkeys system test

The keyfile and key ID for the original managed key do not change
throughout the mkeys system test.  Keep them in helper variables to
prevent calling "cat" multiple times and improve code readability.

7 years agoReplace duplicated code snippet with calls to helper functions
Michał Kępień [Wed, 13 Jun 2018 05:47:12 +0000 (07:47 +0200)] 
Replace duplicated code snippet with calls to helper functions

Reduce code duplication by replacing a code snippet repeated throughout
system tests using "trusted-keys" and/or "managed-keys" configuration
sections with calls to keyfile_to_{managed,trusted}_keys() helper
functions.

7 years agoAdd helper functions for converting keyfile data into configuration sections
Michał Kępień [Wed, 13 Jun 2018 05:47:12 +0000 (07:47 +0200)] 
Add helper functions for converting keyfile data into configuration sections

Add a set of helper functions for system test scripts which enable
converting key data from a set of keyfiles to either a "trusted-keys"
section or a "managed-keys" section suitable for including in a
resolver's configuration file.

7 years agoMerge branch '16-qname-minimization' into 'master'
Witold Krecicki [Tue, 12 Jun 2018 11:44:36 +0000 (07:44 -0400)] 
Merge branch '16-qname-minimization' into 'master'

QNAME Minimization

See merge request isc-projects/bind9!253

7 years agoAdd qname-minimization off as an option; test fixes
Witold Kręcicki [Tue, 12 Jun 2018 08:20:43 +0000 (10:20 +0200)] 
Add qname-minimization off as an option; test fixes

7 years agoCHANGES entry
Witold Kręcicki [Wed, 30 May 2018 16:18:55 +0000 (18:18 +0200)] 
CHANGES entry

7 years agoqname minimization: ARM entry
Witold Kręcicki [Tue, 29 May 2018 23:06:01 +0000 (01:06 +0200)] 
qname minimization: ARM entry

7 years agonits
Evan Hunt [Tue, 29 May 2018 22:03:01 +0000 (15:03 -0700)] 
nits

- capitalize QNAME in the doc
- regenerate options/docbook
- whitespace

7 years agoqname-minimization: Some post-review style/minor fixes
Witold Kręcicki [Tue, 29 May 2018 08:22:34 +0000 (10:22 +0200)] 
qname-minimization: Some post-review style/minor fixes