Compare commits

...
Author SHA1 Message Date
Ondřej Surý deb4859738 Apply honggfuzz patch 2018-07-19 14:28:44 +00:00
Michał Kępień 78965b3dcc Merge branch '419-do-not-replace-lo0-address-on-solaris-v9_12' into 'v9_12'
[v9_12] Do not replace lo0 address on Solaris

See merge request isc-projects/bind9!537
2018-07-17 02:28:37 -04:00
Michał Kępień f8ff854888 Do not replace lo0 address on Solaris
lo0 and lo0:0 are the same interface on Solaris.  Make sure
bin/tests/system/ifconfig.sh does not touch lo0:0 in order to prevent it
from changing the address of the loopback interface on Solaris.

(cherry picked from commit 618921902a)
2018-07-17 08:19:58 +02:00
Michał Kępień e050792f13 Merge branch '365-add-centos-to-ci-v9_12' into 'v9_12'
[v9_12] Add CentOS/RHEL 6 to GitLab CI

See merge request isc-projects/bind9!532
2018-07-13 06:25:52 -04:00
Michał Kępień de00137f42 Add CentOS 6/7 to CI
Modify .gitlab-ci.yml so that every CI pipeline also builds and tests
BIND on CentOS versions 6 and 7.  Use --disable-warn-error on CentOS 6
since it uses GCC 4.4.7 which suffers from bugs causing bogus warnings
to be generated, e.g.:

    sigs_test.c: In function 'compare_tuples':
    sigs_test.c:75: warning: declaration of 'index' shadows a global declaration
    /usr/include/string.h:489: warning: shadowed declaration is here
    sigs_test.c: In function 'updatesigs_test':
    sigs_test.c:193: warning: declaration of 'index' shadows a global declaration
    /usr/include/string.h:489: warning: shadowed declaration is here

(cherry picked from commit f0966d1485)
2018-07-13 12:14:46 +02:00
Michał Kępień e56a528c70 Do not spam console if "git status --ignored" fails during tests
The "git status" command in Git versions before 1.7.2 does not support
the "--ignored" option.  Prevent spamming the console when running
system tests from a Git repository on a host with an ancient Git version
installed.

(cherry picked from commit 2be97feb46)
2018-07-13 12:14:46 +02:00
Michał Kępień 106b56d7c9 Remove IDN subtest from the "digdelv" system test
The output of certain "dig +idnout" invocations may be locale-dependent.
Remove the "dig +idnout" subtest from the "digdelv" system test as IDN
support is already thoroughly tested by the "idna" system test.

(cherry picked from commit fd30a03f2b)
2018-07-13 12:14:46 +02:00
Michał Kępień 7fe0f00a3b Improve error handling in idn_ace_to_locale()
While idn2_to_unicode_8zlz() takes a 'flags' argument, it is ignored and
thus cannot be used to perform IDN checks on the output string.

The bug in libidn2 versions before 2.0.5 was not that a call to
idn2_to_unicode_8zlz() with certain flags set did not cause IDN checks
to be performed.  The bug was that idn2_to_unicode_8zlz() did not check
whether a conversion can be performed between UTF-8 and the current
locale's character encoding.  In other words, with libidn2 version
2.0.5+, if the current locale's character encoding is ASCII, then
idn2_to_unicode_8zlz() will fail when it is passed any Punycode string
which decodes to a non-ASCII string, even if it is a valid IDNA2008
name.

Rework idn_ace_to_locale() so that invalid IDNA2008 names are properly
and consistently detected for all libidn2 versions and locales.

Update the "idna" system test accordingly.  Add checks for processing a
server response containing Punycode which decodes to an invalid IDNA2008
name.  Fix invalid subtest description.

(cherry picked from commit b896fc4972)
2018-07-13 12:14:14 +02:00
Michał Kępień 4c7eea4437 Include conf.sh from all prereq.sh scripts
Every prereq.sh script must include bin/tests/system/conf.sh, otherwise
if some prerequisite is not met, errors about echo_i not being found
will be printed instead of actual error messages.

(cherry picked from commit cc0e8cda71)
2018-07-13 08:23:15 +02:00
Michał Kępień 0561d6bb0c Update ATF path in the ./configure invocation used during CI
The Docker images used for CI install ATF to /usr, not /usr/local.
Update the ./configure invocation in .gitlab-ci.yml accordingly in order
to prevent confusion.

(cherry picked from commit 12df6829d1)
2018-07-13 08:23:09 +02:00
Michał Kępień 82b03e949f Add "-f" to command line arguments for autoreconf in autogen.sh
Depending on tool versions being used, "autoreconf -i" may not update
all Autoconf-generated files, which in turn may result in build errors.
Make autogen.sh call autoreconf with the "-f" command line argument to
ensure all Autoconf-generated files are updated when autogen.sh is run.

(cherry picked from commit 45e77a3680)
2018-07-13 08:23:03 +02:00
Ondřej Surý 12772c743e Merge branch 'fix-last-USE_ENGINE-usage-v9_12' into 'v9_12'
Replace the last missed usage of USE_ENGINE with OPENSSL_NO_ENGINE

See merge request isc-projects/bind9!529
2018-07-12 06:45:29 -04:00
Ondřej Surý 0b93c77024 Replace the last missed usage of USE_ENGINE with OPENSSL_NO_ENGINE 2018-07-12 06:33:54 -04:00
Mark Andrews bac8cab38d Merge branch '373-generic_tostruct_tlsa-incorrectly-initialises-common-structure-v9_12' into 'v9_12'
Resolve "generic_tostruct_tlsa incorrectly initialises common structure."

See merge request isc-projects/bind9!525
2018-07-11 19:54:43 -04:00
Mark Andrews 26a2ab4152 remove re-initalisation of common structure
(cherry picked from commit 6e06d3e7c6)
2018-07-12 09:48:03 +10:00
Evan Hunt c677a1a987 Merge branch '403-missing-sanity-check-for-call-to-next_token-in-file-dig-c-v9_12' into 'v9_12'
Resolve "Missing Sanity Check for call to next_token() in file 'dig.c'"

See merge request isc-projects/bind9!523
2018-07-11 15:06:26 -04:00
Evan Hunt 6fc6b3ab69 CHANGES
(cherry picked from commit 8ae1774089)
2018-07-11 11:58:52 -07:00
Mark AndrewsandEvan Hunt 9f126bac32 add test for bad dig option '+ednsopt=:' being handled gracefully
(cherry picked from commit ad86878d61)
2018-07-11 11:58:52 -07:00
Bill ParkerandEvan Hunt 62d047658a check code is non NULL
(cherry picked from commit 408bcf9c07)
2018-07-11 11:58:49 -07:00
Evan Hunt f6fce682c9 Merge branch '235-enhance-denied-logging-for-dynamic-updates-v9_12' into 'v9_12'
Add tcp-self policy tests.

See merge request isc-projects/bind9!521
2018-07-11 14:15:31 -04:00
Mukund SivaramanandEvan Hunt d54a38d733 Add system tests for "tcp-self" update-policy
(cherry picked from commit a7e6a584ea)
2018-07-11 11:05:37 -07:00
Michał Kępień 73f653c243 Merge branch '392-send-upstream-tat-queries-for-locally-served-zones-v9_12' into 'v9_12'
[v9_12] Trust anchor telemetry queries are not sent for locally served zones

See merge request isc-projects/bind9!516
2018-07-11 03:15:47 -04:00
Michał Kępień e54cddc0c1 Add CHANGES entry
4994.	[bug]		Trust anchor telemetry queries were not being sent
			upstream for locally served zones. [GL #392]

(cherry picked from commit a64750e428)
2018-07-11 08:59:29 +02:00
Michał Kępień 873c091408 Send upstream TAT queries for locally served zones
Trying to resolve a trust anchor telemetry query for a locally served
zone does not cause upstream queries to be sent as the response is
determined just by consulting local data.  Work around this issue by
calling dns_view_findzonecut() first in order to determine the NS RRset
for a given domain name and then passing the zone cut found to
dns_resolver_createfetch().

Note that this change only applies to TAT queries generated by the
resolver itself, not to ones received from downstream resolvers.

(cherry picked from commit a7657dc150)
2018-07-11 08:59:29 +02:00
Michał Kępień 2e7dd0d61f Extract TAT QNAME preparation to a separate function
Extract the part of dotat() reponsible for preparing the QNAME for a TAT
query to a separate function in order to limit the number of local
variables used by each function and improve code readability.

Rename 'name' to 'origin' to better convey the purpose of that variable.
Also mark it with the const qualifier.

(cherry picked from commit 127810e512)
2018-07-11 08:59:29 +02:00
Ondřej Surý ec786f42bd Merge branch 'pkcs11-missing-gitignore-v9_12' into 'v9_12'
PKCS#11 build missing some .gitignore files and ignore .gitignore files

See merge request isc-projects/bind9!514
2018-07-11 02:19:58 -04:00
Ondřej Surý 8a143b1582 Don't check copyrights on .gitignore files
(cherry picked from commit 718c527e1d)
2018-07-11 08:12:48 +02:00
Ondřej Surý bbd82796bd Add .gitignore for PKCS#11 test files
(cherry picked from commit 96907d636d)
2018-07-11 08:11:21 +02:00
Evan Hunt 363dee7e0c Merge branch 'git-replay-merge-no-push-option-v9_12' into 'v9_12'
Add --no-push and --push options and DONT_PUSH environment variable

See merge request isc-projects/bind9!510
2018-07-11 00:03:55 -04:00
Evan Hunt 458f273444 fixed an argument counting bug 2018-07-10 20:59:49 -07:00
Ondřej SurýandEvan Hunt e50988255c Add --no-push and --push options and DONT_PUSH environment as default to control what happens after merge
(cherry picked from commit 23f69e5626)
2018-07-10 20:58:19 -07:00
Evan Hunt c87c42acb5 Merge branch 'ci-check-libs' into 'v9_12'
check correctness of win32 .def files in CI 'precheck' step

See merge request isc-projects/bind9!505
2018-07-10 23:38:24 -04:00
Evan Hunt f74fc06ede add checklibs to precheck CI step 2018-07-10 20:31:21 -07:00
Evan Hunt 4e657c1430 Merge branch 'remove-redundant-test-v9_12' into 'v9_12'
remove redundant test

See merge request isc-projects/bind9!502
2018-07-10 22:11:45 -04:00
Mark AndrewsandEvan Hunt 85d7298387 remove redundant test
(cherry picked from commit 6eec7fe092)
2018-07-10 19:05:01 -07:00
Evan Hunt 70c7e02c53 Merge branch '379-trust-anchor-telemetry-log-should-include-client-ip-address-v9_12' into 'v9_12'
Resolve "trust anchor telemetry log should include client IP address"

See merge request isc-projects/bind9!500
2018-07-10 21:36:37 -04:00
Mark AndrewsandEvan Hunt 0f180d976a add CHANGES note 2018-07-10 18:29:13 -07:00
Mark AndrewsandEvan Hunt d1539d991a fix spelling of 'telemetry'
(cherry picked from commit 4f18b6a09a)
2018-07-10 18:28:51 -07:00
Mark AndrewsandEvan Hunt 0ed6214375 use extracted netaddr rather than client->destaddr
(cherry picked from commit 69fd3f5ba4)
2018-07-10 18:28:50 -07:00
Evan Hunt e42ec0531b Merge branch '378-run-xmllint-on-xml-and-docbook-in-precheck-v9_12' into 'v9_12'
Check correctness of *.xml, *.docbook, and *.html during precheck

See merge request isc-projects/bind9!498
2018-07-10 20:57:27 -04:00
Mark AndrewsandEvan Hunt 01003dd321 Resolve "run xmllint on *.xml and *.docbook in precheck"
(cherry picked from commit bb1937aaec)
2018-07-10 17:50:06 -07:00
Evan Hunt ed12266e64 Merge branch '401-null-pointer-de-reference-found-in-bind-9-12-1-p2-v9_12' into 'v9_12'
Resolve "NULL Pointer de-reference found in BIND 9.12.1-P2"

See merge request isc-projects/bind9!495
2018-07-10 17:45:24 -04:00
Evan Hunt ed3febd737 CHANGES 2018-07-10 14:38:45 -07:00
Bill ParkerandEvan Hunt 05669a987a check param_template[i].pValue is non NULL
(cherry picked from commit 8ac0152651)
2018-07-10 14:38:23 -07:00
Michał Kępień 8195ee7ac5 Merge branch '399-do-not-use-net-dns-nameserver-in-the-serve-stale-system-test-v9_12' into 'v9_12'
[v9_12] Do not use Net::DNS::Nameserver in the "serve-stale" system test

See merge request isc-projects/bind9!494
2018-07-10 09:22:25 -04:00
Michał Kępień 77929046ec Do not use Net::DNS::Nameserver in the "serve-stale" system test
Net::DNS versions older than 0.67 respond to queries sent to a
Net::DNS::Nameserver even if its ReplyHandler returns undef.  This makes
the "serve-stale" system test fail as it takes advantage of the newer
behavior.  Since the latest Net::DNS version available with stock
RHEL/CentOS 6 packages is 0.65 and we officially support that operating
system, bin/tests/system/serve-stale/ans2/ans.pl should behave
consistently for various Net::DNS versions.  Ensure that by reworking it
so that it does not use Net::DNS::Nameserver.

(cherry picked from commit c4209418a5)
2018-07-10 15:15:18 +02:00
Michał Kępień a20495b8bf Merge branch '393-fix-a-net-dns-version-quirk-in-the-resolver-system-test-v9_12' into 'v9_12'
[v9_12] Fix a Net::DNS version quirk in the "resolver" system test

See merge request isc-projects/bind9!492
2018-07-10 09:14:41 -04:00
Michał Kępień 655dccf4ea Fix a Net::DNS version quirk in the "resolver" system test
Net::DNS versions older than 0.68 insert a ./ANY RR into the QUESTION
section if the latter is empty.  Since the latest Net::DNS version
available with stock RHEL/CentOS 6 packages is 0.65 and we officially
support that operating system, bin/tests/system/resolver/ans8/ans.pl
should behave consistently for various Net::DNS versions.  Ensure that
by making handleUDP() return the query ID and flags generated by
Net::DNS with 8 zero bytes appended.

(cherry picked from commit 6c3c6aea37)
2018-07-10 15:07:38 +02:00
Witold Krecicki df69b89f21 Merge branch 'fix-synth-from-dnssec-dname-handling-v9_12' into 'v9_12'
Don't synthesize NXDOMAIN from NSEC for records under a DNAME.

See merge request isc-projects/bind9!491
2018-07-10 04:04:29 -04:00
Mark AndrewsandWitold Kręcicki 687ca4412a the presence of a DNAME record proves that the name does not exist in the zone but as we don't want to use that for NXDMOMAIN return DNS_R_DNAME from dns_nsec_noexistnodata
(cherry picked from commit 8ef23f9fb0)
2018-07-10 09:50:35 +02:00
Witold Kręcicki e263fe91c0 Don't synthesize NXDOMAIN from NSEC for records under a DNAME
(cherry picked from commit 7f60bb39df)
2018-07-10 09:50:30 +02:00
Mark Andrews 8561c61013 Merge branch '402-memory-leak-found-in-file-fuzz-c-in-bind-9-12-1-p2-v9_12' into 'v9_12'
Resolve "Memory Leak found in file 'fuzz.c' in BIND-9.12.1-P2"

See merge request isc-projects/bind9!489
2018-07-10 01:14:12 -04:00
Mark Andrews 22327b4cdf free rbuf
(cherry picked from commit ecb2f20324)
2018-07-10 14:37:52 +10:00
Evan Hunt 3631aeb070 Merge branch 'prep-release-v9_12_2' into 'v9_12'
prep 9.12.2

See merge request isc-projects/bind9!472
2018-07-03 03:08:14 -04:00
Tinderbox User 355c8f0e55 prep 9.12.2 2018-07-03 06:57:10 +00:00
Evan Hunt 3a84d617bf Merge branch 'fix-readme-v9_12' into 'v9_12'
Fix README

See merge request isc-projects/bind9!465
2018-07-02 20:23:13 -04:00
Evan Hunt ec9e85260f fix version ordering 2018-07-02 17:19:05 -07:00
Evan Hunt 56cf466766 Merge branch 'prep-release-v9_12_2rc2' into 'v9_12'
prep 9.12.2rc2

See merge request isc-projects/bind9!450
2018-06-28 00:55:59 -04:00
Tinderbox User bbf35634c0 prep 9.12.2rc2 2018-06-28 04:42:37 +00:00
Evan Hunt 17b51354f1 Merge branch '339-issues-with-large-journal-entries-v9_12' into 'v9_12'
Fix handling of large journal entries.

See merge request isc-projects/bind9!444
2018-06-27 21:33:46 -04:00
Evan Hunt ded4119b36 CHANGES, release note
(cherry picked from commit 2aee33f412)
2018-06-27 18:26:53 -07:00
Witold KręcickiandEvan Hunt cbb73df1f9 Fallback to normal procedure if creating of ixfr-from-differences fails
(cherry picked from commit b1254430df)
2018-06-27 18:25:14 -07:00
Witold KręcickiandEvan Hunt 1a5cba631e Fix some issues with large journal entries
(cherry picked from commit 0db7130f2b)
2018-06-27 18:25:13 -07:00
Mark Andrews cebcdadad1 Merge branch '366-missing-dereference-in-require-statement-v9_12' into 'v9_12'
Resolve "Missing dereference in REQUIRE statement?"

See merge request isc-projects/bind9!440
2018-06-27 03:43:57 -04:00
Mark Andrews df6951a2bb cfg_parse_boolean's REQUIRE test for ret was incomplete.
(cherry picked from commit f1ee5e4a16)
2018-06-27 17:37:00 +10:00
Evan Hunt 89f7c7230d Merge branch '275-add-permanent-option-to-disable-server-side-cookies-v9_12' into 'v9_12'
[v9_12]: Resolve "Provide a mechanism (build or runtime) to turn off server-side support for RFC7873"

See merge request isc-projects/bind9!415
2018-06-26 18:23:39 -04:00
Ondřej SurýandEvan Hunt a7c5fad628 Un-deprecate the answer-cookie option 2018-06-26 15:16:40 -07:00
Evan Hunt 41e2423d37 Merge branch '260-queries-with-empty-question-section-return-noerror-v9_12' into 'v9_12'
Resolve "Queries with empty question section (and otherwise query message of undetermined RDCLASS) return NOERROR instead of FORMERR"

See merge request isc-projects/bind9!435
2018-06-26 17:43:09 -04:00
Evan Hunt 07a0638c94 CHANGES
(cherry picked from commit 2b075c2881)
2018-06-26 14:36:36 -07:00
Mukund SivaramanandEvan Hunt ed29b84e16 return FORMERR when question section is empty if COOKIE is not present
(cherry picked from commit 06d3106002)
2018-06-26 14:36:34 -07:00
Ondřej Surý fbd85297eb Merge branch 'add-git-replay-merge-v9_12' into 'v9_12'
Add git replay merge to v9_12

See merge request isc-projects/bind9!429
2018-06-26 15:19:37 -04:00
Ondřej Surý 65144c4bf7 Add git-replay-merge.sh script to v9_12 2018-06-26 20:29:07 +02:00
Witold Krecicki 0d2172eeba Merge branch '180-fix-cmsgbuf-usage-v9_12' into 'v9_12'
Resolve "Intermittent recursive resolver issues [socket.c:2135]"

See merge request isc-projects/bind9!427
2018-06-26 14:25:39 -04:00
Witold Kręcicki 4007a9d020 Use completely static-sized buffers
(cherry picked from commit 49f90025a0)
2018-06-26 20:18:59 +02:00
Witold Kręcicki da63e95612 Fix socket cmsg buffer usage
(cherry picked from commit d79be7dd5e)
2018-06-26 20:12:58 +02:00
Evan Hunt 9e85d16004 Merge branch '288-named-checkconf-does-not-recognize-errors-related-to-in-view-zones-v9_12' into 'v9_12'
Resolve "named-checkconf does not recognize errors related to in-view zones"

See merge request isc-projects/bind9!423
2018-06-26 12:53:55 -04:00
Mark AndrewsandEvan Hunt 7f31e67c16 CHANGES, copyright
(cherry picked from commit f7d346357e)
2018-06-26 09:04:48 -07:00
Mark AndrewsandEvan Hunt 665f9093d2 construct a symtab of valid in-view targets then check that the target exists
(cherry picked from commit e01a4bcb20)
2018-06-26 09:03:47 -07:00
Michał Kępień 7d993ffb0b Merge branch '321-only-request-permitted-capabilities-in-non-libcap-builds-v9_12' into 'v9_12'
[v9_12] Only request permitted capabilities in non-libcap builds

See merge request isc-projects/bind9!417
2018-06-26 08:03:26 -04:00
Michał Kępień 731b003854 Add CHANGES entry
4979.	[bug]		Non-libcap builds were not checking whether all
			requested capabilities are present in the permitted
			capability set. [GL #321]
2018-06-26 13:18:00 +02:00
Michał Kępień 8c66f32e53 Only request permitted capabilities in non-libcap builds
While libcap-enabled builds check whether any capability named requests
is within the permitted capability set, non-libcap builds just try
requesting them, which potentially causes a misleading error message to
be output ("Operation not permitted: please ensure that the capset
kernel module is loaded").  Ensure non-libcap builds also check whether
any requested capability is within the permitted capability set.
2018-06-26 13:18:00 +02:00
Michał Kępień b7200143f4 Merge branch '312-fix-rpz-system-test-v9_12' into 'v9_12'
[v9_12] Fix rpz system test

See merge request isc-projects/bind9!416
2018-06-26 06:52:06 -04:00
Michał Kępień 80e8f4c366 Add CHANGES entry
4978.	[test]		Fix error handling and resolver configuration in the
			"rpz" system test. [GL #312]

(cherry picked from commit 51522a2b84)
2018-06-26 12:43:47 +02:00
Michał Kępień 6a2c606690 Do not use IANA DNSSEC keys in the "rpz" system test
With "dnssec-validation" now defaulting to "auto", it needs to be
explicitly set to "yes" (the previous default value) for all validating
resolvers used in system tests.  Ensure that requirement is satisfied by
the resolvers used in the "rpz" system test.

(cherry picked from commit ff6b717955)
2018-06-26 12:43:47 +02:00
Michał Kępień cee0c23d0a Determine "rpz" system test mode based on $mode rather than $DNSRPS_TEST_MODE
Change 4897 modified the way the $DNSRPS_TEST_MODE variable is used in
bin/tests/system/rpz/tests.sh without updating all references to it,
which i.a. causes the $native and $dnsrps variables to not be set in the
default testing mode, effectively preventing failed checks from being
propagated to the final result of the test.  Use $mode instead of
$DNSRPS_TEST_MODE where appropriate to fix error handling in the "rpz"
system test.

(cherry picked from commit 730c6651a0)
2018-06-26 12:43:47 +02:00
Evan Hunt 90e762a1cf Merge branch '247-log-the-remaining-v-info-at-startup' into 'v9_12'
Resolve "Log the remaining -V info at startup"

Closes #247

See merge request isc-projects/bind9!249
2018-06-25 15:02:33 -07:00
Mark AndrewsandEvan Hunt 74bfd11a5f log the remaining -V info at startup
(cherry picked from commit 33ff03db58)
2018-06-25 15:02:31 -07:00
Mark Andrews 9eb2ff6367 Merge branch '254-invalid-rpz-prefix-length-log-message-improperly-displays-the-prefix-labels-not-length-v9_12' into 'v9_12'
Resolve ""invalid RPZ prefix length" log message improperly displays the prefix labels, not length"

See merge request isc-projects/bind9!408
2018-06-25 03:39:54 -04:00
Mukund SivaramanandMark Andrews a769e80796 Add CHANGES entry
(cherry picked from commit 90e886cfc0)
2018-06-25 17:33:15 +10:00
Mukund SivaramanandMark Andrews 19bad5a7f3 Add system test
(cherry picked from commit 2bf388a31b)
2018-06-25 17:33:15 +10:00
Mukund SivaramanandMark Andrews 82d5a44dfd Patch in trailing nul character to print just the length label (for various cases below)
(cherry picked from commit 6a756ab654)
2018-06-25 17:33:15 +10:00
Mark Andrews e9f7ef733d Merge branch '343-casecompare-of-ninfo-tkey-txt-have-wrong-return-type-v9_12' into 'v9_12'
Resolve "casecompare of NINFO, TKEY, TXT have wrong return type"

See merge request isc-projects/bind9!404
2018-06-24 23:19:40 -04:00
Mark Andrews 537e3a0a14 fix casecompare return type for ninfo, tkey, txt
(cherry picked from commit 3ba1d1e43b)
2018-06-25 13:08:47 +10:00
Mark Andrews 393b974ed3 Merge branch '356-client-cookie-is-being-hashed-twice-when-computing-the-dns-server-cookie-v9_12' into 'v9_12'
Resolve "Client cookie is being hashed twice when computing the DNS server cookie."

See merge request isc-projects/bind9!401
2018-06-22 03:51:53 -04:00
Mark Andrews cd1169b605 4975. [bug] The server cookie computation for sha1 and sha256 did
not match the method described in RFC 7873. [GL #356]

(cherry picked from commit 8755a249bc)
2018-06-22 17:45:02 +10:00
Mark Andrews 77496f0b88 the client cookie was being hashed twice when computing the server cookie for sha1 and sha256
(cherry picked from commit 4795f0ca89)
2018-06-22 17:45:02 +10:00
Ondřej Surý e1dc8b39d3 Merge branch 'release-v9_12_2rc1' into 'v9_12'
Merge 9.12.1rc1 release into v9_12

See merge request isc-projects/bind9!395
2018-06-21 13:13:13 -04:00
Evan HuntandOndřej Surý 87344e3493 prepare 9.12.1rc1 2018-06-21 18:46:32 +02:00
Mark Andrews e684a72f54 Merge branch '336-default-of-rrset-order-silently-changed-to-be-sorted-rather-than-random-v9_12' into 'v9_12'
Resolve "Default of rrset-order silently changed to be sorted (rather than random)"

See merge request isc-projects/bind9!387
2018-06-18 21:43:44 -04:00
Mark Andrews 4f332dc936 Restore default rrset-order to random.
(cherry picked from commit e8154b50d4)
2018-06-19 11:18:19 +10:00
Michał Kępień b4c0a99f22 Merge branch '341-constify-dns_rdata_tostruct-v9_12' into 'v9_12'
[v9_12] constify dns_rdata_tostruct

See merge request isc-projects/bind9!380
2018-06-15 03:34:48 -04:00
Mark AndrewsandMichał Kępień d4c55dae8e Declare the 'rdata' argument for dns_rdata_tostruct() to be const
(cherry picked from commit abb2fd1027)
2018-06-15 08:52:28 +02:00
Ondřej Surý d370125e67 Merge branch '309-fix-default-recursion-v9_12' into 'v9_12'
Resolve "Recursion improperly allowed by default"

See merge request isc-projects/bind9!373
2018-06-14 08:53:10 -04:00
Evan HuntandOndřej Surý be145bc8b6 add a regression test for default allow-recursion settings 2018-06-14 14:45:56 +02:00
Evan HuntandOndřej Surý be02bf6571 allow-recursion could incorrectly inherit from the default allow-query 2018-06-14 14:45:56 +02:00
Michał Kępień 22192a4566 Merge branch '298-fix-dname-handling-in-dnssec-tools-v9_12' into 'v9_12'
[v9_12] Fix DNAME handling in DNSSEC tools

See merge request isc-projects/bind9!363
2018-06-13 07:29:22 -04:00
Michał Kępień f9637ae0e5 Add CHANGES entry
4971.	[bug]		dnssec-signzone and dnssec-verify did not treat records
			below a DNAME as out-of-zone data. [GL #298]

(cherry picked from commit f467ba8e1f)
2018-06-13 12:57:47 +02:00
Mark AndrewsandMichał Kępień 899e56068e Pull out the saving of the zone cut into a separate function
(cherry picked from commit 7be900a98f)
2018-06-13 12:57:41 +02:00
Michał Kępień ff7015a0f8 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.

(cherry picked from commit 75c0d85fc4)
2018-06-13 12:57:03 +02:00
Michał Kępień f3b5550c2c Merge branch '284-unify-keyfile-to-configuration-conversions-in-system-tests-v9_12' into 'v9_12'
[v9_12] Unify keyfile-to-configuration conversions in system tests

See merge request isc-projects/bind9!360
2018-06-13 02:10:50 -04:00
Michał Kępień 2cad382552 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.

(cherry picked from commit 68f056b2a0)
2018-06-13 07:59:07 +02:00
Michał Kępień dce66f7635 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.

(cherry picked from commit 120af964ce)
2018-06-13 07:58:39 +02:00
Michał Kępień 21d3658bcb 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.

(cherry picked from commit 2392b8bc7d)
2018-06-13 07:58:10 +02:00
Michał Kępień b5478f1281 Merge branch '269-refactor-zone-logging-functions-v9_12' into 'v9_12'
[v9_12] Refactor zone logging functions

See merge request isc-projects/bind9!357
2018-06-11 07:06:04 -04:00
Michał Kępień 056e8acc0e Add CHANGES entry
4969.	[cleanup]	Refactor zone logging functions. [GL #269]

(cherry picked from commit c8de677eae)
2018-06-11 12:50:11 +02:00
Michał Kępień b39edab59b Reimplement all zone logging functions using dns_zone_logv()
In order to decrease code duplication, express the logic contained in
all zone logging functions using dns_zone_logv() calls.

(cherry picked from commit 5c03cd339e)
2018-06-11 12:50:11 +02:00
Michał Kępień 75959cb369 Add dns_zone_logv()
Add a new libdns function, dns_zone_logv(), which takes a single va_list
argument rather than a variable number of arguments and can be used as a
base for implementing more specific zone logging functions.

(cherry picked from commit bb2dfb3f49)
2018-06-11 12:50:11 +02:00
Evan Hunt 1df48d82d2 Merge branch 'fix-strtok' into v9_12 2018-06-09 23:04:00 -07:00
Evan Hunt 74c3b9d3b2 complete strtok fix 2018-06-09 23:03:38 -07:00
Evan Hunt 545b5d1f58 Merge branch 'fix-strtok' into v9_12 2018-06-09 22:31:41 -07:00
Evan Hunt 1734f1b3b9 use strtok() instead of strtok_r() in command line processing 2018-06-09 22:29:31 -07:00
Evan Hunt 3c12722080 Merge branch '293-cleanup-radix' into v9_12 2018-06-08 12:10:50 -07:00
Evan Hunt f7f20b1202 improve readability of radix code
- use RADIX_V4, RADIX_V6, RADIX_V4_ECS, and RADIX_V6_ECS as array
  indices instead of 0 through 3.
- remove some unused macros
2018-06-08 11:55:53 -07:00
Evan Hunt f11181c255 Merge branch 'validate-glue-v9_12' into 'v9_12'
ensure that we attempt to validate glue if it's signed

See merge request isc-projects/bind9!300
2018-06-08 11:50:03 -07:00
Evan Hunt 4afe50f546 CHANGES
(cherry picked from commit bde9c2ec39)
2018-06-08 11:50:00 -07:00
Evan Hunt 86787d0ad1 ensure that we attempt to validate glue if it's signed
- incidentally fixed a bug in the dnssec system test where TTLs in the
  answer section rather than the additional section were being checked

(cherry picked from commit 8d923a05a9)
2018-06-08 11:49:34 -07:00
Mark Andrews 701548eaad Merge branch '325-add-cfg_parse_buffer4-v9_12' into 'v9_12'
Resolve "add cfg_parse_buffer4"

Closes #325

See merge request isc-projects/bind9!353
2018-06-08 17:40:17 +10:00
Mark Andrews 323a2edfc2 add cfg_parse_buffer4
(cherry picked from commit b313084af2)
2018-06-08 17:40:16 +10:00
Mark Andrews 4976d24bcb Merge branch '173-option-to-disable-responding-with-cookies-isc-support-12614' into 'v9_12'
Resolve "option to disable responding with cookies [ISC-Support #12614]"

See merge request isc-projects/bind9!154
2018-06-08 02:51:21 -04:00
Mark Andrews 5f7a6232d6 add CHANGES and release notes 2018-06-08 16:44:42 +10:00
Mukund SivaramanandMark Andrews b5265a8cfa Update ARM documentation 2018-06-08 16:37:38 +10:00
Mukund SivaramanandMark Andrews a5933fa2bb Add system test 2018-06-08 16:34:29 +10:00
Mukund SivaramanandMark Andrews 2930507357 Add a answer-cookie named config option 2018-06-08 16:34:29 +10:00
Mark Andrews 2836d8e952 Merge branch '322-add-support-for-marking-options-as-deprecated-v9_12' into 'v9_12'
Resolve "add support for marking options as deprecated."

Closes #322

See merge request isc-projects/bind9!351
2018-06-08 15:55:56 +10:00
Mark Andrews 60a703550e Add support for marking a option as deprecated.
(cherry picked from commit befff9452c)
2018-06-08 15:55:56 +10:00
Witold Krecicki 3b191620bb Merge branch 'XX-dont-fetch-keys-when-fuzzing-v9_12' into 'v9_12'
Don't fetch DNSKEY when fuzzing resolver

See merge request isc-projects/bind9!350
2018-06-06 09:57:10 -04:00
Witold Kręcicki 2e1a704378 Don't fetch DNSKEY when fuzzing resolver
(cherry picked from commit cb3208aa43)
2018-06-06 15:50:33 +02:00
Mark Andrews ae20d1d215 Merge branch '240-multiple-rrsigs-on-some-records-in-signed-zone-even-though-only-one-key-is-ever-active-at-a-time-v9_12' into 'v9_12'
Resolve "Multiple RRSIGs on some records in signed zone even though only one key is ever active at a time"

Closes #240

See merge request isc-projects/bind9!231
2018-06-06 17:09:00 +10:00
Mark Andrews 00f1956c9e add CHANGES note
(cherry picked from commit ba7a343156)
2018-06-06 17:05:47 +10:00
Mark Andrews 1783fa5aba add duplicate signature test
(cherry picked from commit 0db5b087ed)
2018-06-06 17:05:47 +10:00
Mark Andrews 69340b5ac5 add support -T sigvalinsecs
(cherry picked from commit 87a3dc8ab9)
2018-06-06 17:05:43 +10:00
Mark Andrews c1e342cedb only sign with other keys when deleting a key if there are not already existing signature for the deleted algorithm
(cherry picked from commit 0667bf7ae7)
2018-06-06 16:54:03 +10:00
Evan Hunt d636534ea8 Merge branch 'v9_12' of gitlab.isc.org:isc-projects/bind9 into v9_12 2018-06-05 21:53:06 -07:00
Mark Andrews ace0af0fd8 Merge branch '316-move-named-t-processing-to-its-own-function-v9_12' into 'v9_12'
Resolve "move named -T processing to its own function"

Closes #316

See merge request isc-projects/bind9!343
2018-06-06 14:48:41 +10:00
Mark Andrews 937e700bd5 add CHANGES
(cherry picked from commit ef7401e4a7)
2018-06-06 14:48:21 +10:00
Mark Andrews 475bb0e332 move -T parsing to its own function
(cherry picked from commit b491ceeb50)
2018-06-06 14:47:54 +10:00
Evan Hunt 4be2773736 Merge branch '302-use-ip-for-ifconfig' into 'v9_12'
Resolve "ifconfig.sh doesn't work on centos7"

Closes #302

See merge request isc-projects/bind9!330
2018-06-05 21:45:21 -07:00
Evan Hunt 7f16672ab8 CHANGES
(cherry picked from commit 71f2335f5a)
2018-06-05 21:45:12 -07:00
Evan Hunt 3e1a0c2b62 use "ip" on linux, falling back to "ifconfig" when it isn't available
(cherry picked from commit d7c5400798)
2018-06-05 21:44:45 -07:00
Evan Hunt e4487b160c expand address range in ifconfig.sh to include more than one subnet
(cherry picked from commit 41b29a436b)
2018-06-05 21:44:45 -07:00
Evan Hunt f448be27c5 clean up CHANGES numbers 2018-06-04 19:44:59 -07:00
Evan Hunt 3911b187e3 Merge branch '310-check-changes-needs-to-be-called-for-v9_12' into 'v9_12'
Resolve "check-changes needs to be called for v9_12"

See merge request isc-projects/bind9!337
2018-06-04 19:26:16 -07:00
Mark AndrewsandEvan Hunt 022b2b481f call util/check-changes in setup
(cherry picked from commit c0e69cc406)
2018-06-04 19:26:08 -07:00
Mark Andrews 0111295ff0 Merge branch '281-dont-insert-extra-space-between-nsec3-nexthash-and-typemap-v9_12' into 'v9_12'
Resolve "9.11.3-S1 totext_nsec3 inserts a redundant white space between next hash and type map [ISC-support #12887]"

See merge request isc-projects/bind9!313
2018-06-04 13:02:19 +10:00
Mark Andrews 6640898fa9 Add CHANGES note
(cherry picked from commit f98d8115e3)
2018-06-04 13:02:09 +10:00
Mukund SivaramanandMark Andrews 8af1d5916f Add NSEC3 fromtext/totext unittests
(cherry picked from commit b0d9198e03)
2018-06-04 13:01:18 +10:00
Mukund SivaramanandMark Andrews ac7c74425e Don't insert 2nd space between NSEC3 nexthash and typemap fields
(cherry picked from commit d4ea1edd2c)
2018-06-04 13:01:18 +10:00
Evan Hunt fb9e5221bc Merge branch 'serve-stale-doc-and-logging' into 'v9_12'
Serve stale doc and logging

See merge request isc-projects/bind9!323
2018-05-28 17:26:22 -07:00
Evan Hunt 876d544a1c CHANGES
(cherry picked from commit 049777d6c5)
2018-05-28 17:26:07 -07:00
Tony FinchandEvan Hunt c4494458ae Move serve-stale logging to its own category, so that its verbosity can be curtailed.
(cherry picked from commit 4b442c309d)
2018-05-28 17:25:38 -07:00
Evan Hunt 3d2de8e776 clarify serve-stale documentation, and add a floor for max-stale-ttl
- added a 1-second floor to max-stale-ttl similar to stale-answer-ttl;
  if set to 0, it will be silently updated to 1.
- fixed the ARM entry on max-stale-ttl, which incorrectly suggested that
  the default was 0 instead of 1 week.
- clarified rndc serve-stale documentation.

(cherry picked from commit d1ca21d50a)
2018-05-28 17:25:37 -07:00
Mark Andrews bb7c075cbe Merge branch '286-new-cppcheck-detected-errors-v9_12' into 'v9_12'
Resolve "New cppcheck-detected errors"

See merge request isc-projects/bind9!324
2018-05-29 09:44:48 +10:00
Mark Andrews 9fc2eb9554 add CHANGES note
(cherry picked from commit e9134b15eb)
2018-05-29 09:44:41 +10:00
Mark Andrews 3bbcba405b work around cppcheck false positive
(cherry picked from commit cb5802e854)
2018-05-29 09:44:02 +10:00
Evan Hunt 35488bec21 Merge branch '245-fix-test-color' into 'v9_12'
Resolve "rpz test fails to launch ns2 on openbsd"

Closes #245

See merge request isc-projects/bind9!321
2018-05-25 13:01:31 -07:00
Evan Hunt 59715255cf fix openbsd color-display problem in system test output
(cherry picked from commit 1e31fdb76d)
2018-05-25 13:01:25 -07:00
Mark Andrews cc443821e6 Merge branch '290-documentation-error-missing-v9_12' into 'v9_12'
Resolve "Documentation error - missing "};""

Closes #290

See merge request isc-projects/bind9!318
2018-05-25 13:11:43 +10:00
Mark Andrews 2e9f0fb026 add closing '};'
(cherry picked from commit ab22160a1c)
2018-05-25 13:11:43 +10:00
Evan Hunt 6acdb87b3b Merge branch 'fix-catz-test' into 'v9_12'
fix catz test

See merge request isc-projects/bind9!317
2018-05-24 16:18:29 -07:00
Evan Hunt 3e57b352be files were left in place after catz run because of non-portable bracket use
(cherry picked from commit af73e16c9c)
2018-05-24 16:18:24 -07:00
Evan Hunt fc407f3f94 Merge branch 'fix-copyrights' into v9_12 2018-05-23 18:08:20 -07:00
Evan Hunt 5875dda277 restore accidentally deleted copyright lines 2018-05-23 18:07:50 -07:00
Evan Hunt 8bfcb03ae5 Merge branch '283-ensure-there-is-a-blank-line-before-a-changes-entry-and-a-release-marker' into 'v9_12'
Resolve "ensure there is a blank line before a changes entry and a release marker."

Closes #283

See merge request isc-projects/bind9!311
2018-05-23 17:58:17 -07:00
Mark AndrewsandEvan Hunt d87eb5804d ensure there is a blank line before a changes entry and a release marker
(cherry picked from commit c91770549f)
2018-05-23 17:57:32 -07:00
Evan Hunt 9a08b1f912 Merge branch 'generate-notes-txt' into 'v9_12'
use w3m to generate notes.txt as part of the doc build

See merge request isc-projects/bind9!310
2018-05-23 09:54:07 -07:00
Evan Hunt 61de568197 copyrights 2018-05-23 09:52:09 -07:00
Evan Hunt 5b2390e016 use w3m to generate notes.txt as part of the doc build
(cherry picked from commit 7c955e0eb8)
2018-05-23 09:50:10 -07:00
Mark Andrews b847410f3a Merge branch '273-add-home-arpa-to-list-of-empty-zones-rfc-8375-v9_12' into 'v9_12'
Resolve "Add "HOME.ARPA" to list of empty zones (RFC 8375)"

Closes #273

See merge request isc-projects/bind9!297
2018-05-23 11:13:25 +10:00
Mark Andrews 8ad96c7a76 add HOME.ARPA to the list of empty zones
(cherry picked from commit 10dd0b3efe)
2018-05-23 11:13:10 +10:00
Mark Andrews a14ecc9e46 fix handling of failed tests
(cherry picked from commit 4283f9552f)
2018-05-23 11:08:14 +10:00
Evan Hunt 175062a8ba Merge branch 'fix-kit-v9_12' into 'v9_12'
use the correct repository, and get archive by tag not hash

See merge request isc-projects/bind9!304
2018-05-21 13:57:11 -07:00
Evan Hunt 988d4ac1a5 use the correct repository, and get archive by tag not hash
(cherry picked from commit 999e3233f3)
2018-05-21 13:57:10 -07:00
Evan Hunt 6cf0a45228 Merge branch '185-fix-changes-entry-v9_12' into v9_12 2018-05-21 10:36:06 -07:00
Evan Hunt af047f39c9 Fix CHANGES entry 2018-05-21 10:35:48 -07:00
Evan Hunt 6b5853dd34 Merge branch '185-security-fix' into v9_12 2018-05-21 10:00:30 -07:00
Evan Hunt 1b1b8e6d41 update CHANGES
(cherry picked from commit 4b67376e42)
2018-05-21 10:00:09 -07:00
Evan Hunt 3de0910bc7 Detect recursion loops during query processing
Interrupt query processing when query_recurse() attempts to ask the same
name servers for the same QNAME/QTYPE tuple for two times in a row as
this indicates that query processing may be stuck for an indeterminate
period of time, e.g. due to interactions between features able to
restart query_lookup().

(cherry picked from commit d1de99bc587480eb51a38b23c8aaf4d34c0c92d2)
2018-05-21 09:59:41 -07:00
Evan Hunt f6884e0ca5 Prevent check_stale_header() from leaking rdataset headers
check_stale_header() fails to update the pointer to the previous header
while processing rdataset headers eligible for serve-stale, thus
enabling rdataset headers to be leaked (i.e. disassociated from a node
and left on the relevant TTL heap) while iterating through a node.  This
can lead to several different assertion failures.  Add the missing
pointer update.

(cherry picked from commit cf9cb7cd0013610c8978808aab9d6bae9fe57a4b)
2018-05-21 09:58:44 -07:00
Mark Andrews 0083ce2c52 Merge branch '238-isc_net_recvoverflow-support-is-broken-v9_12' into 'v9_12'
Resolve "ISC_NET_RECVOVERFLOW support is broken."

Closes #238

See merge request isc-projects/bind9!226
2018-05-18 15:59:23 +10:00
Mark Andrews 24bb79f9fc ISC_SOCKEVENTATTR_TRUNC was not be set
(cherry picked from commit 6bff1768cf)
2018-05-18 15:59:14 +10:00
Evan Hunt d66c548295 Merge branch '251-documentation-of-rpz-min-update-interval-is-inconsistent-with-implementation' into 'v9_12'
Resolve "Documentation of RPZ min-update-interval is inconsistent with implementation"

Closes #251

See merge request isc-projects/bind9!277
2018-05-17 20:23:18 -07:00
Mukund SivaramanandEvan Hunt 84640d2e04 Fix ARM about min-update-interval default for RPZ zones
Also, use variable names consistent with catz for rpz configuration functions

(cherry picked from commit 975afc508d)
2018-05-17 20:23:08 -07:00
Mark Andrews ab570e7953 Merge branch '274-print-c-9-12-and-earlier' into 'v9_12'
Resolve "print.c 9.12 and earlier"

See merge request isc-projects/bind9!298
2018-05-17 22:42:16 -04:00
Mark Andrews 3f3d424a70 add CHANGES note 2018-05-18 12:19:26 +10:00
Mark Andrews d03a81c265 look for '\0' 2018-05-18 12:17:31 +10:00
Mark Andrews f5233ba5de add some %f format tests 2018-05-18 12:17:31 +10:00
Mark Andrews 800012de23 don't produce a false negative for %z with CFLAGS=-Werror 2018-05-18 12:17:31 +10:00
Mark Andrews 906565a274 Merge branch '267-iscpk11libs-is-not-defined-anywhere-resulting-in-dstrandom_test-not-being-built-v9_12' into 'v9_12'
Resolve "ISCPK11LIBS is not defined anywhere resulting in dstrandom_test not being built"

See merge request isc-projects/bind9!294
2018-05-17 02:39:31 -04:00
Mark Andrews de2d23db2a alphabetize and remove ISCPK11LIBS 2018-05-17 16:32:43 +10:00
Ondřej Surý 3fffd5de63 Merge branch '209-glue-is-no-longer-included-v9_12' into 'v9_12'
Resolve "Glue is no longer included for non-DNSSEC-signed zones since CHANGE 4596"

See merge request isc-projects/bind9!285
2018-05-16 03:11:25 -04:00
Mukund SivaramanandOndřej Surý e661831199 Add CHANGES entry
(cherry picked from commit dfd73d7e16)
2018-05-16 08:30:07 +02:00
Mukund SivaramanandOndřej Surý d6a4760031 Add system test
(cherry picked from commit 303391ea41)
2018-05-16 08:29:25 +02:00
Mukund SivaramanandOndřej Surý 753d0aee03 Don't validate non-pending glue when adding to the additional section
(cherry picked from commit 31bd3147d1)
2018-05-16 08:29:25 +02:00
Evan Hunt dcf0d95ee5 Merge branch '233-clarify-documentation-of-update-policy-tcp-self-and-6to4-self' into 'v9_12'
Resolve "Clarify documentation of update-policy tcp-self and 6to4-self"

Closes #233

See merge request isc-projects/bind9!227
2018-05-15 13:20:01 -07:00
Evan Hunt 117ad14ddb rewrite the update-policy documentation
- clarify the behavior of the name and identity fields for various
  rule types, particularly tcp-self and 6to4-self.

(cherry picked from commit dea89f2a52)
2018-05-15 13:19:55 -07:00
Michał Kępień db909bcb58 Merge branch '258-address-ubsan-warnings-v9_12' into 'v9_12'
[v9_12] Address issues found by ubsan

See merge request isc-projects/bind9!280
2018-05-15 03:51:23 -04:00
Michał Kępień 18824a084b isc_buffer_*(): if source can be NULL, only call memmove() when length is non-zero
Certain isc_buffer_*() functions might call memmove() with the second
argument (source) set to NULL and the third argument (length) set to 0.
While harmless, it triggers an ubsan warning:

    runtime error: null pointer passed as argument 2, which is declared to never be null

Modify all memmove() call sites in lib/isc/include/isc/buffer.h and
lib/isc/buffer.c which may potentially use NULL as the second argument
(source) so that memmove() is only called if the third argument (length)
is non-zero.

(cherry picked from commit 6ddbca6f2b)
2018-05-15 09:28:17 +02:00
Michał Kępień 046f10ae99 dns_rdataslab_merge(): use dns_rdata_compare() instead of compare_rdata()
compare_rdata() was meant to be used as a qsort() callback.  Meanwhile,
dns_rdataslab_merge() calls compare_rdata() for a pair of dns_rdata_t
structures rather than a pair of struct xrdata structures, which is
harmless, but triggers an ubsan warning:

    rdataslab.c:84:33: runtime error: member access within address <address> with insufficient space for an object of type 'const struct xrdata'

Use dns_rdata_compare() instead of compare_rdata() to prevent the
warning from being triggered.

(cherry picked from commit 9bc6ba0be9)
2018-05-15 09:28:17 +02:00
Michał Kępień 7c272294b6 Merge branch '252-9-9-sigs_test-updatesigs-is-failing-v9_12' into 'v9_12'
[v9_12] Skip lib/dns/tests/sigs_test for builds without DNSSEC support

See merge request isc-projects/bind9!273
2018-05-14 03:38:35 -04:00
Michał Kępień f26ae1ea9f Extend the list of headers included by lib/dns/tests/sigs_test.c
(cherry picked from commit f98e145c5b)
2018-05-14 09:31:18 +02:00
Mark AndrewsandMichał Kępień 8d93b77c31 return untested if not built with OPENSSL or PKCS11CRYPTO
(cherry picked from commit 2420320b96)
2018-05-14 09:31:18 +02:00
Ondřej Surý 95757c842f Merge branch '9-remove-dolar-ids-and-other-cruft-v9_12' into 'v9_12'
Remove $Id$s and other cruft as a batch operation

See merge request isc-projects/bind9!267
2018-05-11 08:29:41 -04:00
Ondřej Surý c35de9b383 Remove $Id markers, Principal Author and Reviewed tags from the full source tree
(cherry picked from commit 55a10b7acd)
2018-05-11 14:19:35 +02:00
Ondřej Surý 8ab1551a3a Merge branch 'redirect-stderr-to-dev-null-v9_12' into 'v9_12'
Update tests to not use '>&-' that closes file descriptor, but instead use…

See merge request isc-projects/bind9!264
2018-05-11 07:18:10 -04:00
Ondřej Surý 1c003f1230 Update tests to not use '>&-' that closes file descriptor, but instead use correct redirection to '>/dev/null'
(cherry picked from commit 3f66b8acb0)
2018-05-11 13:11:10 +02:00
Michał Kępień ef3fae305c Merge branch '239-don-t-use-null-as-a-argument-to-a-varargs-function-as-it-may-not-be-promoted-properly-v9_12' into 'v9_12'
[v9_12] don't use NULL as a argument to a varargs function as it may not be promoted properly

See merge request isc-projects/bind9!261
2018-05-11 02:41:53 -04:00
Mark AndrewsandMichał Kępień 438395086c silence cppcheck portability warning
(cherry picked from commit 6aae115d15)
2018-05-11 08:30:13 +02:00
Mark Andrews f30e93853c Merge branch '248-named-9-12-uses-too-much-memory-with-tuning-large-regression-vs-9-11-v9_12' into 'v9_12'
Resolve "named 9.12 uses too much memory with `--tuning=large` (regression vs. 9.11)"

Closes #248

See merge request isc-projects/bind9!251
2018-05-11 11:31:27 +10:00
Mark Andrews 6e88bbde2d add CHANGES note
(cherry picked from commit 30e58374a3)
2018-05-11 11:31:18 +10:00
Mukund SivaramanandMark Andrews 224244227c Don't keep around debuglist structs when done
(cherry picked from commit 3adcc033f6)
2018-05-11 11:29:58 +10:00
Mukund SivaramanandMark Andrews 36277f7a63 Reduce number of buckets in tracklines debuglink table
With 1044 res contexts, each with 65536 debuglink structs of 16 bytes
each, the debuglink table itself was consuming 1GB+ of memory.

(cherry picked from commit b9886abd86)
2018-05-11 11:29:58 +10:00
Michał Kępień 091d0f1041 Merge branch '249-address-gcc-8-compilation-warnings-v9_12' into 'v9_12'
[v9_12] Address GCC 8 compilation warnings

See merge request isc-projects/bind9!259
2018-05-10 04:59:53 -04:00
Ondřej SurýandMichał Kępień fa846bbed0 Address GCC 8 -Wstringop-truncation warning
(cherry picked from commit 9845c4c4a7)
2018-05-10 10:52:00 +02:00
Michał Kępień 6e26fab6b8 Address GCC 8 -Wformat-truncation warnings
(cherry picked from commit 172d0c401e)
2018-05-10 10:52:00 +02:00
Ondřej Surý 3593360928 Merge branch 'gitlab-ci-amd64-v9_12' into 'v9_12'
Tag docker images with appropriate architectures

See merge request isc-projects/bind9!255
2018-05-10 03:36:54 -04:00
Ondřej Surý 9b795c34b9 Tag docker images with appropriate architectures
(cherry picked from commit ab112d2c4f)
2018-05-10 09:27:23 +02:00
Evan Hunt b1ef7d8ecd Merge branch '135-add-basic-unit-tests-for-update_sigs' into 'v9_12'
Add basic unit tests for update_sigs()

Closes #135

See merge request isc-projects/bind9!112
2018-05-10 00:02:06 -07:00
Michał KępieńandEvan Hunt 1f9b0cbc63 Add CHANGES entry
4939.	[test]		Add basic unit tests for update_sigs(). [GL #135]

(cherry picked from commit 4885809eb9)
2018-05-10 00:01:56 -07:00
Michał KępieńandEvan Hunt 3e93e4bb62 Define basic test cases for dns__zone_updatesigs()
Add some basic test cases ensuring dns__zone_updatesigs() behaves as
expected.

(cherry picked from commit 8b9d2c27b4)
2018-05-10 00:01:41 -07:00
Michał KępieńandEvan Hunt 3dde7c42db Add a framework for dns__zone_updatesigs() unit tests
Add a new ATF test, sigs_test, containing everything required to start
defining test cases for dns__zone_updatesigs().  The framework is
written in a way which ensures that changes to zone database applied by
any dns__zone_updatesigs() invocation are preserved between subsequent
checks.

(cherry picked from commit 1f10186476)
2018-05-10 00:01:41 -07:00
Michał KępieńandEvan Hunt fc0e99c7d7 Move find_zone_keys() to lib/dns/zone_p.h
Rename find_zone_keys() to dns__zone_findkeys() and move it to
lib/dns/zone_p.h, so that it can be used in unit tests.  Add a comment
describing the purpose of this function.

(cherry picked from commit d7143986b1)
2018-05-10 00:01:41 -07:00
Michał KępieńandEvan Hunt 4d06f50ba8 Move update_sigs() to lib/dns/zone_p.h
Rename update_sigs() to dns__zone_updatesigs() and move it to
lib/dns/zone_p.h, so that it can be unit tested.  Add a comment
describing the purpose of this function.

(cherry picked from commit b1947cee82)
2018-05-10 00:01:38 -07:00
Michał KępieńandEvan Hunt ea15c54d8a Move zonediff_t to lib/dns/zone_p.h
Rename zonediff_t to dns__zonediff_t and move it to lib/dns/zone_p.h, so
that unit tests can be written for functions taking pointers to
structures of this type as arguments.

(cherry picked from commit ace465a9f9)
2018-05-10 00:00:31 -07:00
Michał KępieńandEvan Hunt 2b0add6d1a Add lib/dns/zone_p.h
Add a new private header file, lib/dns/zone_p.h, which will hold type
definitions and function prototypes not meant to be exported by libdns,
but required by zone-related unit tests.

(cherry picked from commit c1bc3be806)
2018-05-10 00:00:31 -07:00
Michał KępieńandEvan Hunt d4c603eb8a Add a helper function to facilitate preparing dns_diff_t structures
Implement dns_test_difffromchanges(), a function which enables preparing
a dns_diff_t structure from a mostly-textual representation of zone
database changes to be applied.  This will improve readability of test
case definitions by allowing contents of a dns_diff_t structure, passed
e.g. to update_sigs(), to be represented in a human-friendly manner.

(cherry picked from commit 3c22af0d35)
2018-05-10 00:00:31 -07:00
Michał KępieńandEvan Hunt 107102d333 Rename dns_test_rdata_fromstring() to dns_test_rdatafromstring()
Remove the underscore from "rdata_fromstring" so that all helper
functions for libdns tests use a common naming covention.

(cherry picked from commit 2980cbd55f)
2018-05-10 00:00:31 -07:00
Michał KępieńandEvan Hunt f70c02d2c2 Rework dns_test_makezone()
The dns_test_makezone() helper function always assigns the created zone
to some view, which is not always necessary and complicates cleanup of
non-managed zones as they are required not to be assigned to any view.

Rework dns_test_makezone() in order to make it easier to use in unit
tests operating on non-managed zones.  Use dns_name_fromstring() instead
of dns_name_fromtext() to simplify code.  Do not use the CHECK() macro
and add comments to make code flow simpler to follow.  Use
dns_test_makeview() instead of dns_view_create().

Adjust existing unit tests using this function so that they still pass.

(cherry picked from commit bfbeef3609)
2018-05-10 00:00:31 -07:00
Ondřej Surý 420e00ffa9 Merge branch '191-misc-improvements-v9_12' into 'v9_12'
[v9_12] Miscelaneous improvements found when working on #191

See merge request isc-projects/bind9!244
2018-05-03 15:44:06 -04:00
Ondřej Surý 311fbf3f5b Use standard OPENSSL_NO_ENGINE instead of custom USE_ENGINE define
(cherry picked from commit 8d648e7a8a)
2018-05-03 21:36:46 +02:00
Ondřej Surý 5af60f69fd Use BN_hex2bn instead of custom BN_fromhex function
(cherry picked from commit 8bf192b4d1)
2018-05-03 21:35:21 +02:00
Ondřej Surý 30b308e2e3 Fix extra ] in configure.in
(cherry picked from commit 35d2dbb9f5)
2018-05-03 21:35:21 +02:00
Ondřej Surý da5186cdd6 Merge branch '236-silence-cppcheck-issues-in-lib-dns-dst_parse-c-v9_12' into 'v9_12'
[v9_12] Resolve "silence cppcheck issues in lib/dns/dst_parse.c"

See merge request isc-projects/bind9!240
2018-05-03 11:22:03 -04:00
Mark AndrewsandOndřej Surý 9b20819dd6 simplify mask construction
(cherry picked from commit 22fab3199f)
2018-05-03 17:13:42 +02:00
Ondřej Surý 9f15463752 Merge branch '234-add-prerequisite-check-to-rootkeysentinel-for-dnssec-support-v9_12' into 'v9_12'
Resolve "add prerequisite check to rootkeysentinel for dnssec support"

See merge request isc-projects/bind9!239
2018-05-03 10:51:32 -04:00
Mark AndrewsandOndřej Surý 390a1d3988 add bin/tests/system/rootkeysentinel/prereq.sh
(cherry picked from commit 0fedfcafb5)
2018-05-03 16:42:47 +02:00
Mark AndrewsandOndřej Surý 03e4dc4c6b add dnssec prerequisite test to rootkeysentinel
(cherry picked from commit e713f83064)
2018-05-03 16:42:47 +02:00
Ondřej Surý 6f07572ef7 Merge branch 'random-test-improvement-v9_12' into 'v9_12'
[v9_12] Improve random_test to also test the high bound of the confidence interval

See merge request isc-projects/bind9!237
2018-05-03 09:12:53 -04:00
Ondřej Surý 36efa304e6 Also test the higher part of the confidence interval
(cherry picked from commit 8d3220643c)
2018-05-03 15:04:15 +02:00
Ondřej Surý b329a7e674 Merge branch '191-add-LibreSSL-2.7-support-v9_12' into 'v9_12'
[v9_12] Add LibreSSL 2.7.0 support

See merge request isc-projects/bind9!234
2018-05-03 08:34:55 -04:00
Ondřej Surý 0b54e46c79 Add CHANGES entry
4935.   [func]          Add support for LibreSSL >= 2.7.0 (some OpenSSL 1.1.0
                        call were added). [GL #191]

(cherry picked from commit 30488dddf0)
2018-05-03 14:27:10 +02:00
Ondřej Surý e3a318e8d3 Workaround LibreSSL 2.7.0-2.7.2 quirk in DH_set0_key
(cherry picked from commit 6b9e3b7b06)
2018-05-03 14:26:40 +02:00
Ondřej Surý 1e64b869b5 Add support for LibreSSL 2.7
(cherry picked from commit 29ff62a149)
2018-05-03 14:26:40 +02:00
Evan Hunt 1f3124d76c Merge branch '208-dig-doc' into 'v9_12'
Resolve "Added -t TYPEnn description to dig"

Closes #208

See merge request isc-projects/bind9!221
2018-04-26 23:59:03 -07:00
Paul HoffmanandEvan Hunt cd09144b17 add -t type### description to the dig man page
(cherry picked from commit 2d957c6b9f)
2018-04-26 23:58:58 -07:00
Evan Hunt ed985bea41 Merge branch '159-improve-handling-of-inline-signed-zones-with-missing-signing-keys' into 'v9_12'
Improve handling of inline signed zones with missing signing keys

Closes #159

See merge request isc-projects/bind9!133
2018-04-25 12:09:38 -07:00
Michał KępieńandEvan Hunt e4995efe24 Add CHANGES entries
4916.	[bug]		Not creating signing keys for an inline signed zone
			prevented changes applied to the raw zone from being
			reflected in the secure zone until signing keys were
			made available. [GL #159]

4915.	[bug]		Bumped signed serial of an inline signed zone was
			logged even when an error occurred while updating
			signatures. [GL #159]

(cherry picked from commit 7d2c09c905)
2018-04-25 12:09:22 -07:00
Michał KępieńandEvan Hunt 8a58a60772 Apply raw zone deltas to yet unsigned secure zones
When inline signing is enabled for a zone without creating signing keys
for it, changes subsequently applied to the raw zone will not be
reflected in the secure zone due to the dns_update_signaturesinc() call
inside receive_secure_serial() failing.  Given that an inline zone will
be served (without any signatures) even with no associated signing keys
being present, keep applying raw zone deltas to the secure zone until
keys become available in an attempt to follow the principle of least
astonishment.

(cherry picked from commit 6acf326969)
2018-04-25 12:09:04 -07:00
Michał KępieńandEvan Hunt cdc7ab42b1 Only log bumped signed serial after a successful secure zone update
If a raw zone is modified, but the dns_update_signaturesinc() call in
receive_secure_serial() fails, the corresponding secure zone's database
will not be modified, even though by that time a message containing the
bumped signed serial will already have been logged.  This creates
confusion, because a different secure zone version will be served than
the one announced in the logs.  Move the relevant dns_zone_log() call so
that it is only performed if the secure zone's database is modified.

(cherry picked from commit cfbc8e264d)
2018-04-25 12:09:03 -07:00
Evan Hunt 5cef06f8d0 Merge branch '171-lgtm-issues-v9_12' into 'v9_12'
Resolve "problems detected by LGTM static analyzer"

Closes #171

See merge request isc-projects/bind9!213
2018-04-22 12:57:52 -07:00
Evan Hunt 493a8b53ed remove unnecessary comparison
(cherry picked from commit 8b1baa10ee)
2018-04-22 12:57:52 -07:00
Evan Hunt fe27dfa9fd silence warnings about unnecessary comparisons
- these are cases where result has been explicitly set, so
  if (result != ISC_R_SUCCESS) is unnecessary

(cherry picked from commit e00eb55cd2)
2018-04-22 12:57:52 -07:00
Evan Hunt 19be8866d8 add header guards in files that were missing them
(cherry picked from commit 4247477b61)
2018-04-22 12:57:52 -07:00
Evan Hunt b8aec550c4 add header guard when generating bind.keys.h
(cherry picked from commit bfbe6925df)
2018-04-22 12:57:52 -07:00
Evan Hunt 982ddf4012 change "key" to "tsigkey" to silence "short global name" warning
(cherry picked from commit 0cc7aa250e)
2018-04-22 12:57:52 -07:00
Evan Hunt 97cbc27ed7 fix shadowed global variables
(cherry picked from commit 9ca3ab1168)
2018-04-22 12:57:52 -07:00
Evan Hunt 62c64cfe85 fix duplicate include guard in dnsconf.h
- IMHO we should consider removing dnsconf.c and deprecating the
  /etc/dns.conf file, though, as I don't think it's likely anyone
  is using it

(cherry picked from commit a08ba418ef)
2018-04-22 12:57:52 -07:00
Evan Hunt d44d594219 Merge branch '37-implement-geoff-huston-s-trusted-key-sentinel-feature-v9_12' into 'v9_12'
Implement Geoff Huston's trusted key sentinel feature

Closes #37

See merge request isc-projects/bind9!123
2018-04-22 12:48:12 -07:00
Mark AndrewsandEvan Hunt af267c4da9 CHANGES entry for root-key-sentinel
(cherry picked from commit 2845d7160e)
2018-04-22 12:48:10 -07:00
Mark AndrewsandEvan Hunt edb761b08c add release note for root-key-sentinel
(cherry picked from commit e20790c956)
2018-04-22 12:47:31 -07:00
Mark AndrewsandEvan Hunt b9e6b124aa add system test for root-key-sentinel
(cherry picked from commit a23b305e6b)
2018-04-22 12:46:03 -07:00
Mark AndrewsandEvan Hunt ee763ef281 add named.conf option root-key-sentinel
(cherry picked from commit 68e9315c7d)
2018-04-22 12:46:03 -07:00
Mark AndrewsandEvan Hunt 7111eff80c detect and processes root-key-sentinel labels.
(cherry picked from commit 8fc9f64df9)
2018-04-22 12:46:03 -07:00
Ondřej Surý 0071c0400f Merge branch '202-cppcheck-reporting-miscellaneous-issues-v9_12' into 'v9_12'
Resolve "cppcheck reporting miscellaneous issues"

See merge request isc-projects/bind9!216
2018-04-20 18:20:11 -04:00
Mark AndrewsandOndřej Surý 77643775c5 remove exit calls after FATAL_ERROR
(cherry picked from commit f8d2a46daa)
2018-04-20 15:13:12 -07:00
Mark AndrewsandOndřej Surý 53e39ca0ea remove dead code
(cherry picked from commit 686edad5c5)
2018-04-20 15:13:12 -07:00
Mark AndrewsandOndřej Surý ba238ab374 use %u instead of %d for unsigned int arguments
(cherry picked from commit 49f8e9571c)
2018-04-20 15:13:12 -07:00
Ondřej Surý 5e11b261f4 Merge branch '206-nslookup-accepts-any-bogus-option-interpret-it-as-vc-v9_12' into 'v9_12'
Resolve "nslookup accepts any -bogus -option, interpret it as -vc"

See merge request isc-projects/bind9!214
2018-04-20 18:01:02 -04:00
Mukund SivaramanandOndřej Surý a36f89341f Remove bogus comparison
(cherry picked from commit 89cf503880)
2018-04-20 14:51:26 -07:00
Ondřej Surý 7c830940b9 Merge branch '189-fix-win32-build-v9_12' into 'v9_12'
[v9_12] Fix runtime assertion on Windows due isc_file_template being out-of-sync

See merge request isc-projects/bind9!194
2018-04-12 03:00:44 -04:00
Ondřej Surý 6171037403 Sync isc_file_template functions between unix and win32, so they are same
(cherry picked from commit 8c99d104e3)
2018-04-12 08:47:11 +02:00
Ondřej Surý c4a7fbcc36 Merge branch '189-fix-tsig-dump-keyfile-name-generation-issues-v9_12' into 'v9_12'
[v9_12] Fix TSIG dump keyfile name generation issues

See merge request isc-projects/bind9!191
2018-04-11 08:45:17 -04:00
Mukund SivaramanandOndřej Surý c932fd2d49 Fix TSIG dump keyfile name buffer size issues
(cherry picked from commit 44b84cb5a6)
2018-04-11 14:37:46 +02:00
Ondřej Surý e052e7f427 Define PATH_MAX on Windows as _MAX_PATH, so we can use it everywhere
(cherry picked from commit 7467735258)
2018-04-11 14:37:46 +02:00
Evan Hunt 5ce20e4928 Merge branch '193-fix-variable-definitions-in-bin-tests-Makefile.in-v9_12' into 'v9_12'
Fix variable definitions in bin/tests/Makefile.in

Closes #193

See merge request isc-projects/bind9!183
2018-04-10 20:04:31 -07:00
Evan Hunt a6cbac45eb Alter distclean rule to prevent recursing into the same directory twice
Commit f87e0c03ee removed the "system" directory from the TESTDIRS
variable in bin/tests/Makefile.in in an attempt to fix "make distclean"
which was broken since commit 0d784de16a.  However, this change
prevented any system tests from being run when "make test" is invoked.

We now put it back into both SUBDIRS and TESTDIRS, but with a modified
rule to check for the existence of a Makefile in each subdirectory before
trying to run make there. This prevents "make distclean" from trying to
run again in a directory where it's already been run.

(cherry picked from commit 93ee6b8a22)
2018-04-10 20:04:31 -07:00
Michał KępieńandEvan Hunt a7f8268833 Fail CI pipeline when "make test" does not run any system tests
Apart from ensuring "make test" returns 0, also check whether any system
test output was generated as a result of running it.  This prevents the
CI job running system tests from succeeding unless it actually tests
something.

(cherry picked from commit 80ab2c0f22)
2018-04-10 20:04:31 -07:00
Evan Hunt b26a269b42 Merge branch '197-dnstap-sockaddr-v9_12' into 'v9_12'
Resolve "dnstap: log actual local IPv6 address, not :: listening address"

Closes #197

See merge request isc-projects/bind9!188
2018-04-10 17:21:08 -07:00
Evan Hunt fde64f3fe4 CHANGES note
(cherry picked from commit 330b26c9df)
2018-04-10 17:21:08 -07:00
Tony FinchandEvan Hunt 58aac41b7e dnstap: log actual local IPv6 address, not :: listening address
(cherry picked from commit ccff953c25)
2018-04-10 17:21:08 -07:00
Evan Hunt 011968a6d4 Merge branch '183-add-dns_fixedname_initname-v9_12' into 'v9_12'
Add and use dns_fixedname_initname()

Closes #183

See merge request isc-projects/bind9!161
2018-04-10 13:10:29 -07:00
Mukund SivaramanandEvan Hunt d7676d0fa8 Add CHANGES entry:
4921.   [cleanup]       Add dns_fixedname_initname() and refactor the caller
                        code to make usage of the new function, as a part of
                        refactoring dns_fixedname_*() macros were turned into
                        functions. [GL #183]

(cherry picked from commit d7faee2566)
2018-04-10 13:10:23 -07:00
Michał KępieńandEvan Hunt 706f865a20 Do not access dns_fixedname_t fields directly
Employ dns_fixedname_name() and dns_fixedname_initname() to no longer
directly access dns_fixedname_t fields.

(cherry picked from commit 39ddf9991f)
2018-04-10 13:09:37 -07:00
Michał KępieńandEvan Hunt 0041aeb751 Use dns_fixedname_initname() where possible
Replace dns_fixedname_init() calls followed by dns_fixedname_name()
calls with calls to dns_fixedname_initname() where it is possible
without affecting current behavior and/or performance.

This patch was mostly prepared using Coccinelle and the following
semantic patch:

    @@
    expression fixedname, name;
    @@
    -	dns_fixedname_init(&fixedname);
    	...
    -	name = dns_fixedname_name(&fixedname);
    +	name = dns_fixedname_initname(&fixedname);

The resulting set of changes was then manually reviewed to exclude false
positives and apply minor tweaks.

It is likely that more occurrences of this pattern can be refactored in
an identical way.  This commit only takes care of the low-hanging fruit.

(cherry picked from commit 4df4a8e731)
2018-04-10 13:09:24 -07:00
Mukund SivaramanandEvan Hunt cee4fef7c5 Add a dns_fixedname_initname() helper function
This also turns the dns_fixedname macros into functions.

(cherry picked from commit 0d2a03c290)
2018-04-10 13:06:43 -07:00
Mark Andrews 38d5e47881 Merge branch 'ssl-double-free-v9_12' into 'v9_12'
Fix double free after keygen error in dnssec-keygen

Closes #109

See merge request isc-projects/bind9!70
2018-04-06 14:23:01 +10:00
Ondřej SurýandMark Andrews 24ea156f9e Add CHANGES entry
(cherry picked from commit ef2b2a6c92)
2018-04-06 14:22:46 +10:00
Ondřej SurýandMark Andrews cd6d3fbf07 A couple of more cleanups after free in opensslrsa_generate()
(cherry picked from commit d2b3188c61)
2018-04-06 14:21:11 +10:00
Petr MensikandMark Andrews d27c7940d9 Do not assign NULL conditionally in OpenSSL < 1.1, make it always explicit.
(cherry picked from commit edaafacf36)
2018-04-06 14:21:11 +10:00
Petr MensikandMark Andrews 587452f830 Fix double free on RSA_generate_key_ex failure
(cherry picked from commit 01cc622e7b)
2018-04-06 14:21:11 +10:00
Mark Andrews 342e146fe3 system should only be in SUBDIRS 2018-04-06 13:04:15 +10:00
Ondřej SurýandMark Andrews 9cf1468b77 Update libtool files to 2.4.6
(cherry picked from commit fe06778be7)
2018-04-06 12:36:39 +10:00
Ondřej Surý c2f32eba34 Merge branch 'pemensik/bind9-no-idn2-export-v9_12' into 'v9_12'
Don't include -lidn2 in isc-config.sh output

See merge request isc-projects/bind9!179
2018-04-05 06:15:41 -04:00
Ondřej Surý 40e5ba9cc5 Print information about LIBIDN2 in Configuration summary (Closes: #163)
(cherry picked from commit 8da5e5290f)
2018-04-05 12:07:53 +02:00
Petr MenšíkandOndřej Surý 8e8c195f94 Remove -lidn2 from exported LIBS. Do not propagate it from isc-config.sh --libs isc.
(cherry picked from commit 21c2871667)
2018-04-05 12:07:51 +02:00
Ondřej Surý 2c1fdbbb36 Merge branch 'kchen/bind9-test-prereqs-v9_12' into 'v9_12'
Add a Net::DNS prereq for couple of tests

See merge request isc-projects/bind9!176
2018-04-04 17:07:36 -04:00
Kevin ChenandOndřej Surý a8d7b3a12b Add a Net::DNS prereq for digdelv, fetchlimit, rpzrecurse, and zero
tests to avoid failed tests when Net::DNS is not present.

(cherry picked from commit 8b1b809ab4)
2018-04-04 23:00:56 +02:00
Stephen Morris 5fafa7303c Merge branch '139-tests-for-idna2008-libidn2-merge-v9_12' into 'v9_12'
Resolve "Tests for IDNA2008 (libidn2)" - Merge into 9.12

See merge request isc-projects/bind9!174
2018-04-04 10:05:05 -04:00
Stephen Morris 7f6d484d76 Check libidn2 version before proceding with one of the tests.
A known issue in libidn2 causes one of the tests of a fake A-label
to fail.  The problem should be corrected in version 2.0.5 of
libidn2.
2018-04-04 09:47:53 -04:00
Ondřej SurýandStephen Morris 5b9975e38f Use C.UTF-8 if available, and en_US.UTF-8 is available, otherwise do nothing and let the test break 2018-04-04 09:47:53 -04:00
Stephen Morris 5633f8afda Set known locale prior to running tests. 2018-04-04 09:47:53 -04:00
Stephen Morris 38fe1ce60f Fix check for the presence of IDNA. 2018-04-04 09:47:53 -04:00
Stephen Morris 5f00b9dad7 Added additional tests for invalid punycode strings. 2018-04-04 09:47:53 -04:00
Stephen Morris 2df1a2ef20 Initial set of IDNA tests. 2018-04-04 09:47:53 -04:00
Michał Kępień 286cad891a Merge branch '188-remove-duplicate-named_g_conffile-init-v9_12' into 'v9_12'
Remove redundant named_g_conffile initialization

Closes #188

See merge request isc-projects/bind9!166
2018-04-04 12:33:09 +02:00
Ondřej SurýandMichał Kępień 2301f0562e Remove redundant named_g_conffile initialization from bin/named/win32/os.c
(cherry picked from commit c727f0797b)
2018-04-04 12:33:09 +02:00
Ondřej Surý 505b8a2931 Merge branch '26-fix-normalization-for-non-IDN-v9_12' into 'v9_12'
Don't use the IDN translated name if no conversion took a place

See merge request isc-projects/bind9!156
2018-03-22 10:03:50 -04:00
Ondřej Surý 722152db8b Don't use the IDN traslated name if no conversion took a place
(cherry picked from commit 08f66d8509)
2018-03-22 13:54:30 +00:00
Mark Andrews cf8787b6ac Merge branch '167-coverity-dereferencing-a-null-pointer-in-lib-dns-tests-rbt_test-c-v9_12' into 'v9_12'
Resolve "coverity: Dereferencing a null pointer in lib/dns/tests/rbt_test.c"

Closes #167

See merge request isc-projects/bind9!150
2018-03-20 09:54:08 +11:00
Mukund SivaramanandMark Andrews d2dea05356 Check return value of isc_mem_get()
(cherry picked from commit de3a4af1bf)
2018-03-20 09:54:08 +11:00
Mark Andrews da23698286 fix temporary file name to have subtest number
(cherry picked from commit e12453f43c88bac722fb511b62f12303735b788c)
2018-03-19 23:13:44 +11:00
Mark Andrews 10f04106fb Merge branch 'fixtypo-v9_12' into 'v9_12'
fix typo

See merge request isc-projects/bind9!148
2018-03-19 22:51:14 +11:00
Mark Andrews a296346e48 fix typo
(cherry picked from commit 6e4b5f2345)
2018-03-19 22:51:13 +11:00
Mark Andrews 987e31cc3e Merge branch '166-statistics-system-test-numbering-is-bad-v9_12' into 'v9_12'
Resolve "statistics system test numbering is bad"

Closes #166

See merge request isc-projects/bind9!146
2018-03-19 20:19:08 +11:00
Mark Andrews d4978012c2 fix numbering of tests and make consistent
(cherry picked from commit dd5dff3096)
2018-03-19 20:19:07 +11:00
Ondřej Surý 9a1cfc88a7 Merge branch '164-remove-openssl-warning-v9_12' into 'v9_12'
[v9_12] Remove useless OpenSSL warning from configure script

See merge request isc-projects/bind9!140
2018-03-17 10:50:24 -04:00
Ondřej Surý 285e30b1e1 Remove obsolete OpenSSL version check
(cherry picked from commit e9571d29af)
2018-03-17 14:31:02 +00:00
Ondřej Surý 74ff9065f2 Merge branch '26-switch-to-IDNA2008-non-transitional-processing-v9_12' into 'v9_12'
Resolve "Switch to IDNA2008 non-transitional processing (and use libidn2 for that)"

Closes #26

See merge request isc-projects/bind9!124
2018-03-17 13:29:15 +00:00
Ondřej Surý a6afebe852 Add release notes for IDNA2008
(cherry picked from commit e7590c7528)
2018-03-17 13:29:11 +00:00
Ondřej Surý 895f54e5f3 Add CHANGES for idn2 support
(cherry picked from commit 8f44ef7d59)
2018-03-17 13:26:05 +00:00
Ondřej Surý 5c62e0bcf9 Enable --with-libidn2 in GitLab CI checks
(cherry picked from commit 1c075646f5)
2018-03-17 13:26:05 +00:00
Ondřej Surý 52b09a6e78 Simplify the libidn2 configure checks
(cherry picked from commit 76c05a71fc)
2018-03-17 13:26:05 +00:00
Petr MenšíkandOndřej Surý 3ed7706fde Sanitize IDN initialization
Signed-off-by: Petr Menšík <pemensik@redhat.com>
(cherry picked from commit 29b94bbb04)
2018-03-17 13:26:05 +00:00
Petr MenšíkandOndřej Surý 8e2629d4be Remove support for libidn (IDN 2003)
Signed-off-by: Petr Menšík <pemensik@redhat.com>
(cherry picked from commit 8254cf69d3)
2018-03-17 13:26:05 +00:00
Petr MenšíkandOndřej Surý 01daa72ab3 Remove conversion from locale to utf8 from public API
Emit fatal failures on locale to ACE encoding

Separate idnout support, disable it for libidn2 < 2.0

Add custom path to libidn. Leave default path for multilib support.

Allow turning off IDN input processing by dig option

Improve documentation, fix support in host

Fix configure changes to adjust help text

Use strlcpy with size guard

Improve IDN variants choosing. Fix idn2 function name.

Remove immediate idn_locale_to_ace and idn_ace_to_locale.

Signed-off-by: Petr Menšík <pemensik@redhat.com>
(cherry picked from commit 94757c1545)
2018-03-17 13:26:05 +00:00
Tomas HozzaandOndřej Surý cce358c2e0 Add support for libidn2
Added two new configure options:
--with-libidn2 - to enable IDN using GNU libidn2

idnkit, libidn and libidn2 support can not be used at the same time.

NOTE: libidn2 does not support punycode back to Unicode
characters, so support for this is missing.

Signed-off-by: Tomas Hozza <thozza@redhat.com>

Removed iconv, convert directly from locale to ACE

Fix libidn2 and idnkit origin appending

Make IDN options in help less different

Signed-off-by: Petr Menšík <pemensik@redhat.com>
(cherry picked from commit 505f673451)
2018-03-17 13:26:05 +00:00
Tomas HozzaandOndřej Surý 32dc52571d Add support for GNU libidn
Added new configure option:
--with-libidn - to enable IDN using GNU libidn

Renamed configure option:
--with-idn to --with-idnkit to make the option usage more clear

idnkit and libidn support can not be used at the same time.

Signed-off-by: Tomas Hozza <thozza@redhat.com>
(cherry picked from commit 2320443f63)
2018-03-17 13:26:04 +00:00
Evan Hunt 2c24af2c85 Merge branch 'copyrights' into v9_12 2018-03-15 18:40:51 -07:00
Evan Hunt 19b5249028 update file headers 2018-03-15 18:40:21 -07:00
Evan Hunt d698d64713 ensure COPYRIGHT file retains years; edit file headers for consistency 2018-03-15 18:40:09 -07:00
Evan Hunt ca221d3dd3 Merge branch '157-cleanup-win-libtests-v9_12' into 'v9_12'
Resolve "Windows build fails"

Closes #157

See merge request isc-projects/bind9!131
2018-03-15 13:47:16 -07:00
Evan Hunt 439b968972 remove references to lib/tests in the windows build
(cherry picked from commit e2bb9824f8)
2018-03-15 13:47:16 -07:00
Evan Hunt 221a06b3a0 Merge branch '154-fix-atomic-test-v9_12' into 'v9_12'
Resolve "Build failure on OSX with --disable-atomic --enable-developer"

Closes #154

See merge request isc-projects/bind9!130
2018-03-15 12:09:34 -07:00
Evan Hunt a61afa750f add an 'untested' case when none of the atomic operations are available
- this fixes a build failure introduced in change 4913 when
  compiling with ATF and --disable-atomic

(cherry picked from commit 1b3eac926e)
2018-03-15 12:09:33 -07:00
Ondřej Surý 661364c8cf Fix whitespace 2018-03-15 00:14:23 +01:00
Evan Hunt ef4f433c37 Merge branch 'branchsync' into 'v9_12'
update branchsync to deal with merge commits

See merge request isc-projects/bind9!127
2018-03-14 14:42:53 -07:00
Evan Hunt b1d52fa1b5 updated branchsync to deal with merge commits
(cherry picked from commit fccf8ca2f6)
2018-03-14 14:42:15 -07:00
Ondřej Surý c0a760ac3e [v9_12] Enable GitLab CI 2018-03-14 12:37:17 +01:00
Evan Hunt 77a59b1b4d Merge branch '134-fix-zone-db-reference-counting' into 'v9_12'
Fix a zone database reference counting bug in dump_done()

Closes #134

See merge request isc-projects/bind9!122
2018-03-13 10:52:14 -07:00
Michał KępieńandEvan Hunt e000efa6fd Add CHANGES entry
4914.	[bug]		A bug in zone database reference counting could lead to
			a crash when multiple versions of a slave zone were
			transferred from a master in close succession.
			[GL #134]

(cherry picked from commit 6f3cc75364)
2018-03-13 10:52:01 -07:00
Michał KępieńandEvan Hunt f2838e68e8 Fix a zone database reference counting bug in dump_done()
A typo in commit d39ab7440e introduced a bug in zone database reference
counting which leads to a crash if dumping one version of a slave zone
is not finished by the time transferring a newer version from a master
completes.  Correct the typo to fix reference counting, thus preventing
crashes.

(cherry picked from commit fbd5658db7)
2018-03-13 10:52:01 -07:00
Evan Hunt 165bcaf1a3 Merge branch 'clean-xfer' into 'v9_12'
clean up dig.out files that were left behind after xfer test

See merge request isc-projects/bind9!120
2018-03-10 13:12:26 -08:00
Evan Hunt b52199271a clean up dig.out files that were left behind after xfer test
(cherry picked from commit 733086cc67)
2018-03-10 13:12:20 -08:00
Evan Hunt b337c62aaa Merge branch 'nothreads-fix' into 'v9_12'
Fix compiler warnings and test failures when building without threads

See merge request isc-projects/bind9!119
2018-03-10 10:37:32 -08:00
Evan Hunt 09fade72a0 Fix compiler warnings and test failures when building without threads
(cherry picked from commit 56353aaf42)
2018-03-10 10:37:12 -08:00
Evan Hunt 674ec1d566 Merge branch 'missing-print-h' into 'v9_12' 2018-03-09 16:56:30 -08:00
Evan Hunt 07e2e20868 add missing includes
(cherry picked from commit a173c9c18f)
2018-03-09 16:55:56 -08:00
Evan Hunt 3cf91223b3 Merge branch 'copyrights' into v9_12 2018-03-09 16:53:20 -08:00
Evan Hunt 11ab3146e7 fix copyrights 2018-03-09 16:52:56 -08:00
Evan Hunt 7bc7557df9 Merge branch 'clean-bin-tests-v9_12' into 'v9_12'
clean up bin/tests, convert unit tests to ATF

Closes #115

See merge request isc-projects/bind9!93
2018-03-09 14:40:12 -08:00
Evan Hunt 80834b5b90 final cleanup
- update Kyuafiles to match Atffiles
- copyrights
- CHANGES note

(cherry picked from commit 86e00cbb71)
2018-03-09 14:40:12 -08:00
Evan Hunt 7f4e62d902 reduce race risk in parallel builds
(cherry picked from commit 74347f4a55)
2018-03-09 14:40:10 -08:00
Evan Hunt d35f62434a remove lib/tests as nothing uses it anymore
(cherry picked from commit d132f73497)
2018-03-09 14:39:57 -08:00
Evan Hunt 289836a066 shorten ht_test and random_test
(cherry picked from commit 9b753aa154)
2018-03-09 14:39:56 -08:00
Evan Hunt 4439c471d1 migrate t_dst signature test to lib/dns/tests/dst_test
(cherry picked from commit a4ebe83cdb)
2018-03-09 14:39:56 -08:00
Evan Hunt 56da937399 migrate t_db to lib/dns/tests/db_test
(cherry picked from commit f58ac8ada3)
2018-03-09 14:39:56 -08:00
Evan Hunt aefad99e1e migrate t_names to lib/dns/tests/name_test
(cherry picked from commit 8ecf69ef7b)
2018-03-09 14:39:56 -08:00
Evan Hunt c505afd183 migrate t_rbt to lib/dns/tests/rbt_test
(cherry picked from commit 109546cbda)
2018-03-09 14:39:56 -08:00
Evan Hunt 88bfe56876 migrate t_tasks to lib/isc/tests/task_test
(cherry picked from commit c6c1e99252)
2018-03-09 14:39:56 -08:00
Evan Hunt 30e157f6e4 migrate t_resolver to lib/dns/tests/resolver_test
(cherry picked from commit d80825c40b)
2018-03-09 14:39:56 -08:00
Evan Hunt efccdad0ea migrate t_timers to lib/isc/tests/timer_test
(cherry picked from commit e2b8699df9)
2018-03-09 14:39:56 -08:00
Evan Hunt c7fa56e8db migrate t_atomic to lib/isc/tests/atomic_test
(cherry picked from commit 874e2fc70c)
2018-03-09 14:39:55 -08:00
Evan Hunt af48544b75 migrate t_mem to lib/isc/tests/mem_test
(cherry picked from commit 979f054702)
2018-03-09 14:39:55 -08:00
Evan Hunt af0c9b2cee migrate t_net to lib/isc/tests
(cherry picked from commit 05b7251d51)
2018-03-09 14:39:55 -08:00
Evan Hunt fadb93cf43 migrate t_sockaddr to lib/isc/tests
(cherry picked from commit 62f650078a)
2018-03-09 14:39:55 -08:00
Evan Hunt e686b9c297 remove hashes test (duplicates lib/isc/tests/hash_test)
(cherry picked from commit 6ad1a042bc)
2018-03-09 14:39:55 -08:00
Evan Hunt 36d08442bc remove master test (duplicates lib/isc/tests/master_test)
(cherry picked from commit 6717f31e10)
2018-03-09 14:39:55 -08:00
Evan Hunt d8f8eee381 migrate tests from bin/tests/dnssec-signzone to bin/tests/system/dnssec
- added tests to the dnssec system test that duplicate the ones
  from bin/tests/dnssec-signzone
- changed cleanall.sh so it doesn't automatically remove all
  key files, because there are now some of those that are part of the
  distribution

(cherry picked from commit ccfe778c01)
2018-03-09 14:39:55 -08:00
Evan Hunt dafdf2c09b move all optional tests from bin/tests to bin/tests/optional
- some of these tests are obsolete and should be cleared up,
  others overlap with ATF tests and may be removed later.
  for now, let's just tidy up the bin/tests directory by
  moving these files down a level.

(cherry picked from commit 344ab0eb7d)
2018-03-09 14:39:54 -08:00
Evan Hunt 10efb4ff07 remove some old and obsolete test files
(cherry picked from commit a633f6c5dd)
2018-03-09 14:39:54 -08:00
Evan Hunt d66e66ff95 Merge branch 'parallel-unit-tests' into 'v9_12'
capture more info from unit tests, run in parallel

See merge request isc-projects/bind9!117
2018-03-09 14:37:10 -08:00
Evan Hunt 787c5d1394 allow ATF tests to run in parallel
(cherry picked from commit ef0b4c91bc)
2018-03-09 14:36:06 -08:00
Evan Hunt 81c23fecda capture more information from unit tests
- preserve kyua results database when using kyua
2018-03-09 14:35:21 -08:00
Evan Hunt c54e379267 Merge branch 'v9_12_1_patch' into v9_12 2018-03-08 14:26:15 -08:00
Evan Hunt b523f7dae6 Merge branch 'rm-contrib-md' into v9_12 2018-03-08 12:58:41 -08:00
Evan Hunt 3d06eedf87 remove doc/dev/contrib.md now that CONTRIBUTING.md exists 2018-03-08 12:58:06 -08:00
Evan Hunt b2307b2546 Merge branch 'remove-bind9-bugs-references' into 'v9_12_1_patch'
Update documentation to remove obsolete bind9-bugs@isc.org email address

See merge request isc-projects/bind9!111
2018-03-08 12:56:40 -08:00
Ondřej SurýandEvan Hunt b6a5a9b29e Update documentation to remove obsolete bind9-bugs@isc.org email address
(cherry picked from commit efc9bc5d8d)
(cherry picked from commit 486e79050f)
2018-03-08 12:51:19 -08:00
Michał Kępień 707e538a42 Merge branch '136-tweak-timestamp-checking-in-the-cds-system-test-v9_12' into 'v9_12'
Tweak timestamp checking in the cds system test

Closes #136

See merge request isc-projects/bind9!114
2018-03-08 21:00:57 +01:00
Michał Kępień 1eae5f544b Add CHANGES entry
4912.	[test]		Improved the reliability of the 'cds' system test.
			[GL #136]

(cherry picked from commit c92bacec63)
2018-03-08 21:00:57 +01:00
Michał Kępień be1262c066 Tweak timestamp checking in the cds system test
Given the characteristics of the three timestamps involved in file
modification time checks in the cds system test (each one is an hour
apart from the next), reduce the resolution of these checks to 1 minute.
This will prevent intermittent false negatives caused by exceeding the
currently allowed difference of 9 seconds between file modification
times without making the test moot.

Also note that by using abs(), checkmtime.pl allows the cds system test
to pass when the modification time of the checked file is less than an
hour (or two hours for the second check) in the past.  This should never
happen, so remove abs() from the condition checked by checkmtime.pl.

(cherry picked from commit ab2913a29f)
2018-03-08 21:00:56 +01:00
Evan Hunt d45f656d82 Merge branch 'remove-bind9-bugs-references' into 'v9_12'
Update documentation to remove obsolete bind9-bugs@isc.org email address

See merge request isc-projects/bind9!111
2018-03-08 10:40:44 -08:00
Ondřej SurýandEvan Hunt 486e79050f Update documentation to remove obsolete bind9-bugs@isc.org email address
(cherry picked from commit efc9bc5d8d)
2018-03-08 10:39:36 -08:00
Michał Kępień e205025ace Merge branch '128-fix-mkeys-system-test-race-v9_12' into 'v9_12'
Fix a race in the mkeys system test

Closes #128

See merge request isc-projects/bind9!103
2018-03-08 13:35:34 +01:00
Michał Kępień 508b35fcbc Add CHANGES entry
4911.	[test]		Improved the reliability of the 'mkeys' system test.
			[GL #128]

(cherry picked from commit 32f875f9fc)
2018-03-08 13:35:33 +01:00
Michał Kępień 8e01609014 Fix a race between "rndc reconfig" and waiting for a ./DNSKEY fetch to complete
Calling nextpart() after reconfiguring ns1 is not safe, because the
expected log message may appear in ns5/named.run before nextpart() is
run.  With the TTL for ./DNSKEY set to 20 seconds, ns5 will refresh it
after 10 seconds, by which time wait_for_log() will already have failed.
This results in a false negative.

However, just calling nextpart() before reconfiguring ns1 would
introduce a different problem: if ns5 refreshed ./DNSKEY between these
two steps, the subsequent wait_for_log() call would return immediately
as it would come across the log message about a failure while refreshing
./DNSKEY instead of the expected success.  This in turn would result in
a different false negative as the root key would still be uninitialized
by the time "rndc secroots" is called.

Prevent both kinds of false negatives by:

  - calling nextpart() before reconfiguring ns1, in order to prevent the
    first case described above,

  - looking for a more specific log message, in order to prevent the
    second case described above.

Also look for a more specific log message in the first part of the
relevant check, not to fix any problem, but just to emphasize that a
different fetch result is expected in that case.

With these tweaks in place, if a (failed) ./DNSKEY refresh is scheduled
between nextpart() and reconfiguring ns1, wait_for_log() will just wait
for two more seconds (one "hour"), at which point another refresh
attempt will be made that will succeed.

(cherry picked from commit 012ca0a27d)
2018-03-08 13:35:33 +01:00
Mark Andrews 2145e72644 Merge branch '133-update-util-check-changes-to-work-on-release-branches-v9_12' into 'v9_12'
Resolve "Update util/check-changes to work on release branches."

Closes #133

See merge request isc-projects/bind9!110
2018-03-08 16:18:37 +11:00
Mark Andrews b8d8f846fa update util/check-changes to handle non master branched (util/check-changes master=0 CHANGES)
(cherry picked from commit 88a2202093)
2018-03-08 16:18:36 +11:00
Mark Andrews 586b547a7d fix changes number 2018-03-08 12:40:28 +11:00
Mark Andrews 802f41db30 Merge branch '125-in-view-duplicate-zone-not-detected-by-named-checkconf-v9_12' into 'v9_12'
Resolve "in-view duplicate zone not detected by named-checkconf"

Closes #125

See merge request isc-projects/bind9!97
2018-03-08 12:15:50 +11:00
Mark Andrews 9c056b8fda add changes note for 'named-checkconf did not detect in-view zone collisions'
(cherry picked from commit 83f85817aa)
2018-03-08 12:15:34 +11:00
Mark Andrews a395ee02d3 check for in-view zones colliding with other zone definitions; also check the syntax of the in-view zone name
(cherry picked from commit 3e7e280040)
2018-03-08 12:15:29 +11:00
Mark Andrews 119f626ffa add test configuration where a in-view zone collides with a existing zone
(cherry picked from commit ca55c672b0)
2018-03-08 12:09:03 +11:00
Tinderbox User 77a22353b2 Merge branch 'prep-release' into v9_12_1_patch 2018-03-08 00:55:33 +00:00
Tinderbox User 71f67a0bf6 prep 9.12.1 2018-03-08 00:51:07 +00:00
Evan Hunt 033c1767aa Merge branch 'test-names-v9_12' into 'v9_12'
use the test name in the -D string for each name server

See merge request isc-projects/bind9!107
2018-03-07 14:51:06 -08:00
Evan Hunt 105c8a8cd3 use the test name in the -D string for each name server
(cherry picked from commit 1eff695f33)
2018-03-07 14:51:06 -08:00
Evan Hunt fcea5b8870 Merge branch 'longopts-v9_12' into 'v9_12'
restore long options for run.sh

See merge request isc-projects/bind9!104
2018-03-07 14:35:24 -08:00
Evan Hunt 602533aace restore long options for run.sh
(cherry picked from commit 4a714bffbc)
2018-03-07 14:35:24 -08:00
Evan Hunt f8d096ec3c Merge branch 'allow-query' into 'v9_12'
speed up allow_query test

Closes #81

See merge request isc-projects/bind9!76
2018-03-07 14:20:05 -08:00
Evan Hunt bbbf2418e9 eliminate unnecessary waiting in allow-query test
- grep in the log to see if configuration is finished rather
  than sleeping for 5 seconds

(cherry picked from commit a9b6bed6af)
2018-03-07 13:59:32 -08:00
Evan Hunt f6f6a80c4a rename allow_query to allow-query
(cherry picked from commit ffc3e73c36)
2018-03-07 13:59:32 -08:00
Evan Hunt 18d2368f98 Merge branch '116-dnsrpz-enable-log-message-appears-to-be-broken-v9_12' into 'v9_12'
Resolve "dnsrpz-enable log message appears to be broken"

Closes #116

See merge request isc-projects/bind9!98
2018-03-07 12:56:07 -08:00
Mark AndrewsandEvan Hunt 9354d3443b fix log message about 'dnsrps-enable yes;' when not configured (this will only ever be emitted if the parser is incorrectly updated as the error is normally caught there)
(cherry picked from commit d24fb6b032)
2018-03-07 12:56:07 -08:00
Evan Hunt 229c5b169e Merge branch '119-remove-unnecessary-insist-in-code-v9_12' into 'v9_12'
Remove unnecessary INSIST

Closes #119

See merge request isc-projects/bind9!101
2018-03-07 12:32:17 -08:00
Mark AndrewsandEvan Hunt 573b33b6c2 check insist on every call; make conditional block constistent with rest of code
(cherry picked from commit f1def91625)
2018-03-07 12:32:17 -08:00
Evan Hunt 8bd3a1c737 Merge branch 'fix-notify-v9_12' into 'v9_12'
fix notify test

See merge request isc-projects/bind9!77
2018-03-06 11:46:15 -08:00
Evan Hunt ad32553c1d address a possible notify test failure
- wait for the transfer completion message to apear in the log instead
  of the notify message. this ensures we don't check for the presense of
  transfered records during the time between the notify and the
  transfer.
2018-03-06 11:45:43 -08:00
Michał Kępień b09cbb3954 Merge branch '110-libirs-do-not-ignore-resolv.conf-syntax-errors-v9_12' into 'v9_12'
libirs: Do not ignore resolv.conf syntax errors

Closes #110

See merge request isc-projects/bind9!78
2018-03-06 09:24:13 +01:00
Michał Kępień ecc0d5d10c Add CHANGES entry
4905.	[bug]		irs_resconf_load() ignored resolv.conf syntax errors
			when "domain" or "search" options were present in that
			file. [GL #110]

(cherry picked from commit 1f18d33804)
2018-03-06 09:24:09 +01:00
Michał Kępień b873806cae Remove duplicate irs_resconf_load() unit test
The "sortlist-v4.conf" unit test for irs_resconf_load() is always run
twice due to a duplicate entry in the "tests" table.  Remove one of them
to prevent this.

(cherry picked from commit 6c09f305ae)
2018-03-06 09:23:49 +01:00
Michał Kępień c437451566 Do not ignore resolv.conf syntax errors
irs_resconf_load() stores the value returned by add_search() into ret
without consulting its current value first.  This causes any previous
errors raised while parsing resolv.conf to be ignored as long as any
"domain" or "search" statement is present in the file.

Prevent this by returning early in case an error is detected while
parsing resolv.conf.  Ensure that "searchlist" and "magic" members of
the created irs_resconf_t structure are always initialized before
isc_resconf_destroy() is called.

(cherry picked from commit 1f400b68a8)
2018-03-06 09:23:48 +01:00
Mark Andrews d798b092ef Merge branch '126-make-distclean-fail-v9_12' into 'v9_12'
Resolve ""make distclean" fail."

Closes #126

See merge request isc-projects/bind9!102
2018-03-06 16:11:12 +11:00
Mark Andrews e9969b6d9d don't allow a macro to end in '\'
(cherry picked from commit 57f7cf211c)
2018-03-06 16:11:12 +11:00
Tinderbox User 44f2796dd6 Merge branch 'prep-release' into v9_12_1_patch 2018-03-02 21:57:33 +00:00
Tinderbox User 38be7f6d9b prep 9.12.1rc2 2018-03-02 21:53:26 +00:00
Evan Hunt f8efc9c0a4 Merge branch '124-revert-deadlock-check' into 'v9_12_1_patch'
revert cname loop test due to effects on apex CNAMEs under insecure delegations

See merge request isc-projects/bind9!95
2018-03-02 12:18:50 -08:00
Evan Hunt 06b52cc939 temporarily revert change #4859 2018-03-02 12:14:20 -08:00
Evan Hunt 31ea795d08 Merge branch '124-revert-deadlock-check-v9_12' into 'v9_12'
revert cname loop test due to effects on apex CNAMEs under insecure delegations

See merge request isc-projects/bind9!95
2018-03-02 12:02:18 -08:00
Evan Hunt 84ec07999f temporarily revert change #4859 2018-03-02 12:01:55 -08:00
Michał Kępień cb2fd43e46 Merge branch 'fix-fetchlimit-v9_12' into 'v9_12'
Improve failure logging in fetchlimit system test

See merge request isc-projects/bind9!81
2018-03-01 15:40:50 +01:00
Evan HuntandMichał Kępień 8011165d76 revise soft limit test
- don't bail out of the loop if clients are exceeded, just count incidents
- verbosely describe expectations and results

(cherry picked from commit 86838b2a02)
2018-03-01 15:40:50 +01:00
Michał Kępień e088d7aac5 Merge branch '121-views-system-test-has-wrong-test-strings-for-reload-completion-v9_12' into 'v9_12'
Resolve "views system test has wrong test strings for reload completion."

Closes #121

See merge request isc-projects/bind9!88
2018-02-28 14:55:47 +01:00
Mark AndrewsandMichał Kępień dd1579877f wait for 'all zones loaded' rather than 'reloading zones succeeded' which just indicates that everything kicked off ok
(cherry picked from commit 4cb0873a0a)
2018-02-28 14:55:47 +01:00
Evan Hunt c406a8182b Merge branch '113-minor-testsummary.sh-improvements-v9_12' into 'v9_12'
Minor testsummary.sh improvements (handling colored output, failure summary)

Closes #113

See merge request isc-projects/bind9!80
2018-02-27 10:04:14 -08:00
Evan Hunt fe8bec4b31 Do not destroy systests.output if there are no test.output files
(cherry picked from commit 38940619c6)
2018-02-27 10:04:13 -08:00
Michał KępieńandEvan Hunt 791f26b2c9 Use echoinfo for printing test summary
This ensures testsummary.sh is consistent with other scripts belonging
to the test framework.

(cherry picked from commit 642e20db8a)
2018-02-27 10:04:13 -08:00
Michał KępieńandEvan Hunt 3bd658f561 Make testsummary.sh print a list of failed system tests
Print a list of failed system tests, if any, below the system test
summary to avoid the need to manually search through the test log.

(cherry picked from commit 28068857e7)
2018-02-27 10:04:13 -08:00
Michał KępieńandEvan Hunt 4a5754705d Tweak the regular expression used for extracting system test results
The current regular expression used for extracting system test results
from systests.output, "^R:", is anchored at the start of a line, which
prevents colored system test output from being properly processed.  As
just "R:" would arguably be too general, extend the pattern a bit to
ensure it will only match lines containing system test results.

(cherry picked from commit 9006d6dbbd)
2018-02-27 10:04:13 -08:00
Evan Hunt a699e68e75 Merge branch 'test-output-v9_12' into 'v9_12'
Clean up test output

See merge request isc-projects/bind9!66
2018-02-27 09:41:38 -08:00
Evan Hunt 5053a56072 clean up test output
- removed a few remaing places where output wasn't being passed
  through echo_i or cat_i
- added a "digcomp" function to conf.sh.in to send digcomp.pl output
  through cat_i and return the correct exit value
- set SYSTESTDIR when calling echo_i from nsX directories, so that
  the test name will always be printed correctly
- fixed a test name typo in conf.sh.in

(cherry picked from commit 0e52fbd0b3)
2018-02-27 09:41:38 -08:00
Michał Kępień 173907df58 Merge branch '98-add-util-git-replay-merge.sh-v9_12' into 'v9_12'
Put git-replay-merge in source tree

Closes #98

See merge request isc-projects/bind9!83
2018-02-27 10:42:58 +01:00
Michał Kępień 61d02465cb Add util/git-replay-merge.sh
git-replay-merge.sh is a script whose purpose is to make backporting
merge requests more convenient by automating the process as much as
possible.

For more information, including usage examples, see:

    https://gitlab.isc.org/isc-projects/bind9/wikis/Backporting-a-Merge-Request

(cherry picked from commit f7fe1e3098)
2018-02-27 10:42:58 +01:00
Evan Hunt 4ead1640e3 Merge branch '112-fix-mx-checks-for-dynamic-updates-v9_12' into 'v9_12'
Fix MX checks for dynamic updates

Closes #112

See merge request isc-projects/bind9!79
2018-02-26 15:16:33 -08:00
Michał KępieńandEvan Hunt 71a35bc8e5 Add CHANGES entry
4903.	[bug]		"check-mx fail;" did not prevent MX records containing
			IP addresses from being added to a zone by a dynamic
			update. [GL #112]

(cherry picked from commit 1d403f9d3c)
2018-02-26 15:15:56 -08:00
Michał KępieńandEvan Hunt 590f092e00 Fix MX checks for dynamic updates
The check_mx() function in lib/ns/update.c incorrectly tests whether the
DNS_RDATA_CHECKMX/DNS_RDATA_CHECKMXFAIL flags are set for each applied
MX record update as these flags are never set in code paths related to
dynamic updates; they can only be set when loading a zone from a master
file (DNS_ZONEOPT_CHECKMX -> DNS_MASTER_CHECKMX -> DNS_RDATA_CHECKMX).
This flaw allows MX records containing IP addresses to be added to a
zone even when "check-mx fail;" is used.

Ensure correct behavior by modifying the relevant tests in check_mx() so
that they use DNS_ZONEOPT_CHECKMX/DNS_ZONEOPT_CHECKMXFAIL instead.

(cherry picked from commit 857a40c87b)
2018-02-26 15:15:27 -08:00
Evan Hunt 537d5cc191 Merge branch 'check-for-test-interfaces-before-running-system-tests-v9_12' into 'v9_12'
Check for test interfaces before running system tests

See merge request isc-projects/bind9!19
2018-02-26 15:10:18 -08:00
Evan Hunt bf4c798819 test interfaces directly in runall.sh and parallel.mk
(cherry picked from commit a8b583e78b)
2018-02-26 15:10:18 -08:00
Michał KępieńandEvan Hunt 9cd1a41f31 Check for test interfaces before running system tests
Prevent runall.sh and "make test" from even attempting to run system
tests when "ifconfig.sh up" has not been run beforehand.  This ensures
the user is not flooded with error messages in such a case.

(cherry picked from commit e0221f2d25)
2018-02-26 15:10:18 -08:00
Evan Hunt a11b44e17e Merge branch '66-ixfr-system-test-fails-intermittently-v9_12' into 'v9_12'
chg: dev: Improved the reliability of the 'ixfr' system test. [GL #66]

Closes #66

See merge request isc-projects/bind9!67
2018-02-26 14:59:17 -08:00
Evan Hunt 70f37ce833 wait for synchronization; re-notify slave if the transfer doesn't happen
(cherry picked from commit 67a8b5ec17)
2018-02-26 14:59:09 -08:00
Mark Andrews 660c307a97 Merge branch '51-fix-cppcheck-detected-source-code-errors-v9_12' into 'v9_12'
Resolve "Fix cppcheck-detected source code errors"

Closes #51

See merge request isc-projects/bind9!46
2018-02-26 10:39:45 +11:00
Evan HuntandMark Andrews 26b1e37f87 minor cleanup and addressed a sprintf format warning
(cherry picked from commit ab0fe63f07)
2018-02-26 10:39:44 +11:00
Mark Andrews a29f564e1f update printf format to match type
(cherry picked from commit 48ca11df5f)
2018-02-26 10:39:44 +11:00
Mark Andrews 7adbccfb6d improve the conditional declaration and use of variable to silence cppcheck
(cherry picked from commit a04bb76973)
2018-02-26 10:39:44 +11:00
Mark Andrews a7c51e8c79 remove deadcode
(cherry picked from commit b71a1386ed)
2018-02-26 10:39:44 +11:00
Mark Andrews c5b7bdf0cb silence unread assignment warning by using POST macro
(cherry picked from commit e8249dcd49)
2018-02-26 10:39:44 +11:00
Mark Andrews 1470774f9c update the sscanf format strings so they match the pointer types
(cherry picked from commit 70d192eb97)
2018-02-26 10:39:44 +11:00
Mark Andrews efb8880d1b redefine CHECK so cppcheck see the definition
(cherry picked from commit a4186b1867)
2018-02-26 10:39:44 +11:00
Mark Andrews 4fd6458326 remove unused struct dst_context declaration
(cherry picked from commit f2c22662cc)
2018-02-26 10:39:44 +11:00
Mark Andrews b34931bd49 conditionally typedef fstrmtable
(cherry picked from commit dcd309bea1)
2018-02-26 10:39:43 +11:00
Mark Andrews 65bf254fc8 adjust goto target and conditional compilation so that cleanup_spillattimer and cleanup_alglock labels match the element to be cleanup and so that they are always used
(cherry picked from commit 7b27be54ee)
2018-02-26 10:39:43 +11:00
Evan Hunt 2a5cc9dd85 Merge branch 'note-v9_12' into 'v9_12'
add missing release note

See merge request isc-projects/bind9!73
2018-02-25 14:39:45 -08:00
Evan Hunt c170745f8c added missing release note
(cherry picked from commit cc5432cea5)
2018-02-25 14:39:45 -08:00
Evan Hunt 992a964d38 Merge branch 'upforwd-error-v9_12' into 'v9_12'
Resolve "upforwd test error"

See merge request isc-projects/bind9!72
2018-02-25 13:55:59 -08:00
Evan Hunt 26c1d47e88 fixed an upforwd test error.
(cherry picked from commit 54e010d51e)
2018-02-25 13:55:59 -08:00
Evan Hunt 4a84773a22 Merge branch 'tidy-runall.sh-environment-variables-v9_12' into 'v9_12'
Tidy runall.sh environment variables

See merge request isc-projects/bind9!18
2018-02-24 17:35:57 -08:00
Michał KępieńandEvan Hunt 62ae94478c Preserve values of environment variables which are already set
This enables the environment variables controlling run.sh behavior to be
permanently set in a working environment (e.g. to automatically force
colored output without using "-c" in each runall.sh invocation).

Relevant runall.sh command line arguments still have a higher priority.

(cherry picked from commit d989d20fe5)
2018-02-24 17:35:57 -08:00
Michał KępieńandEvan Hunt 1ff4ee81e0 Allow forcing colored system test output
As parallel.mk and runsequential.sh both pipe system test output through
"tee" (for the purpose of creating test.output), run.sh invoked from
these two files detects it is not writing to a terminal, which prevents
colored output from being generated.  Allow forcing colored output using
a new command line argument for runall.sh, "-c", which sets an
environment variable (SYSTEMTEST_FORCE_COLOR) causing conf.sh to
unconditionally enable colored output.

The same environment variable can also be used directly to force colored
output when using "make test" instead of runall.sh.

(cherry picked from commit a324031a82)
2018-02-24 17:35:57 -08:00
Michał KępieńandEvan Hunt 3c9384eebb Allow retaining system test output using an environment variable
Instead of exporting an environment variable containing a command line
argument (NOCLEAN="-n"), extend run.sh to handle a "boolean" environment
variable (SYSTEMTEST_NO_CLEAN) itself.  The former method is buggy
because the value of NOCLEAN is set in parallel.mk when that file is
first created, but it is not subsequently updated upon each test run
(because make considers parallel.mk to be up to date).

To retain backward compatibility, the "-n" command line argument for
run.sh is still supported (and has a higher priority than the relevant
environment variable).

The SYSTEMTEST_NO_CLEAN environment variable can also be used directly
to prevent cleanup when using "make test" instead of runall.sh.

Apart from fixing a bug, this simplifies the way runall.sh controls
run.sh behavior due to the Makefile being bypassed.  Direct processing
of environment variables in run.sh is more scalable in the long run,
given that the previously utilized technique, even with its
implementation fixed, would still require Makefile.in to be modified in
two places each time a new flag needed to be passed from runall.sh to
run.sh.

(cherry picked from commit 3862043879)
2018-02-24 17:35:57 -08:00
Evan Hunt bf1928c30a Merge branch '71-xfer-system-test-fails-intermittently-v9_12' into 'v9_12'
chg: dev: Improve the resilience of the xfer system test, which could be flaky under load.

Closes #71

See merge request isc-projects/bind9!61
2018-02-24 01:45:49 -08:00
Evan Hunt 09a1a261dc improve reliability of xfer test
(cherry picked from commit 5d7d6881a1)
2018-02-24 01:45:46 -08:00
Evan Hunt ed64c0f619 Merge branch 'kyua-oot-v9_12' into 'v9_12'
chg: dev: Unit tests were broken in out-of-tree builds.

See merge request isc-projects/bind9!57
2018-02-23 15:45:20 -08:00
Petr MenšíkandEvan Hunt eb5c7e91fa unit/unittest.sh is generated by configure. It will always be
generated into builddir. If out-of-tree build is used, make unit
will always fail. Kyuafiles and testdata still have to be copied
manually into the builddir.

(cherry picked from commit 95cde3608a)
2018-02-23 15:45:19 -08:00
Evan Hunt 2505871105 Merge branch 'master-v9_12' into 'v9_12'
Code cleanups

See merge request isc-projects/bind9!36
2018-02-23 13:51:29 -08:00
Petr MenšíkandEvan Hunt d04af52222 Reduce repeated detection of mysql lib directory.
Use common part once a bit later.

(cherry picked from commit 2a70eae04f)
2018-02-23 13:51:23 -08:00
Petr MenšíkandEvan Hunt cb98ce8e67 Reuse new function from rt46864 for similar block elsewhere.
(cherry picked from commit e7a93321f0)
2018-02-23 13:51:23 -08:00
Evan Hunt 574475539d Merge branch '95-fix-dyndb-v9_12' into 'v9_12'
Resolve "dyndb system test fails intermittently"

Closes #95

See merge request isc-projects/bind9!63
2018-02-23 13:39:55 -08:00
Evan Hunt b41d27d2a2 improve dyndb test resilience
- no longer grep for specific line numbers when checking
  parameter logging, as those can change
- report the failure immediatey if parameter check fails

(cherry picked from commit 749df056be)
2018-02-23 13:39:55 -08:00
Michał KępieńandOndřej Surý 59c637c019 Fix dyndb system test after copyright information update
(cherry picked from commit b20ff30a79)
2018-02-23 16:02:48 +01:00
Ondřej Surý 06dd7555e5 Merge branch 'year-2018-copyright-update-in-master-v9_12' into 'v9_12'
Remove copyright years from individual source files (and keep them only in the COPYRIGHT file)

Closes #55

See merge request isc-projects/bind9!37
2018-02-23 10:38:10 +01:00
Ondřej Surý 557a5c3f78 Update license headers to not include years in copyright in all applicable files
(cherry picked from commit 843d389661)
2018-02-23 10:38:02 +01:00
Ondřej Surý b1fb05bead Update scripts in util/ to drop the year information from the individual source files.
(cherry picked from commit c8efcca408)
2018-02-23 10:34:51 +01:00
Ondřej Surý 6454e7169f Merge branch '91-parallel-tests-v9_12' into 'v9_12'
chg: dev: Convert most of the remaining system tests to be able to run in parallel [GL #91]

Closes #91

See merge request isc-projects/bind9!59
2018-02-23 08:34:40 +01:00
Evan HuntandOndřej Surý 7f1039d8d0 final cleanup
- add CHANGES note
- update copyrights and license headers
- add -j to the make commands in .gitlab-ci.yml to take
  advantage of parallelization in the gitlab CI process

(cherry picked from commit 0c559199bf)
2018-02-23 08:34:37 +01:00
Evan HuntandOndřej Surý a5015d7791 improve reliability of the xfer test on slow systems
- lengthed the wait loop for the transfers to complete

(cherry picked from commit b9246ce773)
2018-02-23 08:32:03 +01:00
Evan HuntandOndřej Surý 7971873639 remove v6synth
- this was a test for the allow-v6-synthesis option, which was
  deprecated and no longer works. the test was removed
  from conf.sh.in long ago.

(cherry picked from commit 474b10a133)
2018-02-23 08:32:03 +01:00
Evan HuntandOndřej Surý 17245b86d5 removed some unnecessary greps
(cherry picked from commit 731ad28be2)
2018-02-23 08:32:03 +01:00
Evan HuntandOndřej Surý 4429f8b291 reorder tests to get better use of parallelism
(cherry picked from commit 56e440f65f)
2018-02-23 08:32:03 +01:00
Evan HuntandOndřej Surý 2b81f322cb parallelize most system tests
(cherry picked from commit c032c54dda)
2018-02-23 08:31:59 +01:00
Mark Andrews 9554107d15 Merge branch 'cherry-pick-14388a4a' into 'v9_12'
Merge branch '68-rpz-system-test-fails-intermittently' into 'v9_12'

See merge request isc-projects/bind9!54
2018-02-21 23:10:50 -05:00
Mark Andrews dc445b7d8a Merge branch '68-rpz-system-test-fails-intermittently' into 'master'
Prevent rpz system test from wiping out forensic data

See merge request isc-projects/bind9!51

(cherry picked from commit 14388a4ad6)

034450ba add test numbers as use them in file names
05f9deba use symbolic test modes native/dnsrps
b98a9207 perform rpz testing with a loop rather that recursion
f7172cf2 add CHANGES note
2018-02-21 23:10:12 -05:00
Mark Andrews c50bae4a04 Merge branch 'cherry-pick-aa7964dd' into 'v9_12'
Merge branch '82-cacheclean-test-is-not-robust' into 'v9_12'

See merge request isc-projects/bind9!52
2018-02-21 20:33:58 -05:00
Mark Andrews d7cd9fe95b Merge branch '82-cacheclean-test-is-not-robust' into 'master'
Resolve "cacheclean test is not robust."

Closes #82

See merge request isc-projects/bind9!50

(cherry picked from commit aa7964dd4b)

146c16c0 check that sed selects a non zero range of lines
8c8ad74a add CHANGES entry
2018-02-21 20:17:21 -05:00
Stephen Morris b3c84d31ac Merge branch 'rt46602-v9_12' into 'v9_12'
Allow parallel run of system tests

See merge request isc-projects/bind9!7
2018-02-21 15:47:16 +00:00
Stephen Morris 13a89cf671 [rt46602] Update CHANGES for parallel tests 2018-02-21 15:47:03 +00:00
Stephen Morris 1d1b37d838 [rt46602] Changes to get tests running on Windows
1. Track changes to conf.sh.in in conf.sh.win32
2. Modifications to prevent Windows "Configure" script replacing
   the sed "@PORT@" substitution tokens in conf.sh.win32.
3. runall.sh now runs Windows tests sequentially

(cherry picked from commit 7bb9a97904)
2018-02-21 15:44:40 +00:00
Stephen Morris a9e25e9686 [rt46602] Miscellaneous changes to fix rebase issues
(cherry picked from commit 7222c9fc76)
2018-02-21 15:44:40 +00:00
Stephen Morris 2b0b035571 [rt46602] Change name of shell variable holding current test directory
It was TESTNAME, but this is an obvious name and was used in one of
the system tests, something that interfered with the content of
progress messages.  It is now SYSTESTDIR.

(cherry picked from commit 30cd931a0d)
2018-02-21 15:44:40 +00:00
Michał KępieńandStephen Morris 8fc6d51b0d [rt46602] Export environment variables in a portable manner
(cherry picked from commit 2c519531a7)
2018-02-21 15:44:40 +00:00
Michał KępieńandStephen Morris a8b10e9b3a [rt46602] Sanitize test names to fix "make check" on Solaris
(cherry picked from commit e005fb948d)
2018-02-21 15:44:40 +00:00
Stephen Morris 9078c24900 [rt46602] Add .gitignore file for catz
(cherry picked from commit 3dfb7c17eb)
2018-02-21 15:44:40 +00:00
Stephen Morris 121be65138 [rt46602] Pass noclean option to Makefile via exported variable
(cherry picked from commit 59d88ee192)
2018-02-21 15:44:40 +00:00
Stephen Morris b98e011dc6 [rt46602] Mention conf.sh.win32 in instructions for adding a test.
(cherry picked from commit 23dfa27a84)
2018-02-21 15:44:40 +00:00
Michał KępieńandStephen Morris c6b66a406d [rt46602] Fix various typos, formatting issues and stylistic nits
(cherry picked from commit f0721de624)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 18b0ad81ec [rt46602] Remove redundant variable assignment
(cherry picked from commit 42cf18d239)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 63bbbb936a [rt46602] named.port is no longer created by setup.sh for allow_query
(cherry picked from commit 1ac4c3e4e5)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 933bba9d73 [rt46602] Consistently print usage for runall.sh to stderr
(cherry picked from commit fe1ccafc34)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 9ff064089b [rt46602] Clean up getopts usage
Ensure case clauses are in sync with the string passed to getopts.
Remove catch-all clauses as they will never be evaluated.

(cherry picked from commit 0dcee1cad3)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 815820b3a9 [rt46602] Assign default values to variables set by command line options and consistently treat them as integers
(cherry picked from commit fe51c34df3)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 3c7784b745 [rt46602] named.port cannot be ignored by git because it is required to be present by notify/ns4
(cherry picked from commit 1960de5530)
2018-02-21 15:44:39 +00:00
Michał KępieńandStephen Morris 5b0a99e291 [rt46602] Re-add clean.sh invocation to catz/setup.sh
Commit 57aa7b60fd caused catz/setup.sh to no longer call clean.sh, which
results in the catz system test failing on subsequent runs if the first
run is interrupted or fails.

(cherry picked from commit 344d05063f)
2018-02-21 15:44:39 +00:00
Stephen Morris 6f341ed6cd [rt46602] Remove option to format the printed start time of a test
There was too much incompatibility between operating systems as to
the allowed options for "date".

(cherry picked from commit 451b7309ca)
2018-02-21 15:44:39 +00:00
Stephen Morris d59a3f1c82 [rt46602] Escape line ends in shell script variable assignment
Escape the line ends in a multi-line variable assignment.  Under some
circumstances, substituting the variable caused syntax errors when
used as the list of values in a shell script "for" statement.

(cherry picked from commit 462766cd76)
2018-02-21 15:44:39 +00:00
Stephen Morris c18241451b [rt46602] Fix EXTRAPORT substitutions in copy_setport
Fix problems where all EXTRAPORT macros were being replaced by
the EXTRAPORT1 value. (Copy and paste issue.)

(cherry picked from commit fb78f82ba1)
2018-02-21 15:44:39 +00:00
Stephen Morris 33394a55e4 [rt46602] Minor documentation changes
(cherry picked from commit cdf18a5009)
2018-02-21 15:44:39 +00:00
Stephen Morris 3906b1778f [rt46602] Correct way allow_query test produces RNDC output
(cherry picked from commit 7f2d41d4c4)
2018-02-21 15:44:39 +00:00
Stephen Morris 7cb5722c49 [rt46602] Simplify the cleanup code
(cherry picked from commit 0855a8a6cc)
2018-02-21 15:44:39 +00:00
Stephen Morris 269858ac02 [rt46602] Extensions to README
Added descriptions of how nameservers are started and stopped
during the tests, and how the framework cleans up the files created.

(cherry picked from commit f606b17dfb)
2018-02-21 15:44:39 +00:00
Stephen Morris 34a8e43ac1 [rt46602] Miscellenous small changes
(cherry picked from commit b88b508b22)
2018-02-21 15:44:39 +00:00
Stephen Morris 820c47b137 [rt46602] Handle echoing of multi-line output from tests
(cherry picked from commit 1f07c69f25)
2018-02-21 15:44:38 +00:00
Stephen Morris f6d8f9cdcb [rt46602] Rename "test" variable to "systest"
... to avoid confusion between the variable and the command of the
same name.

(cherry picked from commit c12e06755f)
2018-02-21 15:44:38 +00:00
Stephen Morris ec063cdc99 [rt46602] Add ability to prevent deletion of output files when running all tests
Some tests may need to examine all output files from all system tests.
Allow the deletion of these files to be inhibited if required.

(cherry picked from commit 00bc29640b)
2018-02-21 15:44:38 +00:00
Stephen Morris d150fe27ed [rt46602] Error messages before start of test are output to stderr
Error messages concerning the invocation of run.sh are output to
stderr.  Messages after the test has started are output to stdout.

(cherry picked from commit 244d1c30e2)
2018-02-21 15:44:38 +00:00
Stephen Morris 3859c55031 [rt46602] Ensure that output sent to stderr is routed to the output file
(cherry picked from commit a5cf6bd12a)
2018-02-21 15:44:38 +00:00
Stephen Morris 626bd48214 [rt46602] Minor tidying up of documentation
(cherry picked from commit ce66752adc)
2018-02-21 15:44:38 +00:00
Stephen Morris 4dc368a837 [rt46602] Check prerequsities before network interfaces when running test.
(cherry picked from commit 549a6c6bc8)
2018-02-21 15:44:38 +00:00
Stephen Morris d737040fcf [rt46602] Minor formatting changes to Perl files
(cherry picked from commit f0f5b5f045)
2018-02-21 15:44:38 +00:00
Stephen Morris 9e176a0a34 [rt46603] Provide echostart() and echoend() to output test start/end messages.
(cherry picked from commit c344e1d768)
2018-02-21 15:44:38 +00:00
Stephen Morris 62652988ed [rt46602] Ensure test output in systests.output is not mixed up
When running all the system tests, output from a test is sent to a
test.output file in the test directory.  These are combined in to
systests.output when the run finishes.

(cherry picked from commit 055e5be9fd)
2018-02-21 15:44:38 +00:00
Stephen Morris 0a372b07a9 [rt46602] Miscellaneous minor fixes
... for misspellings, typos, trailing spaces, duplicated lines etc.

(cherry picked from commit 3c25e5fa02)
2018-02-21 15:44:38 +00:00
Stephen Morris 0d9b1190ce [rt46602] Allocate 100 ports to each test
(cherry picked from commit edc7a18d84)
2018-02-21 15:44:38 +00:00
Stephen Morris 21e48340b3 [rt46602] Pass port numbers to tests via environment variables
(cherry picked from commit f5d8f07900)
2018-02-21 15:44:38 +00:00
Stephen Morris 32b4e0ce4d [rt46602] Ensure parallel tests are in alphabetical order
(cherry picked from commit b2d90da0c2)
2018-02-21 15:44:38 +00:00
Stephen Morris 353ab4dc69 [rt46602] Expanded system tests README
Add more information on running the tests, together with a section
on how the tests are organised, aimed at new developers.

(cherry picked from commit af005cdbcf)
2018-02-21 15:44:38 +00:00
Stephen Morris a807f8a77a [rt46602] More updates to the test running framework
Tidy up the stop/start files and make switch usage consistent. Also
tidy up the various "clean" targets in the Makefile.

(cherry picked from commit b24c2e11d8)
2018-02-21 15:44:37 +00:00
Stephen Morris cbe20bcc1f [rt46602] Modify some test files to cope with the "-p" flag
(cherry picked from commit 517d990bd4)
2018-02-21 15:44:37 +00:00
Stephen Morris 499e768d07 [rt46602] Tidy up run management
Miscellaneous tidying up of run management.  The most significant
change is that "runall.sh" now runs _all_ the tests, even the
ones that can run in parallel.  runsequential.sh is the script
to run tests that have not been converted to parallel running.

(cherry picked from commit 32fe6f7682)
2018-02-21 15:44:37 +00:00
Stephen Morris b2f2c67fd9 [rt46602] Assign block of ports for each test
Some tests use more ports than just the query and control ports.
Each test that can run in parallel with other tests is now assigned
a unique block of 10 ports.

(cherry picked from commit e0ff77f9d3)
2018-02-21 15:44:37 +00:00
Stephen Morris 60945507d8 [rt46602] Allow catz system test to run in parallel with other tests
(cherry picked from commit 07341693e1)
2018-02-21 15:44:37 +00:00
Stephen Morris 2ed6a072c9 [rt46602] Miscellaneous changes to existing parallelised tests
Currently these tests are allow_query, rpzrecurse and serve-stale

1. Function to copy files and set port numbers renamed from copy_config
to copy_setports, as this is used to change the ports in Perl and Python
test scripts as well.
2. Changes to rpzrecurse/tests.sh to handle two calls to getopts (one to
parse port numbers, the other to parse rpzrecurse-specific options). Also
fixed various commands to use correct ports.
3. Updates to "clean.sh" scripts to ensure that all files created in the
test are removed.

(cherry picked from commit 78f2b9ca01)
2018-02-21 15:44:37 +00:00
Stephen Morris 6fbf96c112 [rt46602] Ensure that tests running in parallel use unique ports
Via an intermediate make file, tests that have been modified to be able
to run in parallel are assigned unique query and control port numbers
(other than 5300 and 9953 respectively).  Tests that have not yet been
modified all use ports 5300 and 9953, so must be run sequentially.

(cherry picked from commit e7429b124b)
2018-02-21 15:44:37 +00:00
Stephen Morris f396d62285 [rt46602] Miscellaneous tidying up of code cherry-picked from experimental branch
(cherry picked from commit e1a69e5d1f)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris e34bd38f69 [rt46602] Allow parallel run of new dynamic port tests and the old ones
(cherry picked from commit 3b14d54fd7)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris 79fe35af4a [rt46602] Put back original .gitignore files in the system tests
(cherry picked from commit caaec1ef6d)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris 4465749695 [rt46602] Adjust rpzrecurse for dynamic port usage
Resolve conflict in run.sh during cherry-pick from an experimental branch.

(cherry picked from commit 2a435708e4)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris 6890a3b63e [rt46602] Add $SEDPORTS variable to help with @PORT@ and @CONTROLPORT@ replacement
(cherry picked from commit e6802badc0)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris e00c4c1b66 [rt46602] Move most of ignored files to top of system tests directory
(cherry picked from commit d2c8286163)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris 2d41a16ba9 [rt46602] Fix output from rndc reload
(cherry picked from commit 53bade5ece)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris 5dc741cd3e [rt46602] Add .gitignore to allow_query
(cherry picked from commit bc276f6c05)
2018-02-21 15:44:37 +00:00
Ondřej SurýandStephen Morris c707a93f6d [rt46602] Utilize echo_i to allow mixed test output
(cherry picked from commit 7e3c96c867)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 2c99184849 [rt46602] Prefix R:<result> as R:<test>:<result>
Resolve conflict in run.sh during cherry-pick from experimental branch.

(cherry picked from commit 278c72fef6)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 3be9b6078f [rt46602] Add echo_i function to print I:<testname>:string
(cherry picked from commit f7ac41757a)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 9974e247ff [rt46602] Add serve-stale working files to .gitignore
(cherry picked from commit cba162e70e)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 0b174d71d3 [rt46602] Convert allow_query to dynamic port
(cherry picked from commit 992a2bafec)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 8a107c58f2 [rt46602] Update server-stale test to run on port passed from run.sh script
(cherry picked from commit f83ebd34b9)
2018-02-21 15:44:36 +00:00
Ondřej SurýandStephen Morris 0b1a5a586f [rt46602] Change the system tests script to support running individual tests on different ports
Resolved conflict in run.sh.

(cherry picked from commit fb00f18005)
2018-02-21 15:44:36 +00:00
Mark Andrews 01ec64fc76 Merge branch 'cherry-pick-643c8c27' into 'v9_12'
Merge branch '67-stabilize-cacheclean-system-test' into 'v9_12'

See merge request isc-projects/bind9!48
2018-02-20 16:08:23 -05:00
Mark Andrews e5fcbe5f26 Merge branch '67-stabilize-cacheclean-system-test' into 'master'
Stabilize cacheclean system test

Closes #67

See merge request isc-projects/bind9!43

(cherry picked from commit 643c8c27ff)

01de79b3 Assign an index to each check in the cacheclean system test
aeea1faf Do not overwrite cache dumps
2bbff06d Wait until a cache dump completes instead of waiting for a fixed amount of time
ca1049b2 Improve the way cache contents are searched for "ns.flushtest.example"
2018-02-20 16:02:34 -05:00
Evan Hunt cd8d44403b [v9_12] copyrights 2018-02-17 21:26:12 -08:00
Tinderbox User c964a71c76 regen v9_12 2018-02-18 04:13:10 +00:00
Evan Hunt 5254978eec [v9_12] re-prep 9.12.1rc1 to include needed fixes; update README 2018-02-17 19:54:52 -08:00
Michał Kępień ba787b3a57 Merge branch 'fix-dnstap-output-file-rolling-v9_12' into v9_12 2018-02-16 11:39:16 +01:00
Michał Kępień bc22789bcb Add CHANGES entry
4894.	[bug]		named could crash while rolling a dnstap output file.
			[RT #46942]
2018-02-16 09:38:48 +01:00
Michał Kępień 5f12985f0b Make dns_dt_send() call dns_dt_reopen() asynchronously
Instead of checking current dnstap output file size and potentially
synchronously calling dns_dt_reopen() upon every call to dns_dt_send():

  - call dns_dt_reopen() asynchronously by queuing an event to the task
    specified at dnstap environment creation time,

  - ensure no roll event is outstanding before checking dnstap output
    file size and potentially queuing another roll event.

This causes dnstap output files to exceed their configured size limits,
but prevents any two threads from performing the roll simultaneously
(which causes crashes).
2018-02-16 09:37:23 +01:00
Michał Kępień 2c1307f061 Make dns_dt_reopen() request task-exclusive mode on its own
Instead of relying on the caller to set up task-exclusive mode, make
dns_dt_reopen() enforce task-exclusive mode itself, using the task
specified at dnstap environment creation time.
2018-02-16 09:37:23 +01:00
Michał Kępień e26c5df16f Add dns_dt_create2()
Implement a new variant of dns_dt_create() to enable a dnstap
environment structure to hold the task in the context of which
dns_dt_reopen() will be executed.
2018-02-16 09:37:23 +01:00
Michał Kępień fba6c2e982 Merge branch 'fix-loadpending-handling-v9_12' into v9_12 2018-02-16 08:55:23 +01:00
Michał Kępień 3235c3b2e4 Add CHANGES entry
4892.	[bug]		named could leak memory when "rndc reload" was invoked
			before all zone loading actions triggered by a previous
			"rndc reload" command were completed. [RT #47076]
2018-02-16 08:48:05 +01:00
Michał Kępień 840c9348bf Do not recheck DNS_ZONEFLG_LOADPENDING in zone_asyncload()
Remove a block of code which dates back to commit 8a2ab2b920, when
dns_zone_asyncload() did not yet check DNS_ZONEFLG_LOADPENDING.
Currently, no race in accessing DNS_ZONEFLG_LOADPENDING is possible any
more, because:

  - dns_zone_asyncload() is still the only function which may queue
    zone_asyncload(),

  - dns_zone_asyncload() accesses DNS_ZONEFLG_LOADPENDING under a lock
    (and potentially queues an event under the same lock),

  - DNS_ZONEFLG_LOADPENDING is not cleared until the load actually
    completes.

Thus, the rechecking code can be safely removed from zone_asyncload().

Note that this also brings zone_asyncload() to a state in which the
completion callback is always invoked.  This is required to prevent
leaking memory in case something goes wrong in zone_asyncload() and a
zone table the zone belongs to is indefinitely left with a positive
reference count.
2018-02-16 08:47:40 +01:00
Michał Kępień 3395f6fac3 Asynchronous zone load events have no way of getting canceled
Code handling cancellation of asynchronous zone load events was likely
copied over from other functions when asynchronous zone loading was
first implemented in commit 8a2ab2b920.  However, unlike those other
functions, asynchronous zone loading events currently have no way of
getting canceled once they get posted, which means the aforementioned
code is effectively dead.  Remove it to prevent confusion.
2018-02-16 08:47:40 +01:00
Michał Kępień 7c64547d95 Only clear DNS_ZONEFLG_LOADPENDING in zone_asyncload() if zone loading is completed immediately
zone_load() is not always synchronous, it may only initiate an
asynchronous load and return DNS_R_CONTINUE, which means zone loading
has not yet been completed.  In such a case, zone_asyncload() must not
clear DNS_ZONEFLG_LOADPENDING immediately and leave that up to
zone_postload().
2018-02-16 08:47:40 +01:00
Michał Kępień 93c176d2d6 Lock zone before checking whether its asynchronous load is already pending
While this is not an issue in named, which only calls
dns_zone_asyncload() from task-exclusive mode, this function is exported
by libdns and thus may in theory be concurrently called for the same
zone by multiple threads.  It also does not hurt to be consistent
locking-wise with other DNS_ZONEFLG_LOADPENDING accesses.
2018-02-16 08:47:40 +01:00
Mark Andrews 44d995992a Merge branch 'fix-cpp-check-errors' into 'v9_12'
Fix cpp check errors v9_12

See merge request isc-projects/bind9!29
2018-02-15 22:15:49 -05:00
Mark Andrews a5ea45f9f6 s/cppchecker/cppcheck 2018-02-16 14:09:10 +11:00
Mark Andrews 171843167b add GL issue number 2018-02-16 14:09:09 +11:00
Mark Andrews 6ab800a82b add CHANGES note 2018-02-16 14:09:09 +11:00
Mark Andrews 3208b02910 add POST(len); 2018-02-16 14:08:26 +11:00
Mark Andrews 736cbc97d7 conditionally declare stacksize 2018-02-16 14:08:26 +11:00
Mark Andrews 58c141e9b6 add POST(len); 2018-02-16 14:08:26 +11:00
Mark Andrews 494a3b33a2 Clarify calculation precedence for '&' and '?' 2018-02-16 14:08:26 +11:00
Mark Andrews d6b79d3d43 add POST(tl) 2018-02-16 14:08:26 +11:00
Mark Andrews 57fbc03b11 return failure count 2018-02-16 14:08:26 +11:00
Mark Andrews 6a896a0247 conditionally declare strbuf 2018-02-16 14:08:26 +11:00
Mark Andrews 13e2a127f2 test for == 0 rather than <= as value is unsigned 2018-02-16 14:08:26 +11:00
Mark Andrews 5aba593545 add brackets 2018-02-16 14:08:26 +11:00
Mark Andrews cf53ca27d5 reorder test to silence cppcheck 2018-02-16 14:08:26 +11:00
Mark Andrews e416b6f57c remove event which is only used for sizeof 2018-02-16 14:08:26 +11:00
Mark Andrews a87296cb7b remember the masters count 2018-02-16 14:08:26 +11:00
Mark Andrews 6fc28063f1 reorder test to silence cppcheck 2018-02-16 14:08:26 +11:00
Mark Andrews fb93276320 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 3b412a0634 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews d23375e5b3 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews e34eec79a8 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 7670515fac use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 14e5f05a5e use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 5a21fe753d use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 1e943e3f3a use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews ade6a20c56 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews cf063314f2 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews bf74665d5c case to unsigned; reorder expression 2018-02-16 14:08:26 +11:00
Mark Andrews 800c5a61a2 simplify expression 2018-02-16 14:08:26 +11:00
Mark Andrews 2f859b6f9e use %u and preserve unsigned property 2018-02-16 14:08:26 +11:00
Mark Andrews a4d75d92aa make declaration and use of setnocookie fully conditional 2018-02-16 14:08:26 +11:00
Mark Andrews c178a8e904 cast to unsigned 2018-02-16 14:08:26 +11:00
Mark Andrews 19ef6d7b21 preserve unsigned property 2018-02-16 14:08:26 +11:00
Mark Andrews d76f6a67dd use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 585a420c64 make both arguments of & unsigned 2018-02-16 14:08:26 +11:00
Mark Andrews d177c5ffc1 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 000eec7831 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews eaae1216b3 use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews 1bca37c8e1 shift unsigned (~0U) rather than signed (~0) contant 2018-02-16 14:08:26 +11:00
Mark Andrews 684424a6fe use %u instead of %d 2018-02-16 14:08:26 +11:00
Mark Andrews f691251b95 unsigned constants 2018-02-16 14:08:26 +11:00
Mark Andrews df835b580b unsigned constants 2018-02-16 14:08:25 +11:00
Mark Andrews 615822391e use %u instead of %d 2018-02-16 14:08:25 +11:00
Mark Andrews ef957e6d25 use %u instead of %d 2018-02-16 14:08:25 +11:00
Mark Andrews 9e2a1ba979 use %u instead of %d 2018-02-16 14:08:25 +11:00
Mark Andrews da38b41d83 prevent implict conversion to signed 2018-02-16 14:07:35 +11:00
Mark Andrews c132205eb2 use %u instead of %d 2018-02-16 14:07:35 +11:00
Mark Andrews e25d38c68b INSIST ipnum6 != NULL 2018-02-16 14:07:35 +11:00
Mark Andrews bb426bb13a use %u instead of %d 2018-02-16 14:07:35 +11:00
Mark Andrews fa7f2ef594 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 571b3a4005 test for >= 0 and use %d instead of %u 2018-02-16 14:07:34 +11:00
Mark Andrews c4c2d94e61 formally cast to int; use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews e71e7673b3 formally cast to int 2018-02-16 14:07:34 +11:00
Mark Andrews 5c2ea775c4 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 059ff0206b use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 90f7a76891 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 7aab54de6f use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews cc0b343e78 copyrights 2018-02-16 14:07:34 +11:00
Mark Andrews 2e0129aba4 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 018cb006e1 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 4230e366b4 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews a6c47e456e use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews aaac93da3c make declarations consistent 2018-02-16 14:07:34 +11:00
Mark Andrews 51e274b187 report argument error in human form 2018-02-16 14:07:34 +11:00
Mark Andrews 191ebf1076 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 4f6706e0ed use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews ef5ecb3e6d use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 599d257fad use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 7aa9ea8709 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews 0a9b55e23e use %u instead of %i 2018-02-16 14:07:34 +11:00
Mark Andrews 6a2292d0f4 use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews a014677c1f use %u rather than %d; pass a unsigned int pointer 2018-02-16 14:07:34 +11:00
Mark Andrews ef3b87e15a clear *logp 2018-02-16 14:07:34 +11:00
Mark Andrews 5e29734aee use %u instead of %d 2018-02-16 14:07:34 +11:00
Mark Andrews dddb3e2976 signed vs unsigned fixes 2018-02-16 14:07:34 +11:00
Tinderbox User a85fdc1c5b regen v9_12 2018-02-15 19:30:53 +00:00
Evan Hunt d37fb4625c [v9_12] prep 9.12.1rc1 2018-02-15 11:12:45 -08:00
Evan Hunt d44775b859 [v9_12] copyrights 2018-02-10 16:30:58 -08:00
Mark Andrews dc089b3339 check warning text
(cherry picked from commit c6cd108838)
2018-02-09 14:05:20 +11:00
Mark Andrews 06da554649 get the correct test file
(cherry picked from commit ae09500989)
2018-02-09 13:57:39 +11:00
Evan Hunt cbd58053e6 [v9_12] fix test error 2018-02-08 18:45:56 -08:00
Evan HuntandMark Andrews b032182b8a [rt43670] more emphatic warning 2018-02-09 12:29:02 +11:00
Mark Andrews 303f4e8b5d 4889. [func] Warn about the use of old root keys without the new
root key being present.  Warn about dlv.isc.org's
                        key being present. Warn about both managed and
                        trusted root keys being present. [RT #43670]

(cherry picked from commit baef0ca988)
2018-02-09 12:11:10 +11:00
Evan Hunt e19f246994 [v9_12] fix typo 2018-02-08 16:16:03 -08:00
Evan Hunt ed829a6ba4 [v9_12] copyrights 2018-02-08 14:30:02 -08:00
Tinderbox User 7c95fa1c87 regen v9_12 2018-02-08 22:22:04 +00:00
Evan Hunt b979f79037 [v9_12] update README and notes 2018-02-08 14:15:37 -08:00
Tinderbox User 42f67ba196 regen v9_12 2018-02-08 21:56:13 +00:00
Evan Hunt 988f5de10a [v9_12] prep 9.12.1b1 2018-02-08 13:47:56 -08:00
Evan Hunt 8fb952e6ab [v9_12] copyrights 2018-02-08 13:40:50 -08:00
Mark AndrewsandEvan Hunt e79cb31fdf [v9_12] fix nsupdate test on windows
4888.	[test]		Initialize sockets correctly in sample-update so
			that nsupdate system test will will run on Windows.
			[RT #47097]

(cherry picked from commit 6757dc6488)
2018-02-08 13:35:11 -08:00
Mark AndrewsandEvan Hunt e59f44f51d [v9_12] fix rpzrecurse test on windows
4887.	[test]		Enable the rpzrecurse test to run on Windows.
			[RT #47093]

(cherry picked from commit ecf6dcc5c6)
2018-02-08 13:29:17 -08:00
Tony FinchandMukund Sivaraman 30c86d5649 Document dig -u in manpage (#47150)
(cherry picked from commit cc82b5aa3c)
2018-02-09 00:52:25 +05:30
Tinderbox User 9f91102603 regen v9_12 2018-02-08 01:18:14 +00:00
Tinderbox User 85fec73a21 update copyright notice / whitespace 2018-02-07 23:47:00 +00:00
Tinderbox User 5294428582 newcopyrights 2018-02-07 23:31:36 +00:00
Mark Andrews fe8d9962d2 add note for update-policy rules changes
(cherry picked from commit ff8f2a584d)
2018-02-07 14:03:51 +11:00
Mark Andrews b329876bf1 4885. [security] update-policy rules that otherwise ignore the name
field now require that it be set to "." to ensure
                        that any type list present is properly interpreted.
                        [RT #47126]

(cherry picked from commit ec771bbdc8)
2018-02-07 13:36:45 +11:00
Tinderbox User 4c0adf3d56 update copyright notice / whitespace 2018-02-05 23:47:17 +00:00
Tinderbox User 5d6a5c810c newcopyrights 2018-02-05 23:30:15 +00:00
Michał Kępień 5c33d89ff1 [v9_12] Prevent crashing due to a race during server shutdown
4884.	[bug]		named could crash on shutdown due to a race between
			shutdown_server() and ns__client_request(). [RT #47120]

(cherry picked from commit af1937c35a)
2018-02-05 20:25:41 +01:00
Mark Andrews b480d1eaa8 look for #! to determine if the file is PYTHON or PYTHON-BIN
(cherry picked from commit 4fcc550877)
2018-02-05 11:40:34 +11:00
Tinderbox User 5c36169128 regen v9_12 2018-02-03 01:20:16 +00:00
Evan Hunt d6a3fbe09d [v9_12] spelling, release note
(cherry picked from commit c34680cf3b)
2018-02-02 10:32:35 -08:00
Tinderbox User 042b8c6f08 update copyright notice / whitespace 2018-02-01 23:47:39 +00:00
Mark Andrews 1a22ae18fe Update license to 'MPL' [RT #47101]
(cherry picked from commit a97ca00ce8)
2018-02-02 10:38:34 +11:00
Tinderbox User 5681b48b5d newcopyrights 2018-02-01 23:30:14 +00:00
Michał Kępień 5a03cc6d01 [v9_12] Silence compiler warnings about comparisons between signed and unsigned integers [RT #46980]
(cherry picked from commit a3c2b8831e)
2018-02-01 21:29:03 +01:00
Tinderbox User 072b32faf0 update copyright notice / whitespace 2018-01-31 23:46:36 +00:00
Tinderbox User 27fb719fd5 newcopyrights 2018-01-31 23:30:25 +00:00
Evan Hunt 69b5fafb03 [v9_12] improve debugging output from dnssec-cds
4883.	[cleanup]	Improved debugging output from dnssec-cds. [RT #47026]

Patch submitted by Tony Finch (dot@dotat.at)
2018-01-31 10:23:54 -08:00
Tinderbox User fd7a1d9cb9 update copyright notice / whitespace 2018-01-30 23:46:57 +00:00
Tinderbox User 4cc09536a6 newcopyrights 2018-01-30 23:30:47 +00:00
Mark Andrews 9bf7f18d02 handle different eol coventions
(cherry picked from commit a2c693ab3b)
2018-01-31 10:06:37 +11:00
Evan Hunt 78f761222a [v9_12] use 'command' instead of 'type' to find atf-run and kyua paths 2018-01-30 10:33:31 -08:00
Evan Hunt 53fad7791c [v9_12] typo 2018-01-30 09:13:03 -08:00
Mark Andrews d52acebeb8 4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]

(cherry picked from commit 7817caa3c7)
2018-01-30 15:27:51 +11:00
Mark Andrews 0e24c4d100 4881. [bug] Only include dst_openssl.h when OpenSSL is required.
[RT #47068]

(cherry picked from commit a64503c736)
2018-01-30 15:21:29 +11:00
Mark Andrews 33132cbfc8 4880. [bug] Named wasn't returning the target of a cross zone
CNAME between to served zones when recursion was
                        desired and available (RD=1, RA=1). Don't return
                        the CNAME target otherwise to prevent accidental
                        cache poisoning. [RT #47078]

(cherry picked from commit d26f90241d)
2018-01-30 13:12:18 +11:00
Mark Andrews 36d1e278c1 4879. [bug] dns_rdata_caa:value_len is was small. [RT #47086]
(cherry picked from commit 3ae586b857)
2018-01-30 11:00:34 +11:00
Tinderbox User 89961ad9e5 update copyright notice / whitespace 2018-01-29 23:46:55 +00:00
Tinderbox User 9c36e9c90d newcopyrights 2018-01-29 23:30:14 +00:00
Mark Andrews bd08ea42dd 4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]

(cherry picked from commit 6e08af82ed)
2018-01-29 13:28:50 +11:00
Tinderbox User 4c8cd59241 regen v9_12 2018-01-26 01:19:47 +00:00
Tinderbox User 9ded20d5e9 update copyright notice / whitespace 2018-01-25 23:47:18 +00:00
Tinderbox User 16c46c3167 newcopyrights 2018-01-25 23:30:19 +00:00
Evan Hunt 6475d08439 [v9_12] clarify dnssec-cds man page
(cherry picked from commit cbd46e23cb)
2018-01-25 10:21:41 -08:00
Mark Andrews 7a58c9d770 remove Bv9ARM.ch13.html 2018-01-25 11:01:37 +11:00
Tinderbox User d59b79c94f update copyright notice / whitespace 2018-01-24 23:46:37 +00:00
Tinderbox User 96ed39d2d0 newcopyrights 2018-01-24 23:30:11 +00:00
Evan Hunt bb0a05e72b [v9_12] change uint to isc_uint 2018-01-24 11:02:57 -08:00
Evan Hunt 7e7a5bb189 [v9_12] update 9.11 api range 2018-01-24 10:23:11 -08:00
Evan Hunt 67b1e54716 [v9_12] address overflow in retry backoff
4877.	[bug]		Address integer overflow when exponentially
			backing off retry intervals. [RT #47041]

(cherry picked from commit 8b440753b6)
2018-01-24 09:45:55 -08:00
Mark Andrews c34b3b98ab 4876. [bug] Address deadlock with accessing a keytable. [RT #47000]
(cherry picked from commit b575c4ec42)
2018-01-24 18:56:28 +11:00
Mark Andrews d4d3eeaa6f 4875. [bug] Address compile failures on older systems. [RT #47015]
(cherry picked from commit 99178b6329)
2018-01-24 13:10:39 +11:00
Tinderbox User 4a91af9bbf newcopyrights 2018-01-23 23:30:10 +00:00
Mark Andrews 132e7795f9 4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]

(cherry picked from commit 83d005de61)
2018-01-24 08:00:25 +11:00
Evan Hunt 941db929d3 [v9_12] renumber chapters now that the former chapter 5 is gone 2018-01-23 17:59:45 +00:00
Tinderbox User 14dc904052 regen v9_12 2018-01-23 00:56:08 +00:00
Tinderbox User 6774dbb0ab update copyright notice / whitespace 2018-01-22 23:46:35 +00:00
Tinderbox User ba1c79564b newcopyrights 2018-01-22 23:39:20 +00:00
Mark Andrews 3b86824ac0 doc/misc/*.zoneopt are X
(cherry picked from commit 7f4dfa539c)
2018-01-23 10:36:43 +11:00
Evan Hunt 1773b2c7cc [v9_12] fix test failure by sorting "type" to the top of zone clauses 2018-01-22 13:19:11 -08:00
Evan Hunt 4404974d84 [v9_12] silence warning 2018-01-22 13:07:33 -08:00
Evan Hunt cb5101969f [v9_12] regenerate 2018-01-22 19:48:04 +00:00
Evan Hunt 9b9f790a8b [v9_12] fix unresolved externals for win32 2018-01-22 11:45:47 -08:00
Evan Hunt f662d5484e [v9_12] automatically generate named.conf grammars for the ARM
4873.	[doc]		Grammars for named.conf included in the ARM are now
			automatically generated by the configuration parser
			itself.  As a side effect of the work needed to
			separate zone type grammars from each other, this
			also makes checking of zone statements in
			named-checkconf more correct and consistent.
			[RT #36957]

(cherry picked from commit 129c4414cb)
2018-01-22 11:08:49 -08:00
Evan Hunt 2aa30a80b1 [v9_12] remove dangling doc reference to the lightweight resolver
(cherry picked from commit 4d6800942c)
2018-01-22 10:58:43 -08:00
Mukund Sivaraman c8eb726046 Don't permit loading meta RR types such as TKEY from master files (#47009)
(cherry picked from commit 8a4ce20172)
2018-01-22 14:31:05 +05:30
Mukund Sivaraman 7e1ed15762 Fix configure issue detecting stdatomic.h support (#46959)
(cherry picked from commit 63d0c6a3fc)
2018-01-22 13:50:07 +05:30
Mark Andrews 8e369ab833 remove old entries
(cherry picked from commit 54c4adef80)
2018-01-22 11:26:10 +11:00
Tinderbox User 5088140fc7 update copyright notice / whitespace 2018-01-21 23:46:29 +00:00
Tinderbox User a4e58f73b5 newcopyrights 2018-01-21 23:31:42 +00:00
Mark Andrews 4d06005eae 4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]

(cherry picked from commit 23d77c8747)
2018-01-22 10:00:40 +11:00
Mark Andrews 9bc567aad7 silence clang static analyser warning. [RT #46881]
(cherry picked from commit af034ef188)
2018-01-22 09:48:37 +11:00
Mark Andrews f6911d4295 4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behaviour and
                        can lead to bad optimisation. [RT #46888]

(cherry picked from commit fdd8838bf9)
2018-01-22 09:37:30 +11:00
Tinderbox User 9a521b1359 newcopyrights 2018-01-19 23:30:14 +00:00
Tinderbox User 747bceba00 regen v9_12 2018-01-19 01:14:38 +00:00
Tinderbox User ec8e6c1f44 update copyright notice / whitespace 2018-01-18 23:46:35 +00:00
Tinderbox User 99567a8e1a newcopyrights 2018-01-18 23:30:15 +00:00
Evan Hunt 6d527f5439 [v9_12] normalize rndc on/off commands
4867.	[cleanup]	Normalize rndc on/off commands (validation,
			querylog, serve-stale) so they all accept the
			same synonyms for on/off (yes/no, true/false,
			enable/disable). Thanks to Tony Finch. [RT #47022]

(cherry picked from commit cf8f4241e7)
2018-01-18 10:50:24 -08:00
Tinderbox User 574dd7e2a9 regen v9_12 2018-01-18 01:14:03 +00:00
Tinderbox User c2140b163e update copyright notice / whitespace 2018-01-17 23:46:24 +00:00
Tinderbox User 493c6da5ee newcopyrights 2018-01-17 23:30:13 +00:00
Francis Dupont 48e0471f97 bcmp -> memcmp 2018-01-17 15:32:09 +01:00
Francis Dupont fd1f64696e Applied #46125 fix (hardcoded "pkcs11") 2018-01-17 15:20:02 +01:00
Francis Dupont 5075f3faef Merged rt46864 (check MD5 amd SHA1 support) 2018-01-17 14:36:06 +01:00
Mark Andrews ee74cc4d67 sync CHANGES with 9.12.0rc3 2018-01-17 15:58:58 +11:00
Tinderbox User b1ef8c1d9c update copyright notice / whitespace 2018-01-15 23:46:48 +00:00
Tinderbox User d58a9a8b0e newcopyrights 2018-01-15 23:30:09 +00:00
Michał Kępień 893517ec31 [v9_12] Ensure all master definitions in a catalog zone contain an IP address
4864.	[bug]		named acting as a slave for a catalog zone crashed if
			the latter contained a master definition without an IP
			address. [RT #45999]

(cherry picked from commit ae51a676c9)
2018-01-15 20:52:37 +01:00
Mark Andrews f4c1681dad silence coverity false positive. [RT #46841]
(cherry picked from commit fa22351a7c)
2018-01-15 12:03:24 +11:00
Tinderbox User 416b1cec1d update copyright notice / whitespace 2018-01-13 23:47:25 +00:00
Tinderbox User 40121b345d newcopyrights 2018-01-13 23:30:14 +00:00
Mark Andrews 7a3fcfe34c ret was not being set to 1 on dig error. [RT #46990]
(cherry picked from commit 69c4c987f6)
2018-01-13 13:15:22 +11:00
Tinderbox User eee54aab6e update copyright notice / whitespace 2018-01-12 23:46:21 +00:00
Tinderbox User 8ed2ff2ef0 newcopyrights 2018-01-12 23:30:08 +00:00
Mukund Sivaraman 0374e1c3fd Fix various bugs reported by valgrind --tool=memcheck (#46978)
(cherry picked from commit f96133826e)
2018-01-13 00:37:28 +05:30
Tinderbox User 7e3fc6aa03 update copyright notice / whitespace 2018-01-11 23:46:21 +00:00
Tinderbox User bbf18146c6 newcopyrights 2018-01-11 23:30:08 +00:00
Evan Hunt a847e6d035 [v9_12] go three section levels deep in the ARM table of contents
(cherry picked from commit 0c061ce614)
2018-01-11 13:41:59 -08:00
Tinderbox User 5f73c315d0 update copyright notice / whitespace 2018-01-10 23:48:07 +00:00
Tinderbox User 76616f708b newcopyrights 2018-01-10 23:30:20 +00:00
Mark Andrews d9a382fe4b grammar
(cherry picked from commit a35b95acb1)
2018-01-11 09:54:06 +11:00
Mark Andrews b69bb481cf 4862. [bug] The rdata flags for RRSIG was not being properly set
when constructing a rdataslab. [RT #46978]

(cherry picked from commit 7befb67af4)
2018-01-11 09:54:06 +11:00
Tinderbox User 7001d93870 update copyright notice / whitespace 2018-01-09 23:46:10 +00:00
Tinderbox User 98bbc626bc newcopyrights 2018-01-09 23:30:06 +00:00
Mark Andrews 3eab3b21ec 4861. [bug] The isc_crc64 unit test was not endian independent.
[RT #46973]

(cherry picked from commit 0ce212b9f5)
2018-01-10 09:46:47 +11:00
Mark Andrews 607423e5a6 4860. [bug] isc_int8_t should be signed char. [RT #46973]
(cherry picked from commit 21f708c88c)
2018-01-10 08:42:15 +11:00
Tinderbox User f546a77f77 update copyright notice / whitespace 2018-01-08 23:46:22 +00:00
Tinderbox User 7ffcfb1981 newcopyrights 2018-01-08 23:30:09 +00:00
Mark Andrews 2cb473514f add ns5/
(cherry picked from commit 3a4ea455ed)
2018-01-08 16:28:17 +11:00
Mark Andrews 2af6a352ec write nextpart to disk so that it is available when tests fail
(cherry picked from commit 02d3f1e855)
2018-01-08 16:21:09 +11:00
Tinderbox User 3ab43d029b newcopyrights 2018-01-06 23:30:07 +00:00
Tinderbox User 53a5106d21 regen v9_12 2018-01-06 01:16:38 +00:00
Mark Andrews f09733999c test devent->sigrdataset rather than devent->rdataset before calling query_putrdataset
(cherry picked from commit 67faaa41c9)
2018-01-05 12:39:19 +11:00
Mark Andrews 879e17b77d mem.c failed to compile if ISC_MEM_CHECKOVERRUN=0
(cherry picked from commit 4c33e133ca7eb0aa65986f0ea5d788007e70aaa9)
2018-01-05 12:10:21 +11:00
Tinderbox User 77caf49c98 update copyright notice / whitespace 2018-01-04 23:45:53 +00:00
Tinderbox User d1f3eab8a3 newcopyrights 2018-01-04 23:30:16 +00:00
Mark Andrews b1e6c5d922 unconditionally typedef summarystat_t for coverity
(cherry picked from commit a0e66ef6dd)
2018-01-05 10:11:13 +11:00
Evan Hunt 1da3a1fc67 [v9_12] typo 2018-01-03 19:30:05 -08:00
Evan Hunt 2b51d5874c [v9_12] block validator deadlock and prevent use-after-free
4859.	[bug]		A loop was possible when attempting to validate
			unsigned CNAME responses from secure zones;
			this caused a delay in returning SERVFAIL and
			also increased the chances of encountering
			CVE-2017-3145. [RT #46839]

4858.	[security]	Addresses could be referenced after being freed
			in resolver.c, causing an assertion failure.
			(CVE-2017-3145) [RT #46839]
2018-01-03 19:18:29 -08:00
Mark Andrews 0ed1d4154d use RESTORE rather than SAVE as is better describes the operation
(cherry picked from commit 9e6b394410)
2018-01-04 13:12:09 +11:00
Mark Andrews 749598d94f 4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
                        in query.c. [RT #46891]

(cherry picked from commit eed2f6cef0)
2018-01-04 10:51:27 +11:00
Tinderbox User 82820349cb update copyright notice / whitespace 2018-01-03 23:45:49 +00:00
Tinderbox User 8a7c841aed newcopyrights 2018-01-03 23:30:05 +00:00
Mark Andrews 96d9eed2ac 4856. [bug] 'rndc zonestatus' reported the wrong underlying type
for a inline slave zone. [RT #46875]

(cherry picked from commit 0b27aa0712)
2018-01-04 10:11:41 +11:00
Mark Andrews 4a63f0253c 4855. [bug] isc_time_formatshorttimestamp produced incorrect
output. [RT #46938]

(cherry picked from commit 1e10ef06ce)
2018-01-04 09:58:02 +11:00
Mark Andrews c0749224c8 4849 and 4850 are now released in 9.12.0 2018-01-04 09:53:44 +11:00
Mark Andrews 84499d7f41 missing newline in comment
(cherry picked from commit 7258b852cf)
2018-01-03 17:11:39 +11:00
Mark Andrews e12ba790a1 wait for status: line to be readable, before checking status
(cherry picked from commit 4674127443)
2018-01-03 13:55:27 +11:00
Tinderbox User 99a488899e update copyright notice / whitespace 2018-01-02 23:45:46 +00:00
Tinderbox User a980141495 newcopyrights 2018-01-02 23:30:06 +00:00
Mark Andrews be2380edf9 4854. [bug] query_synthcnamewildcard should stop generating the
response if query_synthwildcard fails. [RT #46939]

(cherry picked from commit c9ee9718ae)
2018-01-03 10:08:16 +11:00
Tinderbox User ef6247f49d regen v9_12 2018-01-02 01:15:58 +00:00
Mark Andrews 5cf9dc5eb2 4853. [bug] Add REQUIRE's and INSIST's to isc_time_formatISO8601L
and isc_time_formatISO8601Lms. [RT #46916]

(cherry picked from commit 0645f8f1ce)
2018-01-02 10:58:03 +11:00
Mark Andrews fe00fac13c 4852. [bug] Handle strftime() failing in isc_time_formatISO8601ms.
Add REQUIRE's and INSIST's to isc_time_formattimestamp,
                        isc_time_formathttptimestamp, isc_time_formatISO8601,
                        isc_time_formatISO8601ms. [RT #46892]
2018-01-02 10:47:27 +11:00
Tinderbox User 0113327dd2 update copyright notice / whitespace 2018-01-01 23:45:43 +00:00
Tinderbox User cb37b4aae0 newcopyrights 2018-01-01 23:30:09 +00:00
Mark Andrews 298f3d5340 4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]

(cherry picked from commit ccb5678066)
2018-01-02 10:21:32 +11:00
Tinderbox User d7095706e9 newcopyrights 2017-12-29 23:30:47 +00:00
Mark Andrews 81f3fdadac X Kyuafile's
(cherry picked from commit fa0caa1f85)
2017-12-29 13:34:52 +11:00
Tinderbox User 251446d350 regen v9_12 2017-12-29 02:16:29 +00:00
Mark Andrews cb68b39428 4850. [bug] Named failed to restart with multiple added zones in
lmdb database. [RT #46889]

(cherry picked from commit 9bec7facfb)
2017-12-27 16:25:01 +11:00
Mark Andrews f3f3480ed2 save why ydump.py failed
(cherry picked from commit f5d429e7c3)
2017-12-22 16:03:42 +11:00
Mark Andrews 5a248803e3 silence clang static analysis
(cherry picked from commit f933be6d45)
2017-12-22 13:09:28 +11:00
Mark Andrews d8cb1587ec initalize sigsize to zero; ATF_CHECK_EQ(sigsize, tsig.siglen);
(cherry picked from commit 9f61f6b46b)
2017-12-22 08:58:59 +11:00
Mark Andrews 0163c3b813 add POST(argc);
(cherry picked from commit be5a0eaa7a)
2017-12-22 08:48:57 +11:00
Mark Andrews 5b419ede19 add POST(argv); and POST(argc);
(cherry picked from commit d11ada1376)
2017-12-22 08:44:15 +11:00
Tinderbox User e552233bf6 regen v9_12 2017-12-21 01:15:46 +00:00
Mark Andrews 2cc7c4d62c lowercase m in macOS 2017-12-21 10:54:53 +11:00
Tinderbox User 7274c956e2 update copyright notice / whitespace 2017-12-20 23:46:17 +00:00
Tinderbox User d8f38bba3d newcopyrights 2017-12-20 23:30:24 +00:00
Mark Andrews 22a32060c1 4849. [bug] Duplicate zones could appear in the .nzf file if
addzone failed. [RT #46435]

(cherry picked from commit 2d7f89b9c7)
2017-12-20 17:15:23 +11:00
Tinderbox User 67b7334b62 regen v9_12 2017-12-20 01:15:42 +00:00
Mark Andrews 7d1bf2cc8d set AC_INIT to 9.11 2017-12-20 09:26:35 +11:00
Francis Dupont 993a57a5eb Fixed embedded atf code warning (RT 46833) 2017-12-18 16:18:21 +01:00
Tinderbox User bfb76ec3a4 regen v9_12 2017-12-16 01:18:48 +00:00
Evan Hunt ef2bfc219c [v9_12] clear release notes so they can be repopulated for 9.12.1 2017-12-15 01:36:26 -08:00
Mark Andrews cd11163b6d fix case
(cherry picked from commit 68a2932f75)
2017-12-15 14:54:16 +11:00
Mark Andrews 469254ba3e add MacOS to contents
(cherry picked from commit 13508261e0)
2017-12-15 14:46:33 +11:00
Mark Andrews cb2533d0c1 add MacOS note
(cherry picked from commit 91e4700bcc)
2017-12-15 14:39:00 +11:00
Tinderbox User 67df162ebd regen v9_12 2017-12-15 01:15:23 +00:00
Mark Andrews 62563bdc74 add 9.12.0 release marker 2017-12-14 14:38:37 +11:00
Mark Andrews 16d9d739b5 9.12.1-dev 2017-12-14 14:37:25 +11:00
3897 changed files with 95933 additions and 85056 deletions
+264
View File
@@ -0,0 +1,264 @@
variables:
DEBIAN_FRONTEND: noninteractive
LC_ALL: C
DOCKER_DRIVER: overlay2
CI_REGISTRY_IMAGE: oerdnj/bind9
CCACHE_DIR: "/ccache"
stages:
- precheck
- build
- test
.centos-centos6-amd64: &centos_centos6_amd64_image
image: "$CI_REGISTRY_IMAGE:centos-centos6-amd64"
tags:
- linux
- docker
- amd64
.centos-centos7-amd64: &centos_centos7_amd64_image
image: "$CI_REGISTRY_IMAGE:centos-centos7-amd64"
tags:
- linux
- docker
- amd64
.debian-jessie-amd64: &debian_jessie_amd64_image
image: "$CI_REGISTRY_IMAGE:debian-jessie-amd64"
tags:
- linux
- docker
- amd64
.debian-jessie-i386: &debian_jessie_i386_image
image: "$CI_REGISTRY_IMAGE:debian-jessie-i386"
tags:
- linux
- docker
- i386
.debian-stretch-amd64: &debian_stretch_amd64_image
image: "$CI_REGISTRY_IMAGE:debian-stretch-amd64"
tags:
- linux
- docker
- amd64
.debian-stretch-i386:: &debian_stretch_i386_image
image: "$CI_REGISTRY_IMAGE:debian-stretch-i386"
tags:
- linux
- docker
- i386
.debian-buster-amd64: &debian_buster_amd64_image
image: "$CI_REGISTRY_IMAGE:debian-buster-amd64"
tags:
- linux
- docker
- amd64
.debian-buster-i386:: &debian_buster_i386_image
image: "$CI_REGISTRY_IMAGE:debian-buster-i386"
tags:
- linux
- docker
- i386
.debian-sid-amd64: &debian_sid_amd64_image
image: "$CI_REGISTRY_IMAGE:debian-sid-amd64"
tags:
- linux
- docker
- amd64
.debian-sid-i386: &debian_sid_i386_image
image: "$CI_REGISTRY_IMAGE:debian-sid-i386"
tags:
- linux
- docker
- i386
.ubuntu-trusty-amd64: &ubuntu_trusty_amd64_image
image: "$CI_REGISTRY_IMAGE:ubuntu-trusty-amd64"
tags:
- linux
- docker
- amd64
.ubuntu-trusty-i386: &ubuntu_trusty_i386_image
image: "$CI_REGISTRY_IMAGE:ubuntu-trusty-i386"
tags:
- linux
- docker
- i386
.ubuntu-xenial-amd64: &ubuntu_xenial_amd64_image
image: "$CI_REGISTRY_IMAGE:ubuntu-xenial-amd64"
tags:
- linux
- docker
- amd64
.ubuntu-xenial-i386: &ubuntu_xenial_i386_image
image: "$CI_REGISTRY_IMAGE:ubuntu-xenial-i386"
tags:
- linux
- docker
- i386
.build: &build_job
stage: build
before_script:
- test -w "${CCACHE_DIR}" && export PATH="/usr/lib/ccache:${PATH}"
- autoreconf -fi
script:
- ./configure --enable-developer --with-libtool --disable-static --with-atf=/usr --with-libidn2 "${EXTRA_CONFIGURE}"
- make -j${PARALLEL_JOBS_BUILD:-1} -k all V=1
artifacts:
expire_in: '1 hour'
untracked: true
.system_test: &system_test_job
stage: test
before_script:
- rm -rf .ccache
- bash -x bin/tests/system/ifconfig.sh up
script:
- ( cd bin/tests && make -j${TEST_PARALLEL_JOBS:-1} -k test V=1 )
- test -s bin/tests/system/systests.output
artifacts:
untracked: true
expire_in: '1 week'
when: on_failure
.unit_test: &unit_test_job
stage: test
before_script:
- export KYUA_RESULT="$CI_PROJECT_DIR/kyua.results"
script:
- make unit
after_script:
- kyua report-html --force --results-file kyua.results --results-filter "" --output kyua_html
artifacts:
paths:
- atf.out
- kyua.log
- kyua.results
- kyua_html/
expire_in: '1 week'
when: on_failure
precheck:debian:sid:amd64:
<<: *debian_sid_amd64_image
stage: precheck
script:
- sh util/checklibs.sh > checklibs.out
- perl util/check-changes CHANGES
- perl -w util/merge_copyrights
- diff -urNap util/copyrights util/newcopyrights
- rm util/newcopyrights
- xmllint --noout --nonet `git ls-files '*.xml' '*.docbook'`
- xmllint --noout --nonet --html `git ls-files '*.html'`
artifacts:
paths:
- util/newcopyrights
- checklibs.out
expire_in: '1 week'
when: on_failure
#build:debian:jessie:amd64:
# <<: *debian_jessie_amd64_image
# <<: *build_job
#
#build:debian:jessie:i386:
# <<: *debian_jessie_i386_image
# <<: *build_job
#
#build:debian:stretch:amd64:
# <<: *debian_stretch_amd64_image
# <<: *build_job
#
#build:debian:buster:i386:
# <<: *debian_buster_i386_image
# <<: *build_job
#
#build:ubuntu:trusty:amd64:
# <<: *ubuntu_trusty_amd64_image
# <<: *build_job
#
#build:ubuntu:xenial:i386:
# <<: *ubuntu_xenial_i386_image
# <<: *build_job
build:centos:centos6:amd64:
variables:
CC: gcc
CFLAGS: "-Wall -Wextra -O2 -g"
EXTRA_CONFIGURE: "--disable-warn-error"
<<: *centos_centos6_amd64_image
<<: *build_job
build:centos:centos7:amd64:
variables:
CC: gcc
CFLAGS: "-Wall -Wextra -O2 -g"
<<: *centos_centos7_amd64_image
<<: *build_job
build:debian:sid:amd64:
<<: *debian_sid_amd64_image
<<: *build_job
build:debian:sid:i386:
<<: *debian_sid_i386_image
<<: *build_job
unittest:centos:centos6:amd64:
<<: *centos_centos6_amd64_image
<<: *unit_test_job
dependencies:
- build:centos:centos6:amd64
unittest:centos:centos7:amd64:
<<: *centos_centos7_amd64_image
<<: *unit_test_job
dependencies:
- build:centos:centos7:amd64
unittest:debian:sid:amd64:
<<: *debian_sid_amd64_image
<<: *unit_test_job
dependencies:
- build:debian:sid:amd64
unittest:debian:sid:i386:
<<: *debian_sid_i386_image
<<: *unit_test_job
dependencies:
- build:debian:sid:i386
systemtest:centos:centos6:amd64:
<<: *centos_centos6_amd64_image
<<: *system_test_job
dependencies:
- build:centos:centos6:amd64
systemtest:centos:centos7:amd64:
<<: *centos_centos7_amd64_image
<<: *system_test_job
dependencies:
- build:centos:centos7:amd64
systemtest:debian:sid:amd64:
<<: *debian_sid_amd64_image
<<: *system_test_job
dependencies:
- build:debian:sid:amd64
systemtest:debian:sid:i386:
<<: *debian_sid_i386_image
<<: *system_test_job
dependencies:
- build:debian:sid:i386
+386 -5
View File
@@ -1,4 +1,357 @@
4847. [bug] dnssec-dnskey-kskonly was not being honoured for
4996. [bug] dig: Handle malformed ednsopt options. [GL #403]
4995. [test] Add tests for "tcp-self" update policy. [GL !282]
4994. [bug] Trust anchor telemetry queries were not being sent
upstream for locally served zones. [GL #392]
4992. [bug] The wrong address was being logged for trust anchor
telemetry queries. [GL #379]
4990. [bug] Prevent a possible NULL reference in pkcs11-keygen.
[GL #401]
4988. [bug] Don't synthesize NXDOMAIN from NSEC for records under
a DNAME. [GL #386]
--- 9.12.2 released ---
--- 9.12.2rc2 released ---
4984. [bug] Improve handling of very large incremental
zone transfers to prevent journal corruption. [GL #339]
4983. [cleanup] Remove the deprecated flag from "answer-cookie";
it will be allowed to persist into 9.13. [GL #275].
4982. [cleanup] Return FORMERR if the question section is empty
and no COOKIE option is present; this restores
older behavior except in the newly specified
COOKIE case. [GL #260]
4981. [bug] Fix race in cmsg buffer usage in socket code.
[GL #180]
4980. [bug] Named-checkconf failed to detect bad in-view targets.
[GL #288]
4979. [bug] Non-libcap builds were not checking whether all
requested capabilities are present in the permitted
capability set. [GL #321]
4978. [test] Fix error handling and resolver configuration in the
"rpz" system test. [GL #312]
4977. [func] When starting up, log the same details that
would be reported by 'named -V'. [GL #247]
4976. [bug] Log the label with invalid prefix length correctly
when loading RPZ zones. [GL #254]
4975. [bug] The server cookie computation for sha1 and sha256 did
not match the method described in RFC 7873. [GL #356]
4974. [bug] Restore default rrset-order to random. [GL #336]
4972. [func] Declare the 'rdata' argument for dns_rdata_tostruct()
to be const. [GL #341]
4971. [bug] dnssec-signzone and dnssec-verify did not treat records
below a DNAME as out-of-zone data. [GL #298]
4969. [cleanup] Refactor zone logging functions. [GL #269]
--- 9.12.2rc1 released ---
4968. [bug] If glue records are signed, attempt to validate them.
[GL #209]
4966. [func] Add the ability to not return a DNS COOKIE option
when one is present in the request (answer-cookie no;).
[GL #173]
4965. [func] Add support for marking options as deprecated.
[GL #322]
4964. [bug] Reduce the probabilty of double signature when deleting
a DNSKEY by checking if the node is otherwise signed
by the algorithm of the key to be deleted. [GL #240]
4963. [test] ifconfig.sh now uses "ip" instead of "ifconfig",
if available, to configure the test interfaces on
linux. [GL #302]
4962. [cleanup] Move 'named -T' processing to its own function.
[GL #316]
4960. [security] When recursion is enabled, but the "allow-recursion"
and "allow-query-cache" ACLs are not specified,
they should be limited to local networks,
but were inadvertently set to match the default
"allow-query", thus allowing remote queries.
(CVE-2018-5738) [GL #309]
4958. [bug] Remove redundant space from NSEC3 record. [GL #281]
4955. [cleanup] Silence cppcheck warnings in lib/dns/master.c.
[GL #286]
4954. [func] Messages about serving of stale answers are now
directed to the "serve-stale" logging category.
Also clarified serve-stale documentation. [GL !323]
4951. [protocol] Add "HOME.ARPA" to list of built in empty zones as
per RFC 8375. [GL #273]
4950. [bug] ISC_SOCKEVENTATTR_TRUNC was not be set. [GL #238]
4949. [bug] lib/isc/print.c failed to handle floating point
output correctly. [GL #261]
4946. [bug] Additional glue was not being returned by resolver
for unsigned zones since change 4596. [GL #209]
4944. [cleanup] Silence cppcheck portability warnings in
lib/isc/tests/buffer_test.c. [GL #239]
4943. [bug] Change 4687 consumed too much memory when running
system tests with --with-tuning=large. Reduced the
hash table size to 512 entries for 'named -m record'
restoring the previous memory footprint. [GL #248]
4939. [test] Add basic unit tests for update_sigs(). [GL #135]
4935. [func] Add support for LibreSSL >= 2.7.0 (some OpenSSL 1.1.0
call were added). [GL #191]
4934. [security] The serve-stale feature could cause an assertion failure
in rbtdb.c even when stale-answer-enable was false.
Simultaneous use of stale cache records and NSEC
aggressive negative caching could trigger a recursion
loop. (CVE-2018-5737) [GL #185]
4933. [bug] Not creating signing keys for an inline signed zone
prevented changes applied to the raw zone from being
reflected in the secure zone until signing keys were
made available. [GL #159]
4932. [bug] Bumped signed serial of an inline signed zone was
logged even when an error occurred while updating
signatures. [GL #159]
4930. [bug] Remove a bogus check in nslookup command line
argument processing. [GL #206]
4926. [func] Add root key sentinel support. To disable, add
'root-key-sentinel no;' to named.conf. [GL #37]
4922. [bug] dnstap: Log the destination address of client
packets rather than the interface address.
[GL #197]
4921. [cleanup] Add dns_fixedname_initname() and refactor the caller
code to make usage of the new function, as a part of
refactoring dns_fixedname_*() macros were turned into
functions. [GL #183]
4918. [bug] Fix double free after keygen error in dnssec-keygen
when OpenSSL >= 1.1.0 is used and RSA_generate_key_ex
4915. [func] Implement IDNA2008 support in dig by adding support
for libidn2. New dig option +idnin has been added,
which allows to process invalid domain names much
like dig without IDN support. libidn2 version 2.0
or higher is needed for +idnout enabled by default.
4914. [security] A bug in zone database reference counting could lead to
a crash when multiple versions of a slave zone were
transferred from a master in close succession.
(CVE-2018-5736) [GL #134]
4913. [test] Re-implemented older unit tests in bin/tests as ATF,
removed the lib/tests unit testing library. [GL #115]
4912. [test] Improved the reliability of the 'cds' system test.
[GL #136]
4911. [test] Improved the reliability of the 'mkeys' system test.
[GL #128]
4910. [func] Update util/check-changes to work on release branches.
[GL #113]
4909. [bug] named-checkconf did not detect in-view zone collisions.
[GL #125]
4908. [test] Eliminated unnecessary waiting in the allow_query
system test. Also changed its name to allow-query.
[GL #81]
4907. [test] Improved the reliability of the 'notify' system
test. [GL #59]
4905. [bug] irs_resconf_load() ignored resolv.conf syntax errors
when "domain" or "search" options were present in that
file. [GL #110]
4903. [bug] "check-mx fail;" did not prevent MX records containing
IP addresses from being added to a zone by a dynamic
update. [GL #112]
4902. [test] Improved the reliability of the 'ixfr' system
test. [GL #66]
4899. [test] Convert most of the remaining system tests to be able
to run in parallel, continuing the work from change
#4895. To take advantage of this, use "make -jN check",
where N is the number of processors to use. [GL #91]
4897. [test] Update to rpz system test so that it doesn't recurse.
[GL #68]
4896. [test] cacheclean system test was not robust. [GL #82]
4895. [test] Allow some system tests to run in parallel.
[RT #46602]
--- 9.12.1 released ---
--- 9.12.1rc2 released ---
4904. [bug] Temporarily revert change #4859. [GL #124]
--- 9.12.1rc1 released ---
4894. [bug] named could crash while rolling a dnstap output file.
[RT #46942]
4893. [bug] Address various issues reported by cppcheck. [GL #51]
4892. [bug] named could leak memory when "rndc reload" was invoked
before all zone loading actions triggered by a previous
"rndc reload" command were completed. [RT #47076]
4889. [func] Warn about the use of old root keys without the new
root key being present. Warn about dlv.isc.org's
key being present. Warn about both managed and
trusted root keys being present. [RT #43670]
--- 9.12.1b1 released ---
4888. [test] Initialize sockets correctly in sample-update so
that the nsupdate system test will run on Windows.
[RT #47097]
4887. [test] Enable the rpzrecurse test to run on Windows.
[RT #47093]
4886. [doc] Document dig -u in manpage. [RT #47150]
4885. [security] update-policy rules that otherwise ignore the name
field now require that it be set to "." to ensure
that any type list present is properly interpreted.
[RT #47126]
4884. [bug] named could crash on shutdown due to a race between
shutdown_server() and ns__client_request(). [RT #47120]
4883. [cleanup] Improved debugging output from dnssec-cds. [RT #47026]
4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]
4881. [bug] Only include dst_openssl.h when OpenSSL is required.
[RT #47068]
4880. [bug] Named wasn't returning the target of a cross-zone
CNAME between two served zones when recursion was
desired and available (RD=1, RA=1). (When this is
not the case, the CNAME target is deliberately
withheld to prevent accidental cache poisoning.)
[RT #47078]
4879. [bug] dns_rdata_caa:value_len field was too small.
[RT #47086]
4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]
4877. [bug] Address integer overflow when exponentially
backing off retry intervals. [RT #47041]
4876. [bug] Address deadlock with accessing a keytable. [RT #47000]
4875. [bug] Address compile failures on older systems. [RT #47015]
4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]
4873. [doc] Grammars for named.conf included in the ARM are now
automatically generated by the configuration parser
itself. As a side effect of the work needed to
separate zone type grammars from each other, this
also makes checking of zone statements in
named-checkconf more correct and consistent.
[RT #36957]
4872. [bug] Don't permit loading meta RR types such as TKEY
from master files. [RT #47009]
4871. [bug] Fix configure glitch in detecting stdatomic.h
support on systems with multiple compilers.
[RT #46959]
4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]
4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behavior and
can lead to bad optimization. [RT #46888]
4867. [cleanup] Normalize rndc on/off commands (validation,
querylog, serve-stale) so they all accept the
same synonyms for on/off (yes/no, true/false,
enable/disable). Thanks to Tony Finch. [RT #47022]
4866. [port] DST library initialization verifies MD5 (when MD5
was not disabled) and SHA-1 hash and HMAC support.
[RT #46764]
4864. [bug] named acting as a slave for a catalog zone crashed if
the latter contained a master definition without an IP
address. [RT #45999]
4861. [bug] The isc_crc64 unit test was not endian independent.
[RT #46973]
4860. [bug] isc_int8_t should be signed char. [RT #46973]
4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
in query.c. [RT #46891]
4856. [bug] 'rndc zonestatus' reported the wrong underlying type
for a inline slave zone. [RT #46875]
4855. [bug] isc_time_formatshorttimestamp produced incorrect
output. [RT #46938]
4854. [bug] query_synthcnamewildcard should stop generating the
response if query_synthwildcard fails. [RT #46939]
4853. [bug] Add REQUIRE's and INSIST's to isc_time_formatISO8601L
and isc_time_formatISO8601Lms. [RT #46916]
4852. [bug] Handle strftime() failing in isc_time_formatISO8601ms.
Add REQUIRE's and INSIST's to isc_time_formattimestamp,
isc_time_formathttptimestamp, isc_time_formatISO8601,
isc_time_formatISO8601ms. [RT #46892]
4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]
4847. [bug] dnssec-dnskey-kskonly was not being honored for
CDS and CDNSKEY. [RT #46755]
4846. [test] Adjust timing values in runtime system test. Address
@@ -15,6 +368,34 @@
4842. [bug] Conditionally compile opensslecdsa_link.c to avoid
warnings about unused function. [RT #46790]
--- 9.12.0 released ---
--- 9.12.0rc3 released ---
4863. [bug] Fix various other bugs reported by Valgrind's
memcheck tool. [RT #46978]
4862. [bug] The rdata flags for RRSIG were not being properly set
when constructing a rdataslab. [RT #46978]
--- 9.12.0rc2 released ---
4859. [bug] A loop was possible when attempting to validate
unsigned CNAME responses from secure zones;
this caused a delay in returning SERVFAIL and
also increased the chances of encountering
CVE-2017-3145. [RT #46839]
4858. [security] Addresses could be referenced after being freed
in resolver.c, causing an assertion failure.
(CVE-2017-3145) [RT #46839]
4850. [bug] Named failed to restart with multiple added zones in
lmdb database. [RT #46889]
4849. [bug] Duplicate zones could appear in the .nzf file if
addzone failed. [RT #46435]
--- 9.12.0rc1 released ---
4841. [bug] Address -fsanitize=undefined warnings. [RT #46786]
@@ -303,8 +684,8 @@
4760. [func] Add glue cache statistics counters. [RT #46028]
4759. [func] Add logging channel "trust-anchor-telementry" to
record trust-anchor-telementry in incoming requests.
4759. [func] Add logging channel "trust-anchor-telemetry" to
record trust-anchor-telemetry in incoming requests.
Both _ta-XXXX.<anchor>/NULL and EDNS KEY-TAG options
are logged. [RT #46124]
@@ -373,10 +754,10 @@
tests when running on terminals that support them.
[RT #45977]
4744. [bug] Suppress trust-anchor-telementry queries if
4744. [bug] Suppress trust-anchor-telemetry queries if
validation is disabled. [RT #46131]
4743. [func] Exclude trust-anchor-telementry queries from
4743. [func] Exclude trust-anchor-telemetry queries from
synth-from-dnssec processing. [RT #46123]
4742. [func] Synthesis of responses from DNSSEC-verified records.
+186
View File
@@ -0,0 +1,186 @@
BIND Source Access and Contributor Guidelines
Feb 22, 2018
Contents
1. Access to source code
2. Reporting bugs
3. Contributing code
Introduction
Thank you for using BIND!
BIND is open source software that implements the Domain Name System (DNS)
protocols for the Internet. It is a reference implementation of those
protocols, but it is also production-grade software, suitable for use in
high-volume and high-reliability applications. It is by far the most
widely used DNS software, providing a robust and stable platform on top of
which organizations can build distributed computing systems with the
knowledge that those systems are fully compliant with published DNS
standards.
BIND is and will always remain free and openly available. It can be used
and modified in any way by anyone.
BIND is maintained by the Internet Systems Consortium, a public-benefit
501(c)(3) nonprofit, using a "managed open source" approach: anyone can
see the source, but only ISC employees have commit access. Until recently,
the source could only be seen once ISC had published a release: read
access to the source repository was restricted just as commit access was.
That's now changing, with the opening of a public git mirror to the BIND
source tree (see below).
Access to source code
Public BIND releases are always available from the ISC FTP site.
A public-access GIT repository is also available at https://gitlab.isc.org
. This repository is a mirror, updated several times per day, of the
source repository maintained by ISC. It contains all the public release
branches; upcoming releases can be viewed in their current state at any
time. It does not contain development branches or unreviewed work in
progress. Commits which address security vulnerablilities are withheld
until after public disclosure.
You can browse the source online via https://gitlab.isc.org/isc-projects/
bind9
To clone the repository, use:
$ git clone https://gitlab.isc.org/isc-projects/bind9.git
Release branch names are of the form v9_X, where X represents the second
number in the BIND 9 version number. So, to check out the BIND 9.12
branch, use:
$ git checkout v9_12
Whenever a branch is ready for publication, a tag will be placed of the
form v9_X_Y. The 9.12.0 release, for instance, is tagged as v9_12_0.
The branch in which the next major release is being developed is called
master.
Reporting bugs
Reports of flaws in the BIND package, including software bugs, errors in
the documentation, missing files in the tarball, suggested changes or
requests for new features, etc, can be filed using https://gitlab.isc.org/
isc-projects/bind9/issues.
Due to a large ticket backlog, we are sometimes slow to respond,
especially if a bug is cosmetic or if a feature request is vague or low in
priority, but we will try at least to acknowledge legitimate bug reports
within a week.
ISC's ticketing system is publicly readable; however, you must have an
account to file a new issue. You can either register locally or use
credentials from an existing account at GitHub, GitLab, Google, Twitter,
or Facebook.
Reporting possible security issues
If you think you may be seeing a potential security vulnerability in BIND
(for example, a crash with REQUIRE, INSIST, or ASSERT failure), please
report it immediately by emailing to security-officer@isc.org. Plain-text
e-mail is not a secure choice for communications concerning undisclosed
security issues so please encrypt your communications to us if possible,
using the ISC Security Officer public key.
Do not discuss undisclosed security vulnerabilites on any public mailing
list. ISC has a long history of handling reported vulnerabilities promptly
and effectively and we respect and acknowledge responsible reporters.
ISC's Security Vulnerability Disclosure Policy is documented at https://
kb.isc.org/article/AA-00861/0.
If you have a crash, you may want to consult ?What to do if your BIND or
DHCP server has crashed.?
Contributing code
BIND is licensed under the Mozilla Public License 2.0. Earier versions
(BIND 9.10 and earlier) were licensed under the ISC License
ISC does not require an explicit copyright assignment for patch
contributions. However, by submitting a patch to ISC, you implicitly
certify that you are the author of the code, that you intend to reliquish
exclusive copyright, and that you grant permission to publish your work
under the open source license used for the BIND version(s) to which your
patch will be applied.
BIND code
Patches for BIND may be submitted directly via merge requests in ISC's
Gitlab source repository for BIND.
Patches can also be submitted as diffs against a specific version of BIND
-- preferably the current top of the master branch. Diffs may be generated
using either git format-patch or git diff.
Those wanting to write code for BIND may be interested in the developer
information page, which includes information about BIND design and coding
practices, including discussion of internal APIs and overall system
architecture. (This is a work in progress, and still quite preliminary.)
Every patch submitted will be reviewed by ISC engineers following our code
review process before it is merged.
It may take considerable time to review patch submissions, especially if
they don't meet ISC style and quality guidelines. If a patch is a good
idea, we can and will do additional work to bring it up to par, but if
we're busy with other work, it may take us a long time to get to it.
To ensure your patch is acted on as promptly as possible, please:
* Try to adhere to the BIND 9 coding style.
* Run make check to ensure your change hasn't caused any functional
regressions.
* Document your work, both in the patch itself and in the accompanying
email.
* In patches that make non-trivial functional changes, include system
tests if possible; when introducing or substantially altering a
library API, include unit tests. See Testing for more information.
Changes to configure
If you need to make changes to configure, you should not edit it directly;
instead, edit configure.in, then run autoconf. Similarly, instead of
editing config.h.in directly, edit configure.in and run autoheader.
When submitting a patch as a diff, it's fine to omit the configure diffs
to save space. Just send the configure.in diffs and we'll generate the new
configure during the review process.
Documentation
All functional changes should be documented. There are three types of
documentation in the BIND source tree:
* Man pages are kept alongside the source code for the commands they
document, in files ending in .docbook; for example, the named man page
is bin/named/named.docbook.
* The BIND 9 Administrator Reference Manual is mostly in doc/arm/
Bv9ARM-book.xml, plus a few other XML files that are included in it.
* API documentation is in the header file describing the API, in
Doxygen-formatted comments.
It is not necessary to edit any documentation files other than these; all
PDF, HTML, and nroff-format man page files will be updated automatically
from the docbook and XML files after merging.
Patches to improve existing documentation are also very welcome!
Tests
BIND is a large and complex project. We rely heavily on continuous
automated testing and cannot merge new code without adequate test
coverage. Please see the 'Testing' section of doc/dev/dev.md for more
information.
Thanks
Thank you for your interest in contributing to the ongoing development of
BIND.
+201
View File
@@ -0,0 +1,201 @@
<!--
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
## BIND Source Access and Contributor Guidelines
*Feb 22, 2018*
### Contents
1. [Access to source code](#access)
1. [Reporting bugs](#bugs)
1. [Contributing code](#contrib)
### Introduction
Thank you for using BIND!
BIND is open source software that implements the Domain Name System (DNS)
protocols for the Internet. It is a reference implementation of those
protocols, but it is also production-grade software, suitable for use in
high-volume and high-reliability applications. It is by far the most
widely used DNS software, providing a robust and stable platform on top of
which organizations can build distributed computing systems with the
knowledge that those systems are fully compliant with published DNS
standards.
BIND is and will always remain free and openly available. It can be
used and modified in any way by anyone.
BIND is maintained by the [Internet Systems Consortium](https://www.isc.org),
a public-benefit 501(c)(3) nonprofit, using a "managed open source" approach:
anyone can see the source, but only ISC employees have commit access.
Until recently, the source could only be seen once ISC had published
a release: read access to the source repository was restricted just
as commit access was. That's now changing, with the opening of a
public git mirror to the BIND source tree (see below).
### <a name="access"></a>Access to source code
Public BIND releases are always available from the
[ISC FTP site](ftp://ftp.isc.org/isc/bind9).
A public-access GIT repository is also available at
[https://gitlab.isc.org](https://gitlab.isc.org).
This repository is a mirror, updated several times per day, of the
source repository maintained by ISC. It contains all the public release
branches; upcoming releases can be viewed in their current state at any
time. It does *not* contain development branches or unreviewed work in
progress. Commits which address security vulnerablilities are withheld
until after public disclosure.
You can browse the source online via
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9)
To clone the repository, use:
> $ git clone https://gitlab.isc.org/isc-projects/bind9.git
Release branch names are of the form `v9_X`, where X represents the second
number in the BIND 9 version number. So, to check out the BIND 9.12
branch, use:
> $ git checkout v9_12
Whenever a branch is ready for publication, a tag will be placed of the
form `v9_X_Y`. The 9.12.0 release, for instance, is tagged as `v9_12_0`.
The branch in which the next major release is being developed is called
`master`.
### <a name="bugs"></a>Reporting bugs
Reports of flaws in the BIND package, including software bugs, errors
in the documentation, missing files in the tarball, suggested changes
or requests for new features, etc, can be filed using
[https://gitlab.isc.org/isc-projects/bind9/issues](https://gitlab.isc.org/isc-projects/bind9/issues).
Due to a large ticket backlog, we are sometimes slow to respond,
especially if a bug is cosmetic or if a feature request is vague or
low in priority, but we will try at least to acknowledge legitimate
bug reports within a week.
ISC's ticketing system is publicly readable; however, you must have
an account to file a new issue. You can either register locally or
use credentials from an existing account at GitHub, GitLab, Google,
Twitter, or Facebook.
### Reporting possible security issues
If you think you may be seeing a potential security vulnerability in BIND
(for example, a crash with REQUIRE, INSIST, or ASSERT failure), please
report it immediately by emailing to security-officer@isc.org. Plain-text
e-mail is not a secure choice for communications concerning undisclosed
security issues so please encrypt your communications to us if possible,
using the [ISC Security Officer public key](https://www.isc.org/downloads/software-support-policy/openpgp-key/).
Do not discuss undisclosed security vulnerabilites on any public mailing list.
ISC has a long history of handling reported vulnerabilities promptly and
effectively and we respect and acknowledge responsible reporters.
ISC's Security Vulnerability Disclosure Policy is documented at [https://kb.isc.org/article/AA-00861/0](https://kb.isc.org/article/AA-00861/0).
If you have a crash, you may want to consult
[What to do if your BIND or DHCP server has crashed.](https://kb.isc.org/article/AA-00340/89/What-to-do-if-your-BIND-or-DHCP-server-has-crashed.html)
### <a name="bugs"></a>Contributing code
BIND is licensed under the
[Mozilla Public License 2.0](http://www.isc.org/downloads/software-support-policy/isc-license/).
Earier versions (BIND 9.10 and earlier) were licensed under the [ISC License](http://www.isc.org/downloads/software-support-policy/isc-license/)
ISC does not require an explicit copyright assignment for patch
contributions. However, by submitting a patch to ISC, you implicitly
certify that you are the author of the code, that you intend to reliquish
exclusive copyright, and that you grant permission to publish your work
under the open source license used for the BIND version(s) to which your
patch will be applied.
#### <a name="bind"></a>BIND code
Patches for BIND may be submitted directly via merge requests in
[ISC's Gitlab](https://gitlab.isc.org/isc-projects/bind9/) source
repository for BIND.
Patches can also be submitted as diffs against a specific version of
BIND -- preferably the current top of the `master` branch. Diffs may
be generated using either `git format-patch` or `git diff`.
Those wanting to write code for BIND may be interested in the
[developer information](doc/dev/dev.md) page, which includes information
about BIND design and coding practices, including discussion of internal
APIs and overall system architecture. (This is a work in progress, and
still quite preliminary.)
Every patch submitted will be reviewed by ISC engineers following our
[code review process](doc/dev/dev.md#reviews) before it is merged.
It may take considerable time to review patch submissions, especially if
they don't meet ISC style and quality guidelines. If a patch is a good
idea, we can and will do additional work to bring it up to par, but if
we're busy with other work, it may take us a long time to get to it.
To ensure your patch is acted on as promptly as possible, please:
* Try to adhere to the [BIND 9 coding style](doc/dev/style.md).
* Run `make` `check` to ensure your change hasn't caused any
functional regressions.
* Document your work, both in the patch itself and in the
accompanying email.
* In patches that make non-trivial functional changes, include system
tests if possible; when introducing or substantially altering a
library API, include unit tests. See [Testing](doc/dev/dev.md#testing)
for more information.
##### Changes to `configure`
If you need to make changes to `configure`, you should not edit it
directly; instead, edit `configure.in`, then run `autoconf`. Similarly,
instead of editing `config.h.in` directly, edit `configure.in` and run
`autoheader`.
When submitting a patch as a diff, it's fine to omit the `configure`
diffs to save space. Just send the `configure.in` diffs and we'll
generate the new `configure` during the review process.
##### Documentation
All functional changes should be documented. There are three types
of documentation in the BIND source tree:
* Man pages are kept alongside the source code for the commands
they document, in files ending in `.docbook`; for example, the
`named` man page is `bin/named/named.docbook`.
* The *BIND 9 Administrator Reference Manual* is mostly in
`doc/arm/Bv9ARM-book.xml`, plus a few other XML files that are included
in it.
* API documentation is in the header file describing the API, in
Doxygen-formatted comments.
It is not necessary to edit any documentation files other than these;
all PDF, HTML, and `nroff`-format man page files will be updated
automatically from the `docbook` and `XML` files after merging.
Patches to improve existing documentation are also very welcome!
##### Tests
BIND is a large and complex project. We rely heavily on continuous
automated testing and cannot merge new code without adequate test coverage.
Please see [the 'Testing' section of doc/dev/dev.md](doc/dev/dev.md#testing)
for more information.
#### Thanks
Thank you for your interest in contributing to the ongoing development
of BIND.
+1 -1
View File
@@ -1,4 +1,4 @@
Copyright (C) 1996-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright (C) 1996-2018 Internet Systems Consortium, Inc. ("ISC")
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
-1
View File
@@ -522,4 +522,3 @@ BIND 9.2.0
DNSSEC implementation is still considered experimental. For detailed
information about the state of the DNSSEC implementation, see the file
doc/misc/dnssec.
+4 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
### Functional enhancements from prior major releases of BIND 9
+4
View File
@@ -0,0 +1,4 @@
syntax(2)
test_suite('bind9')
include('lib/Kyuafile')
+20 -7
View File
@@ -1,12 +1,16 @@
# Copyright (C) 1998-2002, 2004-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
VERSION=@BIND9_VERSION@
@@ -70,7 +74,7 @@ tags:
find lib bin -name "*.[ch]" -print | @ETAGS@ -
test check:
@if test -n "`${PERL} ${top_srcdir}/bin/tests/system/testsock.pl 2>&- || echo fail`"; then \
@if test -n "`${PERL} ${top_srcdir}/bin/tests/system/testsock.pl 2>/dev/null || echo fail`"; then \
echo I: NOTE: The tests were not run because they require that; \
echo I: the IP addresses 10.53.0.1 through 10.53.0.8 are configured; \
echo I: as alias addresses on the loopback interface. Please run; \
@@ -86,22 +90,31 @@ force-test: test-force
test-force:
status=0; \
(cd bin/tests && ${MAKE} ${MAKEDEFS} test) || status=1; \
(test -f unit/unittest.sh && $(SHELL) unit/unittest.sh) || status=1; \
(test -f ${top_builddir}/unit/unittest.sh && \
$(SHELL) ${top_builddir}/unit/unittest.sh) || status=1; \
exit $$status
README: README.md
${PANDOC} --email-obfuscation=none -s -t html README.md | \
${W3M} -dump -cols 75 -O ascii -T text/html > $@
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
HISTORY: HISTORY.md
${PANDOC} --email-obfuscation=none -s -t html HISTORY.md | \
${W3M} -dump -cols 75 -O ascii -T text/html > $@
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
OPTIONS: OPTIONS.md
${PANDOC} --email-obfuscation=none -s -t html OPTIONS.md | \
${W3M} -dump -cols 75 -O ascii -T text/html > $@
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
CONTRIBUTING: CONTRIBUTING.md
${PANDOC} --email-obfuscation=none -s -t html CONTRIBUTING.md | \
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
unit::
sh ${top_srcdir}/unit/unittest.sh
sh ${top_builddir}/unit/unittest.sh
clean::
-1
View File
@@ -27,4 +27,3 @@ Setting Description
may be useful when debugging
-DISC_HEAP_CHECK Test heap consistency after every heap
operation; used when debugging
+4 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
Setting the `STD_CDEFINES` environment variable before running `configure`
can be used to enable certain compile-time options that are not explicitly
+49 -24
View File
@@ -7,11 +7,12 @@ Contents
3. Contributing to BIND
4. BIND 9.12 features
5. Building BIND
6. Compile-time options
7. Automated testing
8. Documentation
9. Change log
10. Acknowledgments
6. macOS
7. Compile-time options
8. Automated testing
9. Documentation
10. Change log
11. Acknowledgments
Introduction
@@ -49,19 +50,21 @@ bind9/releasenotes
Reporting bugs and getting help
Please report assertion failure errors and suspected security issues to
security-officer@isc.org.
To report non-security-sensitive bugs or request new features, you may
open an Issue in the BIND 9 project on the ISC GitLab server at https://
gitlab.isc.org/isc-projects/bind9.
General bug reports can be sent to bind9-bugs@isc.org.
Please note that, unless you explicitly mark the newly created Issue as
"confidential", it will be publicly readable. Please do not include any
information in bug reports that you consider to be confidential unless the
issue has been marked as such. In particular, if submitting the contents
of your configuration file in a non-confidential Issue, it is advisable to
obscure key secrets: this can be done automatically by using
named-checkconf -px.
Feature requests can be sent to bind-suggest@isc.org.
Please note that, while tickets submitted to ISC's ticketing system are
not initially publicly readable by default, they can be made publicly
acessible afterward. Please do not include information in bug reports that
you consider to be confidential. In particular, when sending the contents
of your configuration file, it is advisable to obscure key secrets: this
can be done automatically by using named-checkconf -px.
If the bug you are reporting is a potential security issue, such as an
assertion failure or other crash in named, please do NOT use GitLab to
report it. Instead, please send mail to security-officer@isc.org.
Professional support and training for BIND are available from ISC at
https://www.isc.org/support.
@@ -76,18 +79,23 @@ mailman/listinfo/bind-workers.
Contributing to BIND
ISC maintains a public git repository for BIND; details can be found at
http://www.isc.org/git/, and also on Github at https://github.com/
isc-projects.
http://www.isc.org/git/.
Information for BIND contributors can be found in the following files: -
General information: doc/dev/contrib.md - BIND 9 code style: doc/dev/
style.md - BIND architecture and developer guide: doc/dev/dev.md
Patches for BIND may be submitted either as Github pull requests or via
email. When submitting a patch via email, please prepend the subject
header with "[PATCH]" so it will be easier for us to find. If your patch
introduces a new feature in BIND, please submit it to bind-suggest@isc.org
; if it fixes a bug, please submit it to bind9-bugs@isc.org.
Patches for BIND may be submitted as Merge Requests in the ISC GitLab
server at at https://gitlab.isc.org/isc-projects/bind9/merge_requests.
By default, external contributors don't have ability to fork BIND in the
GitLab server, but if you wish to contribute code to BIND, you may request
permission to do so. Thereafter, you can create git branches and directly
submit requests that they be reviewed and merged.
If you prefer, you may also submit code by opening a GitLab Issue and
including your patch as an attachment, preferably generated by git
format-patch.
BIND 9.12 features
@@ -123,6 +131,16 @@ include:
default without a configure option.
* The obsolete isc-hmac-fixup command has been removed.
BIND 9.12.1
BIND 9.12.1 is a maintenance release.
BIND 9.12.2
BIND 9.12.2 is a maintenance release, and addresses security
vulnerabilities disclosed in CVE-2018-5736, CVE-2018-5737 and
CVE-2018-5738.
Building BIND
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
@@ -165,6 +183,14 @@ BUILD_CPPFLAGS
BUILD_LDFLAGS
BUILD_LIBS
macOS
Building on macOS assumes that the "Command Tools for Xcode" is installed.
This can be downloaded from https://developer.apple.com/download/more/ or
if you have Xcode already installed you can run "xcode-select --install".
This will add /usr/include to the system and install the compiler and
other tools so that they can be easily found.
Compile-time options
To see a full list of configuration options, run configure --help.
@@ -342,4 +368,3 @@ Acknowledgments
(eay@cryptsoft.com)
* This product includes software written by Tim Hudson
(tjh@cryptsoft.com)
+55 -23
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
# BIND 9
@@ -14,6 +17,7 @@
1. [Contributing to BIND](#contrib)
1. [BIND 9.12 features](#features)
1. [Building BIND](#build)
1. [macOS](#macos)
1. [Compile-time options](#opts)
1. [Automated testing](#testing)
1. [Documentation](#doc)
@@ -57,22 +61,24 @@ For up-to-date release notes and errata, see
### <a name="help"/> Reporting bugs and getting help
Please report assertion failure errors and suspected security issues to
To report non-security-sensitive bugs or request new features, you may
open an Issue in the BIND 9 project on the
[ISC GitLab server](https://gitlab.isc.org) at
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9).
Please note that, unless you explicitly mark the newly created Issue as
"confidential", it will be publicly readable. Please do not include any
information in bug reports that you consider to be confidential unless
the issue has been marked as such. In particular, if submitting the
contents of your configuration file in a non-confidential Issue, it is
advisable to obscure key secrets: this can be done automatically by
using `named-checkconf -px`.
If the bug you are reporting is a potential security issue, such as an
assertion failure or other crash in `named`, please do *NOT* use GitLab to
report it. Instead, please send mail to
[security-officer@isc.org](mailto:security-officer@isc.org).
General bug reports can be sent to
[bind9-bugs@isc.org](mailto:bind9-bugs@isc.org).
Feature requests can be sent to
[bind-suggest@isc.org](mailto:bind-suggest@isc.org).
Please note that, while tickets submitted to ISC's ticketing system
are not initially publicly readable by default, they can be made publicly
acessible afterward. Please do not include information in bug reports that
you consider to be confidential. In particular, when sending the contents of
your configuration file, it is advisable to obscure key secrets: this can
be done automatically by using `named-checkconf -px`.
Professional support and training for BIND are available from
ISC at [https://www.isc.org/support](https://www.isc.org/support).
@@ -86,20 +92,27 @@ may also want to join the __BIND Workers__ mailing list, at
### <a name="contrib"/> Contributing to BIND
ISC maintains a public git repository for BIND; details can be found
at [http://www.isc.org/git/](http://www.isc.org/git/), and also on Github
at [https://github.com/isc-projects](https://github.com/isc-projects).
at [http://www.isc.org/git/](http://www.isc.org/git/).
Information for BIND contributors can be found in the following files:
- General information: [doc/dev/contrib.md](doc/dev/contrib.md)
- BIND 9 code style: [doc/dev/style.md](doc/dev/style.md)
- BIND architecture and developer guide: [doc/dev/dev.md](doc/dev/dev.md)
Patches for BIND may be submitted either as Github pull requests
or via email. When submitting a patch via email, please prepend the
subject header with "`[PATCH]`" so it will be easier for us to find.
If your patch introduces a new feature in BIND, please submit it to
[bind-suggest@isc.org](mailto:bind-suggest@isc.org); if it fixes a bug,
please submit it to [bind9-bugs@isc.org](mailto:bind9-bugs@isc.org).
Patches for BIND may be submitted as
[Merge Requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests)
in the [ISC GitLab server](https://gitlab.isc.org) at
at [https://gitlab.isc.org/isc-projects/bind9/merge_requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests).
By default, external contributors don't have ability to fork BIND in the
GitLab server, but if you wish to contribute code to BIND, you may request
permission to do so. Thereafter, you can create git branches and directly
submit requests that they be reviewed and merged.
If you prefer, you may also submit code by opening a
[GitLab Issue](https://gitlab.isc.org/isc-projects/bind9/issues) and
including your patch as an attachment, preferably generated by
`git format-patch`.
### <a name="features"/> BIND 9.12 features
@@ -135,6 +148,16 @@ include:
by default without a configure option.
* The obsolete `isc-hmac-fixup` command has been removed.
#### BIND 9.12.1
BIND 9.12.1 is a maintenance release.
#### BIND 9.12.2
BIND 9.12.2 is a maintenance release, and addresses security
vulnerabilities disclosed in CVE-2018-5736, CVE-2018-5737 and
CVE-2018-5738.
### <a name="build"/> Building BIND
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
@@ -171,6 +194,15 @@ affect compilation:
|`BUILD_LDFLAGS`||
|`BUILD_LIBS`||
#### <a name="macos"> macOS
Building on macOS assumes that the "Command Tools for Xcode" is installed.
This can be downloaded from https://developer.apple.com/download/more/
or if you have Xcode already installed you can run "xcode-select --install".
This will add /usr/include to the system and install the compiler and other
tools so that they can be easily found.
#### <a name="opts"/> Compile-time options
To see a full list of configuration options, run `configure --help`.
+4 -3
View File
@@ -1,13 +1,14 @@
/*
* Copyright (C) 1999-2005, 2007, 2008, 2012, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: acconfig.h,v 1.53 2008/12/01 23:47:44 tbox Exp $ */
/*! \file */
/***
+5 -2
View File
@@ -1,10 +1,13 @@
#!/bin/sh
#
# Copyright (C) 2015, 2016 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
# Run this script after modifying configure.in to generate configure
autoreconf -i
autoreconf -f -i
+6 -5
View File
@@ -1,17 +1,18 @@
# Copyright (C) 1998-2001, 2004, 2007, 2009, 2012-2014, 2016 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# $Id: Makefile.in,v 1.29 2009/10/05 12:07:08 fdupont Exp $
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
SUBDIRS = named rndc dig delv dnssec tools tests nsupdate \
check confgen @NZD_TOOLS@ @PYTHON_TOOLS@ @PKCS11_TOOLS@
SUBDIRS = named rndc dig delv dnssec tools nsupdate check confgen \
@NZD_TOOLS@ @PYTHON_TOOLS@ @PKCS11_TOOLS@ tests
TARGETS =
@BIND9_MAKE_RULES@
+4 -1
View File
@@ -1,8 +1,11 @@
# Copyright (C) 2000-2007, 2009, 2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
+6 -6
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2000-2002, 2004-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: check-tool.c,v 1.44 2011/12/22 07:32:39 each Exp $ */
/*! \file */
@@ -587,8 +589,7 @@ check_ttls(dns_zone_t *zone, dns_ttl_t maxttl) {
dns_rdataset_t rdataset;
dns_fixedname_t fname;
dns_name_t *name;
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
dns_rdataset_init(&rdataset);
CHECK(dns_zone_getdb(zone, &db));
@@ -683,8 +684,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
isc_buffer_constinit(&buffer, zonename, strlen(zonename));
isc_buffer_add(&buffer, strlen(zonename));
dns_fixedname_init(&fixorigin);
origin = dns_fixedname_name(&fixorigin);
origin = dns_fixedname_initname(&fixorigin);
CHECK(dns_name_fromtext(origin, &buffer, dns_rootname, 0, NULL));
CHECK(dns_zone_setorigin(zone, origin));
CHECK(dns_zone_setdbtype(zone, 1, (const char * const *) dbtype));
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2000-2002, 2004, 2005, 2007, 2010, 2011, 2013, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: check-tool.h,v 1.18 2011/12/09 23:47:02 tbox Exp $ */
#ifndef CHECK_TOOL_H
#define CHECK_TOOL_H
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -136,5 +136,5 @@ BIND 9 Administrator Reference Manual\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2002, 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2002, 2004, 2005, 2007, 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 1999-2002, 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: named-checkconf.c,v 1.56 2011/03/12 04:59:46 tbox Exp $ */
/*! \file */
+5 -1
View File
@@ -1,11 +1,14 @@
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -36,6 +39,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2002, 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002, 2004-2007, 2009-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -325,5 +325,5 @@ BIND 9 Administrator Reference Manual\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2002, 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2002, 2004-2007, 2009-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 1999-2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: named-checkzone.c,v 1.65.32.2 2012/02/07 02:45:21 each Exp $ */
/*! \file */
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2000-2002, 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -39,6 +42,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2002, 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002, 2004-2007, 2009-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+4 -1
View File
@@ -1,8 +1,11 @@
# Copyright (C) 2009, 2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -155,5 +155,5 @@ BIND 9 Administrator Reference Manual\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -1
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2009, 2011, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -33,6 +36,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: os.h,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2012-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: keygen.c,v 1.4 2009/11/12 14:02:38 marka Exp $ */
/*! \file */
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: keygen.h,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
#ifndef RNDC_KEYGEN_H
#define RNDC_KEYGEN_H 1
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2001, 2003-2005, 2007, 2009, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2001, 2003-2005, 2007, 2009, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -217,5 +217,5 @@ BIND 9 Administrator Reference Manual\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2001, 2003-2005, 2007, 2009, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2001, 2003-2005, 2007, 2009, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -1
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2001, 2003-2005, 2007-2009, 2011, 2013, 2014, 2016, 2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2001, 2003-2005, 2007, 2009, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -40,6 +43,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2001, 2003-2005, 2007, 2009, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2001, 2003-2005, 2007, 2009, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+4 -3
View File
@@ -1,10 +1,11 @@
# Copyright (C) 2009, 2012, 2016 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# $Id: Makefile.in,v 1.3 2009/06/11 23:47:55 tbox Exp $
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: os.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2015, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: util.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: util.h,v 1.4 2009/09/29 15:06:05 fdupont Exp $ */
#ifndef RNDC_UTIL_H
#define RNDC_UTIL_H 1
+4 -2
View File
@@ -1,12 +1,14 @@
/*
* Copyright (C) 2009, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/* $Id: os.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
#include <config.h>
+4 -1
View File
@@ -1,8 +1,11 @@
# Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -437,5 +437,5 @@ RFC5155\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2014-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+6 -5
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
#include <config.h>
@@ -547,8 +550,7 @@ convert_name(dns_fixedname_t *fn, dns_name_t **name, const char *text) {
isc_buffer_constinit(&b, text, len);
isc_buffer_add(&b, len);
dns_fixedname_init(fn);
n = dns_fixedname_name(fn);
n = dns_fixedname_initname(fn);
result = dns_name_fromtext(n, &b, dns_rootname, 0, NULL);
if (result != ISC_R_SUCCESS) {
@@ -1535,8 +1537,7 @@ get_reverse(char *reverse, size_t len, char *value, isc_boolean_t strict) {
dns_name_t *name;
unsigned int options = 0;
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
result = dns_byaddr_createptrname2(&addr, options, name);
if (result != ISC_R_SUCCESS)
return (result);
+5 -1
View File
@@ -1,11 +1,14 @@
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -35,6 +38,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2014-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+7 -4
View File
@@ -1,8 +1,11 @@
# Copyright (C) 2000-2002, 2004, 2005, 2007, 2009, 2012-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
@@ -16,7 +19,7 @@ READLINE_LIB = @READLINE_LIB@
CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} \
${BIND9_INCLUDES} ${ISC_INCLUDES} \
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @DST_OPENSSL_INC@
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @LIBIDN2_CFLAGS@ @DST_OPENSSL_INC@
CDEFINES = -DVERSION=\"${VERSION}\" @CRYPTO@
CWARNINGS =
@@ -38,10 +41,10 @@ DEPLIBS = ${DNSDEPLIBS} ${IRSDEPLIBS} ${BIND9DEPLIBS} \
${ISCDEPLIBS} ${ISCCFGDEPLIBS}
LIBS = ${DNSLIBS} ${IRSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \
${ISCLIBS} @IDNLIBS@ @LIBS@
${ISCLIBS} @IDNKIT_LIBS@ @LIBIDN2_LIBS@ @LIBS@
NOSYMLIBS = ${DNSLIBS} ${IRSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \
${ISCNOSYMLIBS} @IDNLIBS@ @LIBS@
${ISCNOSYMLIBS} @IDNKIT_LIBS@ @LIBIDN2_LIBS@ @LIBS@
SUBDIRS =
+21 -10
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2011, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -176,7 +176,7 @@ using the command\-line interface\&.
.PP
\-i
.RS 4
Do reverse IPv6 lookups using the obsolete RFC1886 IP6\&.INT domain, which is no longer in use\&. Obsolete bit string label queries (RFC2874) are not attempted\&.
Do reverse IPv6 lookups using the obsolete RFC 1886 IP6\&.INT domain, which is no longer in use\&. Obsolete bit string label queries (RFC 2874) are not attempted\&.
.RE
.PP
\-k \fIkeyfile\fR
@@ -210,13 +210,20 @@ from other arguments\&.
.PP
\-t \fItype\fR
.RS 4
The resource record type to query\&. It can be any valid query type which is supported in BIND 9\&. The default query type is "A", unless the
The resource record type to query\&. It can be any valid query type\&. If it is a resource record type supported in BIND 9, it can be given by the type mnemonic (such as "NS" or "AAAA")\&. The default query type is "A", unless the
\fB\-x\fR
option is supplied to indicate a reverse lookup\&. A zone transfer can be requested by specifying a type of AXFR\&. When an incremental zone transfer (IXFR) is required, set the
\fItype\fR
to
ixfr=N\&. The incremental zone transfer will contain the changes made to the zone since the serial number in the zone\*(Aqs SOA record was
\fIN\fR\&.
.sp
All resource record types can be expressed as "TYPEnn", where "nn" is the number of the type\&. If the resource record type is not supported in BIND 9, the result will be displayed as described in RFC 3597\&.
.RE
.PP
\-u
.RS 4
Print query times in microseconds instead of milliseconds\&.
.RE
.PP
\-v
@@ -459,6 +466,11 @@ Show [or do not show] the IP address and port number that supplied the answer wh
option is enabled\&. If short form answers are requested, the default is not to show the source address and port number of the server that provided the answer\&.
.RE
.PP
\fB+[no]idnin\fR
.RS 4
Process [do not process] IDN domain names on input\&. This requires IDN SUPPORT to have been enabled at compile time\&. The default is to process IDN input\&.
.RE
.PP
\fB+[no]idnout\fR
.RS 4
Convert [do not convert] puny code on output\&. This requires IDN SUPPORT to have been enabled at compile time\&. The default is to convert output\&.
@@ -770,11 +782,10 @@ If
\fBdig\fR
has been built with IDN (internationalized domain name) support, it can accept and display non\-ASCII domain names\&.
\fBdig\fR
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server\&. If you\*(Aqd like to turn off the IDN support for some reason, defines the
\fBIDN_DISABLE\fR
environment variable\&. The IDN support is disabled if the variable is set when
\fBdig\fR
runs\&.
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server\&. If you\*(Aqd like to turn off the IDN support for some reason, use parameters
\fI+noidnin\fR
and
\fI+noidnout\fR\&.
.SH "FILES"
.PP
/etc/resolv\&.conf
@@ -786,7 +797,7 @@ ${HOME}/\&.digrc
\fBhost\fR(1),
\fBnamed\fR(8),
\fBdnssec-keygen\fR(8),
RFC1035\&.
RFC 1035\&.
.SH "BUGS"
.PP
There are probably too many query options\&.
@@ -795,5 +806,5 @@ There are probably too many query options\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2011, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+41 -17
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2000-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -187,7 +190,8 @@ help(void) {
" +[no]fail (Don't try next server on SERVFAIL)\n"
" +[no]header-only (Send query without a question section)\n"
" +[no]identify (ID responders in short answers)\n"
" +[no]idnout (convert IDN response)\n"
" +[no]idnin (Parse IDN names)\n"
" +[no]idnout (Convert IDN response)\n"
" +[no]ignore (Don't revert to TCP for TC responses.)\n"
" +[no]keepalive (Request EDNS TCP keepalive)\n"
" +[no]keepopen (Keep the TCP socket open between queries)\n"
@@ -233,7 +237,7 @@ help(void) {
* Callback from dighost.c to print the received message.
*/
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
isc_uint64_t diff;
time_t tnow;
struct tm tmnow;
@@ -281,12 +285,12 @@ received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
} else {
printf(";; MSG SIZE rcvd: %u\n", bytes);
}
if (key != NULL) {
if (tsigkey != NULL) {
if (!validated)
puts(";; WARNING -- Some TSIG could not "
"be validated");
}
if ((key == NULL) && (keysecret[0] != 0)) {
if ((tsigkey == NULL) && (keysecret[0] != 0)) {
puts(";; WARNING -- TSIG key was not used.");
}
puts("");
@@ -996,13 +1000,18 @@ plus_option(const char *option, isc_boolean_t is_batchfile,
lookup->ednsoptscnt = 0;
break;
}
if (value == NULL) {
code = NULL;
if (value != NULL) {
code = strtok(value,
":");
}
if (code == NULL) {
warn("ednsopt no "
"code point "
"specified");
goto exit_or_usage;
}
code = next_token(&value, ":");
value = strtok(NULL, "\0");
save_opt(lookup, code, value);
break;
default:
@@ -1042,13 +1051,29 @@ plus_option(const char *option, isc_boolean_t is_batchfile,
lookup->identify = state;
break;
case 'n':
FULLCHECK("idnout");
#ifndef WITH_IDN
fprintf(stderr, ";; IDN support not enabled\n");
switch (cmd[3]) {
case 'i':
FULLCHECK("idnin");
#ifndef WITH_IDN_SUPPORT
fprintf(stderr, ";; IDN input support"
" not enabled\n");
#else
lookup->idnout = state;
lookup->idnin = state;
#endif
break;
case 'o':
FULLCHECK("idnout");
#ifndef WITH_IDN_OUT_SUPPORT
fprintf(stderr, ";; IDN output support"
" not enabled\n");
#else
lookup->idnout = state;
#endif
break;
default:
goto invalid_option;
}
break;
default:
goto invalid_option;
}
@@ -1311,11 +1336,11 @@ plus_option(const char *option, isc_boolean_t is_batchfile,
result = parse_uint(&splitwidth, value,
1023, "split");
if (splitwidth % 4 != 0) {
if ((splitwidth % 4) != 0U) {
splitwidth = ((splitwidth + 3) / 4) * 4;
fprintf(stderr, ";; Warning, split must be "
"a multiple of 4; adjusting "
"to %d\n", splitwidth);
"to %u\n", splitwidth);
}
/*
* There is an adjustment done in the
@@ -1884,8 +1909,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
bargc = 1;
input = batchline;
bargv[bargc] = next_token(&input, " \t\r\n");
while ((bargv[bargc] != NULL) &&
(bargc < 62)) {
while ((bargc < 62) && (bargv[bargc] != NULL)) {
bargc++;
bargv[bargc] =
next_token(&input, " \t\r\n");
@@ -2084,7 +2108,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
goto next_line;
input = batchline;
bargv[bargc] = next_token(&input, " \t\r\n");
while ((bargv[bargc] != NULL) && (bargc < 14)) {
while ((bargc < 14) && (bargv[bargc] != NULL)) {
bargc++;
bargv[bargc] = next_token(&input, " \t\r\n");
}
@@ -2154,7 +2178,7 @@ query_finished(void) {
bargc = 1;
input = batchline;
bargv[bargc] = next_token(&input, " \t\r\n");
while ((bargv[bargc] != NULL) && (bargc < 14)) {
while ((bargc < 14) && (bargv[bargc] != NULL)) {
bargc++;
bargv[bargc] = next_token(&input, " \t\r\n");
}
+49 -19
View File
@@ -1,11 +1,14 @@
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2000-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -48,6 +51,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
@@ -271,9 +275,9 @@
<term>-i</term>
<listitem>
<para>
Do reverse IPv6 lookups using the obsolete RFC1886 IP6.INT
Do reverse IPv6 lookups using the obsolete RFC 1886 IP6.INT
domain, which is no longer in use. Obsolete bit string
label queries (RFC2874) are not attempted.
label queries (RFC 2874) are not attempted.
</para>
</listitem>
</varlistentry>
@@ -334,11 +338,12 @@
<term>-t <replaceable class="parameter">type</replaceable></term>
<listitem>
<para>
The resource record type to query. It can be any valid query type
which is
supported in BIND 9. The default query type is "A", unless the
<option>-x</option> option is supplied to indicate a reverse lookup.
A zone transfer can be requested by specifying a type of AXFR. When
The resource record type to query. It can be any valid query
type. If it is a resource record type supported in BIND 9, it
can be given by the type mnemonic (such as "NS" or "AAAA").
The default query type is "A", unless the <option>-x</option>
option is supplied to indicate a reverse lookup. A zone
transfer can be requested by specifying a type of AXFR. When
an incremental zone transfer (IXFR) is required, set the
<parameter>type</parameter> to <literal>ixfr=N</literal>.
The incremental zone transfer will contain the changes
@@ -346,6 +351,21 @@
record was
<parameter>N</parameter>.
</para>
<para>
All resource record types can be expressed as "TYPEnn", where
"nn" is the number of the type. If the resource record type is
not supported in BIND 9, the result will be displayed as
described in RFC 3597.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-u</term>
<listitem>
<para>
Print query times in microseconds instead of milliseconds.
</para>
</listitem>
</varlistentry>
@@ -763,6 +783,17 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]idnin</option></term>
<listitem>
<para>
Process [do not process] IDN domain names on input.
This requires IDN SUPPORT to have been enabled at
compile time. The default is to process IDN input.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]idnout</option></term>
<listitem>
@@ -1019,7 +1050,7 @@
<listitem>
<para>
This feature is now obsolete and has been removed;
use <command>delv</command> instead.
use <command>delv</command> instead.
</para>
</listitem>
</varlistentry>
@@ -1104,8 +1135,8 @@
<listitem>
<para>
This feature is related to <command>dig +sigchase</command>,
which is obsolete and has been removed. Use
<command>delv</command> instead.
which is obsolete and has been removed. Use
<command>delv</command> instead.
</para>
</listitem>
</varlistentry>
@@ -1150,9 +1181,9 @@
<listitem>
<para>
Formerly specified trusted keys for use with
<command>dig +sigchase</command>. This feature is now
obsolete and has been removed; use
<command>delv</command> instead.
<command>dig +sigchase</command>. This feature is now
obsolete and has been removed; use
<command>delv</command> instead.
</para>
</listitem>
</varlistentry>
@@ -1274,10 +1305,9 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
<command>dig</command> appropriately converts character encoding of
domain name before sending a request to DNS server or displaying a
reply from the server.
If you'd like to turn off the IDN support for some reason, defines
the <envar>IDN_DISABLE</envar> environment variable.
The IDN support is disabled if the variable is set when
<command>dig</command> runs.
If you'd like to turn off the IDN support for some reason, use
parameters <parameter>+noidnin</parameter> and
<parameter>+noidnout</parameter>.
</para>
</refsection>
@@ -1303,7 +1333,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
<citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>RFC1035</citetitle>.
<citetitle>RFC 1035</citetitle>.
</para>
</refsection>
+39 -19
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2011, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -230,9 +230,9 @@
<dt><span class="term">-i</span></dt>
<dd>
<p>
Do reverse IPv6 lookups using the obsolete RFC1886 IP6.INT
Do reverse IPv6 lookups using the obsolete RFC 1886 IP6.INT
domain, which is no longer in use. Obsolete bit string
label queries (RFC2874) are not attempted.
label queries (RFC 2874) are not attempted.
</p>
</dd>
<dt><span class="term">-k <em class="replaceable"><code>keyfile</code></em></span></dt>
@@ -277,11 +277,12 @@
<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
<dd>
<p>
The resource record type to query. It can be any valid query type
which is
supported in BIND 9. The default query type is "A", unless the
<code class="option">-x</code> option is supplied to indicate a reverse lookup.
A zone transfer can be requested by specifying a type of AXFR. When
The resource record type to query. It can be any valid query
type. If it is a resource record type supported in BIND 9, it
can be given by the type mnemonic (such as "NS" or "AAAA").
The default query type is "A", unless the <code class="option">-x</code>
option is supplied to indicate a reverse lookup. A zone
transfer can be requested by specifying a type of AXFR. When
an incremental zone transfer (IXFR) is required, set the
<em class="parameter"><code>type</code></em> to <code class="literal">ixfr=N</code>.
The incremental zone transfer will contain the changes
@@ -289,6 +290,18 @@
record was
<em class="parameter"><code>N</code></em>.
</p>
<p>
All resource record types can be expressed as "TYPEnn", where
"nn" is the number of the type. If the resource record type is
not supported in BIND 9, the result will be displayed as
described in RFC 3597.
</p>
</dd>
<dt><span class="term">-u</span></dt>
<dd>
<p>
Print query times in microseconds instead of milliseconds.
</p>
</dd>
<dt><span class="term">-v</span></dt>
<dd>
@@ -613,6 +626,14 @@
server that provided the answer.
</p>
</dd>
<dt><span class="term"><code class="option">+[no]idnin</code></span></dt>
<dd>
<p>
Process [do not process] IDN domain names on input.
This requires IDN SUPPORT to have been enabled at
compile time. The default is to process IDN input.
</p>
</dd>
<dt><span class="term"><code class="option">+[no]idnout</code></span></dt>
<dd>
<p>
@@ -805,7 +826,7 @@
<dd>
<p>
This feature is now obsolete and has been removed;
use <span class="command"><strong>delv</strong></span> instead.
use <span class="command"><strong>delv</strong></span> instead.
</p>
</dd>
<dt><span class="term"><code class="option">+split=W</code></span></dt>
@@ -872,8 +893,8 @@
<dd>
<p>
This feature is related to <span class="command"><strong>dig +sigchase</strong></span>,
which is obsolete and has been removed. Use
<span class="command"><strong>delv</strong></span> instead.
which is obsolete and has been removed. Use
<span class="command"><strong>delv</strong></span> instead.
</p>
</dd>
<dt><span class="term"><code class="option">+[no]trace</code></span></dt>
@@ -909,9 +930,9 @@
<dd>
<p>
Formerly specified trusted keys for use with
<span class="command"><strong>dig +sigchase</strong></span>. This feature is now
obsolete and has been removed; use
<span class="command"><strong>delv</strong></span> instead.
<span class="command"><strong>dig +sigchase</strong></span>. This feature is now
obsolete and has been removed; use
<span class="command"><strong>delv</strong></span> instead.
</p>
</dd>
<dt><span class="term"><code class="option">+[no]ttlid</code></span></dt>
@@ -1021,10 +1042,9 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
<span class="command"><strong>dig</strong></span> appropriately converts character encoding of
domain name before sending a request to DNS server or displaying a
reply from the server.
If you'd like to turn off the IDN support for some reason, defines
the <code class="envar">IDN_DISABLE</code> environment variable.
The IDN support is disabled if the variable is set when
<span class="command"><strong>dig</strong></span> runs.
If you'd like to turn off the IDN support for some reason, use
parameters <em class="parameter"><code>+noidnin</code></em> and
<em class="parameter"><code>+noidnout</code></em>.
</p>
</div>
@@ -1052,7 +1072,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
<span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<em class="citetitle">RFC1035</em>.
<em class="citetitle">RFC 1035</em>.
</p>
</div>
+279 -144
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2000-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file
@@ -21,18 +24,25 @@
#include <unistd.h>
#include <string.h>
#include <limits.h>
#include <errno.h>
#ifdef HAVE_LOCALE_H
#include <locale.h>
#endif
#ifdef WITH_IDN
#ifdef WITH_IDN_SUPPORT
#ifdef WITH_IDNKIT
#include <idn/result.h>
#include <idn/log.h>
#include <idn/resconf.h>
#include <idn/api.h>
#endif
#ifdef WITH_LIBIDN2
#include <idn2.h>
#endif
#endif /* WITH_IDN_SUPPORT */
#include <dns/byaddr.h>
#include <dns/fixedname.h>
#include <dns/log.h>
@@ -131,18 +141,26 @@ int lookup_counter = 0;
static char servercookie[256];
#ifdef WITH_IDN
static void initialize_idn(void);
static isc_result_t output_filter(isc_buffer_t *buffer,
unsigned int used_org,
isc_boolean_t absolute);
static idn_result_t append_textname(char *name, const char *origin,
size_t namesize);
static void idn_check_result(idn_result_t r, const char *msg);
#ifdef WITH_IDN_SUPPORT
static void idn_initialize(void);
static isc_result_t idn_locale_to_ace(const char *from,
char *to,
size_t tolen);
#endif /* WITH_IDN_SUPPORT */
#define MAXDLEN 256
int idnoptions = 0;
#ifdef WITH_IDN_OUT_SUPPORT
static isc_result_t idn_ace_to_locale(const char *from,
char *to,
size_t tolen);
static isc_result_t output_filter(isc_buffer_t *buffer,
unsigned int used_org,
isc_boolean_t absolute);
#define MAXDLEN 256
#ifdef WITH_IDNKIT
int idnoptions = 0;
#endif
#endif /* WITH_IDN_OUT_SUPPORT */
isc_socket_t *keep = NULL;
isc_sockaddr_t keepaddr;
@@ -167,7 +185,7 @@ unsigned char cookie[8];
const dns_name_t *hmacname = NULL;
unsigned int digestbits = 0;
isc_buffer_t *namebuf = NULL;
dns_tsigkey_t *key = NULL;
dns_tsigkey_t *tsigkey = NULL;
isc_boolean_t validated = ISC_TRUE;
isc_entropy_t *entp = NULL;
isc_mempool_t *commctx = NULL;
@@ -202,7 +220,7 @@ isc_result_t
isc_boolean_t headers);
void
(*dighost_received)(int bytes, isc_sockaddr_t *from, dig_query_t *query);
(*dighost_received)(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query);
void
(*dighost_trying)(char *frm, dig_lookup_t *lookup);
@@ -266,7 +284,7 @@ hex_dump(isc_buffer_t *b) {
isc_buffer_usedregion(b, &r);
printf("%d bytes\n", r.length);
printf("%u bytes\n", r.length);
for (len = 0; len < r.length; len++) {
printf("%02x ", r.base[len]);
if (len % 16 == 15) {
@@ -344,8 +362,7 @@ get_reverse(char *reverse, size_t len, char *value, isc_boolean_t ip6_int,
if (ip6_int)
options |= DNS_BYADDROPT_IPV6INT;
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
result = dns_byaddr_createptrname2(&addr, options, name);
if (result != ISC_R_SUCCESS)
return (result);
@@ -437,7 +454,7 @@ debug(const char *format, ...) {
fflush(stdout);
if (debugtiming) {
TIME_NOW(&t);
fprintf(stderr, "%d.%06d: ", isc_time_seconds(&t),
fprintf(stderr, "%u.%06u: ", isc_time_seconds(&t),
isc_time_nanoseconds(&t) / 1000);
}
va_start(args, format);
@@ -643,7 +660,12 @@ make_empty_lookup(void) {
looknew->ttlunits = ISC_FALSE;
looknew->ttlunits = ISC_FALSE;
looknew->qr = ISC_FALSE;
#ifdef WITH_IDN
#ifdef WITH_IDN_SUPPORT
looknew->idnin = ISC_TRUE;
#else
looknew->idnin = ISC_FALSE;
#endif
#ifdef WITH_IDN_OUT_SUPPORT
looknew->idnout = ISC_TRUE;
#else
looknew->idnout = ISC_FALSE;
@@ -788,6 +810,7 @@ clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
looknew->nocrypto = lookold->nocrypto;
looknew->ttlunits = lookold->ttlunits;
looknew->qr = lookold->qr;
looknew->idnin = lookold->idnin;
looknew->idnout = lookold->idnout;
looknew->udpsize = lookold->udpsize;
looknew->edns = lookold->edns;
@@ -899,13 +922,13 @@ setup_text_key(void) {
result = dns_tsigkey_create(&keyname, hmacname, secretstore,
(int)secretsize, ISC_FALSE, NULL, 0, 0,
mctx, NULL, &key);
mctx, NULL, &tsigkey);
failure:
if (result != ISC_R_SUCCESS)
printf(";; Couldn't create key %s: %s\n",
keynametext, isc_result_totext(result));
else
dst_key_setbits(key->key, digestbits);
dst_key_setbits(tsigkey->key, digestbits);
isc_mem_free(mctx, secretstore);
dns_name_invalidate(&keyname);
@@ -1192,7 +1215,7 @@ setup_file_key(void) {
}
result = dns_tsigkey_createfromkey(dst_key_name(dstkey), hmacname,
dstkey, ISC_FALSE, NULL, 0, 0,
mctx, NULL, &key);
mctx, NULL, &tsigkey);
if (result != ISC_R_SUCCESS) {
printf(";; Couldn't create key %s: %s\n",
keynametext, isc_result_totext(result));
@@ -1291,8 +1314,19 @@ setup_system(isc_boolean_t ipv4only, isc_boolean_t ipv6only) {
irs_resconf_destroy(&resconf);
#ifdef WITH_IDN
initialize_idn();
#ifdef HAVE_SETLOCALE
/* Set locale */
(void)setlocale(LC_ALL, "");
#endif
#ifdef WITH_IDN_SUPPORT
idn_initialize();
#endif
#ifdef WITH_IDN_OUT_SUPPORT
/* Set domain name -> text post-conversion filter. */
result = dns_name_settotextfilter(output_filter);
check_result(result, "dns_name_settotextfilter");
#endif
if (keyfile[0] != 0)
@@ -1907,8 +1941,7 @@ next_origin(dig_lookup_t *oldlookup) {
/*
* Check for a absolute name or ndots being met.
*/
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
result = dns_name_fromstring2(name, oldlookup->textname, NULL,
0, NULL);
if (result == ISC_R_SUCCESS &&
@@ -2023,12 +2056,13 @@ setup_lookup(dig_lookup_t *lookup) {
char store[MXNAME];
char ecsbuf[20];
char cookiebuf[256];
#ifdef WITH_IDN
idn_result_t mr;
char utf8_textname[MXNAME], utf8_origin[MXNAME], idn_textname[MXNAME];
char *origin = NULL;
char *textname = NULL;
#ifdef WITH_IDN_SUPPORT
char idn_origin[MXNAME], idn_textname[MXNAME];
#endif
#ifdef WITH_IDN
#ifdef WITH_IDN_OUT_SUPPORT
result = dns_name_settotextfilter(lookup->idnout ?
output_filter : NULL);
check_result(result, "dns_name_settotextfilter");
@@ -2061,15 +2095,19 @@ setup_lookup(dig_lookup_t *lookup) {
isc_buffer_init(&lookup->onamebuf, lookup->oname_space,
sizeof(lookup->oname_space));
#ifdef WITH_IDN
/*
* We cannot convert `textname' and `origin' separately.
* `textname' doesn't contain TLD, but local mapping needs
* TLD.
*/
mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, lookup->textname,
utf8_textname, sizeof(utf8_textname));
idn_check_result(mr, "convert textname to UTF-8");
textname = lookup->textname;
#ifdef WITH_IDN_SUPPORT
if (lookup->idnin) {
result = idn_locale_to_ace(textname, idn_textname, sizeof(idn_textname));
check_result(result, "convert textname to IDN encoding");
debug("idn_textname: %s", idn_textname);
textname = idn_textname;
}
#endif
/*
@@ -2080,8 +2118,8 @@ setup_lookup(dig_lookup_t *lookup) {
* is TRUE or we got a domain line in the resolv.conf file.
*/
if (lookup->new_search) {
#ifdef WITH_IDN
if ((count_dots(utf8_textname) >= ndots) || !usesearch) {
if ((count_dots(textname) >= ndots) || !usesearch)
{
lookup->origin = NULL; /* Force abs lookup */
lookup->done_as_is = ISC_TRUE;
lookup->need_search = usesearch;
@@ -2089,33 +2127,8 @@ setup_lookup(dig_lookup_t *lookup) {
lookup->origin = ISC_LIST_HEAD(search_list);
lookup->need_search = ISC_FALSE;
}
#else
if ((count_dots(lookup->textname) >= ndots) || !usesearch) {
lookup->origin = NULL; /* Force abs lookup */
lookup->done_as_is = ISC_TRUE;
lookup->need_search = usesearch;
} else if (lookup->origin == NULL && usesearch) {
lookup->origin = ISC_LIST_HEAD(search_list);
lookup->need_search = ISC_FALSE;
}
#endif
}
#ifdef WITH_IDN
if (lookup->origin != NULL) {
mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP,
lookup->origin->origin, utf8_origin,
sizeof(utf8_origin));
idn_check_result(mr, "convert origin to UTF-8");
mr = append_textname(utf8_textname, utf8_origin,
sizeof(utf8_textname));
idn_check_result(mr, "append origin to textname");
}
mr = idn_encodename(idnoptions | IDN_LOCALMAP | IDN_NAMEPREP |
IDN_IDNCONV | IDN_LENCHECK, utf8_textname,
idn_textname, sizeof(idn_textname));
idn_check_result(mr, "convert UTF-8 textname to IDN encoding");
#else
if (lookup->origin != NULL) {
debug("trying origin %s", lookup->origin->origin);
result = dns_message_gettempname(lookup->sendmsg,
@@ -2123,8 +2136,17 @@ setup_lookup(dig_lookup_t *lookup) {
check_result(result, "dns_message_gettempname");
dns_name_init(lookup->oname, NULL);
/* XXX Helper funct to conv char* to name? */
len = (unsigned int) strlen(lookup->origin->origin);
isc_buffer_init(&b, lookup->origin->origin, len);
origin = lookup->origin->origin;
#ifdef WITH_IDN_SUPPORT
if (lookup->idnin) {
result = idn_locale_to_ace(origin, idn_origin, sizeof(idn_origin));
check_result(result, "convert origin to IDN encoding");
debug("trying idn origin %s", idn_origin);
origin = idn_origin;
}
#endif
len = (unsigned int) strlen(origin);
isc_buffer_init(&b, origin, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->oname, &b, dns_rootname,
0, &lookup->onamebuf);
@@ -2134,7 +2156,7 @@ setup_lookup(dig_lookup_t *lookup) {
dns_message_puttempname(lookup->sendmsg,
&lookup->oname);
fatal("'%s' is not in legal name syntax (%s)",
lookup->origin->origin,
origin,
isc_result_totext(result));
}
if (lookup->trace && lookup->trace_root) {
@@ -2143,10 +2165,9 @@ setup_lookup(dig_lookup_t *lookup) {
dns_fixedname_t fixed;
dns_name_t *name;
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
len = (unsigned int) strlen(lookup->textname);
isc_buffer_init(&b, lookup->textname, len);
name = dns_fixedname_initname(&fixed);
len = (unsigned int) strlen(textname);
isc_buffer_init(&b, textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(name, &b, NULL, 0, NULL);
if (result == ISC_R_SUCCESS &&
@@ -2171,28 +2192,17 @@ setup_lookup(dig_lookup_t *lookup) {
}
}
dns_message_puttempname(lookup->sendmsg, &lookup->oname);
} else
#endif
{
} else {
debug("using root origin");
if (lookup->trace && lookup->trace_root)
dns_name_clone(dns_rootname, lookup->name);
else {
#ifdef WITH_IDN
len = (unsigned int) strlen(idn_textname);
isc_buffer_init(&b, idn_textname, len);
len = (unsigned int) strlen(textname);
isc_buffer_init(&b, textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->name, &b,
dns_rootname, 0,
&lookup->namebuf);
#else
len = (unsigned int) strlen(lookup->textname);
isc_buffer_init(&b, lookup->textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->name, &b,
dns_rootname, 0,
&lookup->namebuf);
#endif
}
if (result != ISC_R_SUCCESS) {
dns_message_puttempname(lookup->sendmsg,
@@ -2283,9 +2293,9 @@ setup_lookup(dig_lookup_t *lookup) {
/* XXX Insist this? */
lookup->tsigctx = NULL;
lookup->querysig = NULL;
if (key != NULL) {
if (tsigkey != NULL) {
debug("initializing keys");
result = dns_message_settsigkey(lookup->sendmsg, key);
result = dns_message_settsigkey(lookup->sendmsg, tsigkey);
check_result(result, "dns_message_settsigkey");
}
@@ -3642,7 +3652,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
result = dns_message_create(mctx, DNS_MESSAGE_INTENTPARSE, &msg);
check_result(result, "dns_message_create");
if (key != NULL) {
if (tsigkey != NULL) {
if (l->querysig == NULL) {
debug("getting initial querysig");
result = dns_message_getquerytsig(l->sendmsg, mctx,
@@ -3651,7 +3661,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
}
result = dns_message_setquerytsig(msg, l->querysig);
check_result(result, "dns_message_setquerytsig");
result = dns_message_settsigkey(msg, key);
result = dns_message_settsigkey(msg, tsigkey);
check_result(result, "dns_message_settsigkey");
msg->tsigctx = l->tsigctx;
l->tsigctx = NULL;
@@ -3738,7 +3748,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
*/
if (l->comments)
printf(";; BADVERS, retrying with EDNS version %u.\n",
newedns);
(unsigned int)newedns);
l->edns = newedns;
n = requeue_lookup(l, ISC_TRUE);
if (l->trace && l->trace_root)
@@ -3827,7 +3837,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
}
}
if (key != NULL) {
if (tsigkey != NULL) {
result = dns_tsig_verify(&query->recvbuf, msg, NULL, NULL);
if (result != ISC_R_SUCCESS) {
printf(";; Couldn't verify signature: %s\n",
@@ -4142,7 +4152,7 @@ cancel_all(void) {
*/
void
destroy_libs(void) {
#ifdef WITH_IDN
#ifdef WITH_IDN_SUPPORT
isc_result_t result;
#endif
@@ -4176,7 +4186,7 @@ destroy_libs(void) {
clear_searchlist();
#ifdef WITH_IDN
#ifdef WITH_IDN_SUPPORT
result = dns_name_settotextfilter(NULL);
check_result(result, "dns_name_settotextfilter");
#endif
@@ -4194,9 +4204,9 @@ destroy_libs(void) {
debug("freeing timermgr");
isc_timermgr_destroy(&timermgr);
}
if (key != NULL) {
debug("freeing key %p", key);
dns_tsigkey_detach(&key);
if (tsigkey != NULL) {
debug("freeing key %p", tsigkey);
dns_tsigkey_detach(&tsigkey);
}
if (namebuf != NULL)
isc_buffer_free(&namebuf);
@@ -4223,27 +4233,7 @@ destroy_libs(void) {
isc_mem_destroy(&mctx);
}
#ifdef WITH_IDN
static void
initialize_idn(void) {
idn_result_t r;
isc_result_t result;
#ifdef HAVE_SETLOCALE
/* Set locale */
(void)setlocale(LC_ALL, "");
#endif
/* Create configuration context. */
r = idn_nameinit(1);
if (r != idn_success)
fatal("idn api initialization failed: %s",
idn_result_tostring(r));
/* Set domain name -> text post-conversion filter. */
result = dns_name_settotextfilter(output_filter);
check_result(result, "dns_name_settotextfilter");
}
#ifdef WITH_IDN_OUT_SUPPORT
static isc_result_t
output_filter(isc_buffer_t *buffer, unsigned int used_org,
isc_boolean_t absolute)
@@ -4251,6 +4241,7 @@ output_filter(isc_buffer_t *buffer, unsigned int used_org,
char tmp1[MAXDLEN], tmp2[MAXDLEN];
size_t fromlen, tolen;
isc_boolean_t end_with_dot;
isc_result_t result;
/*
* Copy contents of 'buffer' to 'tmp1', supply trailing dot
@@ -4259,6 +4250,7 @@ output_filter(isc_buffer_t *buffer, unsigned int used_org,
fromlen = isc_buffer_usedlength(buffer) - used_org;
if (fromlen >= MAXDLEN)
return (ISC_R_SUCCESS);
memmove(tmp1, (char *)isc_buffer_base(buffer) + used_org, fromlen);
end_with_dot = (tmp1[fromlen - 1] == '.') ? ISC_TRUE : ISC_FALSE;
if (absolute && !end_with_dot) {
@@ -4267,58 +4259,201 @@ output_filter(isc_buffer_t *buffer, unsigned int used_org,
return (ISC_R_SUCCESS);
tmp1[fromlen - 1] = '.';
}
tmp1[fromlen] = '\0';
/*
* Convert contents of 'tmp1' to local encoding.
*/
if (idn_decodename(IDN_DECODE_APP, tmp1, tmp2, MAXDLEN) != idn_success)
result = idn_ace_to_locale(tmp1, tmp2, sizeof(tmp2));
if (result != ISC_R_SUCCESS) {
return (ISC_R_SUCCESS);
strlcpy(tmp1, tmp2, MAXDLEN);
}
/*
* Copy the converted contents in 'tmp1' back to 'buffer'.
* If we have appended trailing dot, remove it.
*/
tolen = strlen(tmp1);
if (absolute && !end_with_dot && tmp1[tolen - 1] == '.')
tolen = strlen(tmp2);
if (absolute && !end_with_dot && tmp2[tolen - 1] == '.')
tolen--;
if (isc_buffer_length(buffer) < used_org + tolen)
return (ISC_R_NOSPACE);
isc_buffer_subtract(buffer, isc_buffer_usedlength(buffer) - used_org);
memmove(isc_buffer_used(buffer), tmp1, tolen);
memmove(isc_buffer_used(buffer), tmp2, tolen);
isc_buffer_add(buffer, (unsigned int)tolen);
return (ISC_R_SUCCESS);
}
#endif
static idn_result_t
append_textname(char *name, const char *origin, size_t namesize) {
size_t namelen = strlen(name);
size_t originlen = strlen(origin);
/* Already absolute? */
if (namelen > 0 && name[namelen - 1] == '.')
return (idn_success);
/* Append dot and origin */
if (namelen + 1 + originlen >= namesize)
return (idn_buffer_overflow);
if (*origin != '.')
name[namelen++] = '.';
(void)strlcpy(name + namelen, origin, namesize - namelen);
return (idn_success);
#ifdef WITH_IDN_SUPPORT
#ifdef WITH_IDNKIT
static void
idnkit_check_result(idn_result_t result, const char *msg) {
if (result != idn_success) {
fatal("%s: %s", msg, idn_result_tostring(result));
}
}
static void
idn_check_result(idn_result_t r, const char *msg) {
if (r != idn_success) {
exitcode = 1;
fatal("%s: %s", msg, idn_result_tostring(r));
}
idn_initialize(void) {
idn_result_t result;
/* Create configuration context. */
result = idn_nameinit(1);
idnkit_check_result(result, "idnkit api initialization failed");
return (ISC_R_SUCCESS);
}
#endif /* WITH_IDN */
static isc_result_t
idn_locale_to_ace(const char *from, char *to, size_t tolen) {
char utf8_textname[MXNAME];
idn_result_t result;
result = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, from,
utf8_textname, sizeof(utf8_textname));
idnkit_check_result(result, "idnkit idn_encodename to utf8 failed");
result = idn_encodename(idnoptions | IDN_LOCALMAP | IDN_NAMEPREP |
IDN_IDNCONV | IDN_LENCHECK,
utf8_textname, to, tolen);
idnkit_check_result(result, "idnkit idn_encodename to idn failed");
return (ISC_R_SUCCESS);
}
static isc_result_t
idn_ace_to_locale(const char *from, char *to, size_t tolen) {
idn_result_t result;
result = idn_decodename(IDN_DECODE_APP, from, to, tolen);
if (result != idn_success) {
debug("idnkit idn_decodename failed: %s",
idn_result_tostring(result));
return (ISC_R_FAILURE);
}
return (ISC_R_SUCCESS);
}
#endif /* WITH_IDNKIT */
#ifdef WITH_LIBIDN2
static void
idn_initialize(void) {
}
static isc_result_t
idn_locale_to_ace(const char *from, char *to, size_t tolen) {
int res;
char *tmp_str = NULL;
res = idn2_to_ascii_lz(from, &tmp_str, IDN2_NONTRANSITIONAL|IDN2_NFC_INPUT);
if (res == IDN2_DISALLOWED) {
res = idn2_to_ascii_lz(from, &tmp_str, IDN2_TRANSITIONAL|IDN2_NFC_INPUT);
}
if (res == IDN2_OK) {
/*
* idn2_to_ascii_lz() normalizes all strings to lowerl case,
* but we generally don't want to lowercase all input strings;
* make sure to return the original case if the two strings
* differ only in case
*/
if (!strcasecmp(from, tmp_str)) {
if (strlen(from) >= tolen) {
debug("from string is too long");
idn2_free(tmp_str);
return ISC_R_NOSPACE;
}
idn2_free(tmp_str);
(void) strlcpy(to, from, tolen);
return ISC_R_SUCCESS;
}
/* check the length */
if (strlen(tmp_str) >= tolen) {
debug("ACE string is too long");
idn2_free(tmp_str);
return ISC_R_NOSPACE;
}
(void) strlcpy(to, tmp_str, tolen);
idn2_free(tmp_str);
return ISC_R_SUCCESS;
}
fatal("'%s' is not a legal IDN name (%s), use +noidnin", from, idn2_strerror(res));
return ISC_R_FAILURE;
}
#ifdef WITH_IDN_OUT_SUPPORT
static isc_result_t
idn_ace_to_locale(const char *from, char *to, size_t tolen) {
int res;
char *utf8_src, *tmp_str = NULL;
/*
* We need to:
*
* 1) check whether 'from' is a valid IDNA2008 name,
* 2) if it is, output it in the current locale's character encoding.
*
* Unlike idn2_to_ascii_*(), idn2_to_unicode_*() functions are unable
* to perform IDNA2008 validity checks. Thus, we need to decode any
* Punycode in 'from', check if the resulting name is a valid IDNA2008
* name, and only once we ensure it is, output that name in the current
* locale's character encoding.
*
* We could just use idn2_to_unicode_8zlz() + idn2_to_ascii_lz(), but
* then we would not be able to universally tell invalid names and
* character encoding errors apart (if the current locale uses ASCII
* for character encoding, the former function would fail even for a
* valid IDNA2008 name, as long as it contained any non-ASCII
* character). Thus, we need to take a longer route.
*
* First, convert 'from' to UTF-8, ignoring the current locale.
*/
res = idn2_to_unicode_8z8z(from, &utf8_src, 0);
if (res != IDN2_OK) {
fatal("Bad ACE string '%s' (%s), use +noidnout",
from, idn2_strerror(res));
}
/*
* Then, check whether decoded 'from' is a valid IDNA2008 name.
*/
res = idn2_to_ascii_8z(utf8_src, NULL, IDN2_NONTRANSITIONAL);
if (res != IDN2_OK) {
fatal("'%s' is not a legal IDNA2008 name (%s), use +noidnout",
from, idn2_strerror(res));
}
/*
* Finally, try converting the decoded 'from' into the current locale's
* character encoding.
*/
res = idn2_to_unicode_8zlz(utf8_src, &tmp_str, 0);
if (res != IDN2_OK) {
fatal("Cannot represent '%s' in the current locale (%s), "
"use +noidnout or a different locale",
from, idn2_strerror(res));
}
/*
* Free the interim conversion result.
*/
idn2_free(utf8_src);
/* check the length */
if (strlen(tmp_str) >= tolen) {
debug("encoded ASC string is too long");
idn2_free(tmp_str);
return (ISC_R_FAILURE);
}
(void) strlcpy(to, tmp_str, tolen);
idn2_free(tmp_str);
return (ISC_R_SUCCESS);
}
#endif /* WITH_IDN_OUT_SUPPORT */
#endif /* WITH_LIBIDN2 */
#endif /* WITH_IDN_SUPPORT */
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -274,5 +274,5 @@ runs\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2002, 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2002, 2004, 2005, 2007-2009, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+11 -9
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2000-2007, 2009-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -16,7 +19,7 @@
#include <locale.h>
#endif
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
#include <idn/result.h>
#include <idn/log.h>
#include <idn/resconf.h>
@@ -169,7 +172,7 @@ host_shutdown(void) {
}
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
isc_time_t now;
int diff;
@@ -456,8 +459,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
dns_name_t *name;
/* Add AAAA and MX lookups. */
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
dns_name_copy(query->lookup->name, name, NULL);
chase_cnamechain(msg, name);
dns_name_format(name, namestr, sizeof(namestr));
@@ -718,7 +720,7 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
lookup->rdtype != dns_rdatatype_axfr)
lookup->rdtype = rdtype;
lookup->rdtypeset = ISC_TRUE;
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
idnoptions = 0;
#endif
if (rdtype == dns_rdatatype_axfr) {
@@ -733,7 +735,7 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
} else if (rdtype == dns_rdatatype_any) {
if (!lookup->tcp_mode_set)
lookup->tcp_mode = ISC_TRUE;
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
} else if (rdtype == dns_rdatatype_a ||
rdtype == dns_rdatatype_aaaa ||
rdtype == dns_rdatatype_mx) {
@@ -768,7 +770,7 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
if (!lookup->rdtypeset ||
lookup->rdtype != dns_rdatatype_axfr)
lookup->rdtype = dns_rdatatype_any;
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
idnoptions = 0;
#endif
list_type = dns_rdatatype_any;
@@ -882,7 +884,7 @@ main(int argc, char **argv) {
ISC_LIST_INIT(search_list);
fatalexit = 1;
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
idnoptions = IDN_ASCCHECK;
#endif
+5 -1
View File
@@ -1,11 +1,14 @@
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -43,6 +46,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+8 -4
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2000-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
#ifndef DIG_H
@@ -126,6 +129,7 @@ struct dig_lookup {
use_usec,
nocrypto,
ttlunits,
idnin,
idnout,
qr;
char textname[MXNAME]; /*% Name we're going to be looking up */
@@ -253,7 +257,7 @@ extern char keyfile[MXNAME];
extern char keysecret[MXNAME];
extern const dns_name_t *hmacname;
extern unsigned int digestbits;
extern dns_tsigkey_t *key;
extern dns_tsigkey_t *tsigkey;
extern isc_boolean_t validated;
extern isc_taskmgr_t *taskmgr;
extern isc_task_t *global_task;
@@ -265,7 +269,7 @@ extern char *progname;
extern int tries;
extern int fatalexit;
extern isc_boolean_t verbose;
#ifdef WITH_IDN
#ifdef WITH_IDNKIT
extern int idnoptions;
#endif
@@ -382,7 +386,7 @@ extern isc_result_t
*/
extern void
(*dighost_received)(int bytes, isc_sockaddr_t *from, dig_query_t *query);
(*dighost_received)(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query);
/*%<
* Print a message about where and when the response
* was received from, like the final comment in the
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2004-2007, 2010, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004-2007, 2010, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -290,5 +290,5 @@ returns with an exit status of 1 if any query failed, and 0 otherwise\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2004-2007, 2010, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2004-2007, 2010, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+18 -16
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2000-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
#include <config.h>
@@ -387,7 +390,7 @@ detailsection(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers,
}
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query)
received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query)
{
UNUSED(bytes);
UNUSED(from);
@@ -472,8 +475,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
dns_name_t *name;
/* Add AAAA lookup. */
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
dns_name_copy(query->lookup->name, name, NULL);
chase_cnamechain(msg, name);
dns_name_format(name, namestr, sizeof(namestr));
@@ -549,7 +551,7 @@ show_settings(isc_boolean_t full, isc_boolean_t serv_only) {
printf(" %s\t\t%s\n",
usesearch ? "search" : "nosearch",
recurse ? "recurse" : "norecurse");
printf(" timeout = %d\t\tretry = %d\tport = %d\tndots = %d\n",
printf(" timeout = %u\t\tretry = %d\tport = %u\tndots = %d\n",
timeout, tries, port, ndots);
printf(" querytype = %-8s\tclass = %s\n", deftype, defclass);
printf(" srchlist = ");
@@ -707,31 +709,31 @@ setoption(char *opt) {
usesearch = ISC_TRUE;
} else if (CHECKOPT("nodefname", 5)) {
usesearch = ISC_FALSE;
} else if (CHECKOPT("vc", 2) == 0) {
} else if (CHECKOPT("vc", 2)) {
tcpmode = ISC_TRUE;
tcpmode_set = ISC_TRUE;
} else if (CHECKOPT("novc", 4) == 0) {
} else if (CHECKOPT("novc", 4)) {
tcpmode = ISC_FALSE;
tcpmode_set = ISC_TRUE;
} else if (CHECKOPT("debug", 3) == 0) {
} else if (CHECKOPT("debug", 3)) {
short_form = ISC_FALSE;
showsearch = ISC_TRUE;
} else if (CHECKOPT("nodebug", 5) == 0) {
} else if (CHECKOPT("nodebug", 5)) {
short_form = ISC_TRUE;
showsearch = ISC_FALSE;
} else if (CHECKOPT("d2", 2) == 0) {
} else if (CHECKOPT("d2", 2)) {
debugging = ISC_TRUE;
} else if (CHECKOPT("nod2", 4) == 0) {
} else if (CHECKOPT("nod2", 4)) {
debugging = ISC_FALSE;
} else if (CHECKOPT("search", 3) == 0) {
} else if (CHECKOPT("search", 3)) {
usesearch = ISC_TRUE;
} else if (CHECKOPT("nosearch", 5) == 0) {
} else if (CHECKOPT("nosearch", 5)) {
usesearch = ISC_FALSE;
} else if (CHECKOPT("sil", 3) == 0) {
} else if (CHECKOPT("sil", 3)) {
/* deprecation_msg = ISC_FALSE; */
} else if (CHECKOPT("fail", 3) == 0) {
} else if (CHECKOPT("fail", 3)) {
nofail=ISC_FALSE;
} else if (CHECKOPT("nofail", 5) == 0) {
} else if (CHECKOPT("nofail", 5)) {
nofail=ISC_TRUE;
} else if (strncasecmp(opt, "ndots=", 6) == 0) {
set_ndots(&opt[6]);
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2004-2007, 2010, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!--
@@ -67,6 +70,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004-2007, 2010, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007, 2010, 2013-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+4 -1
View File
@@ -1,8 +1,11 @@
# Copyright (C) 2000-2002, 2004, 2005, 2007-2009, 2012-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
srcdir = @srcdir@
VPATH = @srcdir@
+8 -3
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2017, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -44,7 +44,8 @@ dnssec-cds \- change DS records for a child zone based on CDS/CDNSKEY
.PP
The
\fBdnssec\-cds\fR
command changes DS records at a delegation point based on CDS or CDNSKEY records published in the child zone\&. If both CDS and CDNSKEY records are present in the child zone, the CDS is preferred\&.
command changes DS records at a delegation point based on CDS or CDNSKEY records published in the child zone\&. If both CDS and CDNSKEY records are present in the child zone, the CDS is preferred\&. This enables a child zone to inform its parent of upcoming changes to its key\-signing keys; by polling periodically with
\fBdnssec\-cds\fR, the parent can keep the DS records up to date and enable automatic rolling of KSKs\&.
.PP
Two input files are required\&. The
\fB\-f \fR\fB\fIchild\-file\fR\fR
@@ -57,6 +58,10 @@ file generated by
\fBdnssec\-dsfromkey\fR, or the output of a previous run of
\fBdnssec\-cds\fR\&.
.PP
The
\fBdnssec\-cds\fR
command uses special DNSSEC validation logic specified by RFC 7344\&. It requires that the CDS and/or CDNSKEY records are validly signed by a key represented in the existing DS records\&. This will typicially be the pre\-existing key\-signing key (KSK)\&.
.PP
For protection against replay attacks, the signatures on the child records must not be older than they were on a previous run of
\fBdnssec\-cds\fR\&. This time is obtained from the modification time of the
dsset\-
@@ -288,5 +293,5 @@ RFC 7344\&.
.RE
.SH "COPYRIGHT"
.br
Copyright \(co 2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2017, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+23 -6
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*
@@ -85,7 +88,7 @@ static dns_rdataclass_t rdclass = dns_rdataclass_in;
*/
static isc_uint8_t dtype[8];
static const char *startstr = NULL; /* from which we derive notbefore */
static const char *startstr = NULL; /* from which we derive notbefore */
static isc_stdtime_t notbefore = 0; /* restrict sig inception times */
static dns_rdata_rrsig_t oldestsig; /* for recording inception time */
@@ -170,8 +173,7 @@ initname(char *setname) {
isc_result_t result;
isc_buffer_t buf;
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
namestr = setname;
isc_buffer_init(&buf, setname, strlen(setname));
@@ -521,6 +523,13 @@ match_key_dsset(keyinfo_t *ki, dns_rdataset_t *dsset, strictness_t strictness)
}
}
vbprintf(1, "no matching %s for %s %d %d\n",
dsset->type == dns_rdatatype_cds
? "CDS" : "DS",
ki->rdata.type == dns_rdatatype_cdnskey
? "CDNSKEY" : "DNSKEY",
ki->tag, ki->algo);
return (ISC_FALSE);
}
@@ -647,17 +656,25 @@ matching_sigs(keyinfo_t *keytbl, dns_rdataset_t *rdataset,
for (i = 0; i < nkey; i++) {
keyinfo_t *ki = &keytbl[i];
if (ki->dst == NULL ||
sig.keyid != ki->tag ||
if (sig.keyid != ki->tag ||
sig.algorithm != ki->algo ||
!dns_name_equal(&sig.signer, name))
{
continue;
}
if (ki->dst == NULL) {
vbprintf(1, "skip RRSIG by key %d:"
" no matching (C)DS\n",
sig.keyid);
continue;
}
result = dns_dnssec_verify(name, rdataset, ki->dst,
ISC_FALSE, mctx, &sigrdata);
if (result != ISC_R_SUCCESS) {
vbprintf(1, "skip RRSIG by key %d:"
" verification failed: %s\n",
sig.keyid, isc_result_totext(result));
continue;
}
+17 -2
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-cds">
@@ -36,6 +39,7 @@
<docinfo>
<copyright>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
@@ -64,7 +68,11 @@
The <command>dnssec-cds</command> command changes DS records at
a delegation point based on CDS or CDNSKEY records published in
the child zone. If both CDS and CDNSKEY records are present in
the child zone, the CDS is preferred.
the child zone, the CDS is preferred. This enables a child zone
to inform its parent of upcoming changes to its key-signing keys;
by polling periodically with <command>dnssec-cds</command>, the
parent can keep the DS records up to date and enable automatic
rolling of KSKs.
</para>
<para>
Two input files are required. The
@@ -79,6 +87,13 @@
<command>dnssec-dsfromkey</command>, or the output of a previous
run of <command>dnssec-cds</command>.
</para>
<para>
The <command>dnssec-cds</command> command uses special DNSSEC
validation logic specified by RFC 7344. It requires that the CDS
and/or CDNSKEY records are validly signed by a key represented in the
existing DS records. This will typicially be the pre-existing
key-signing key (KSK).
</para>
<para>
For protection against replay attacks, the signatures on the
child records must not be older than they were on a previous run
+13 -2
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2017, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -55,7 +55,11 @@
The <span class="command"><strong>dnssec-cds</strong></span> command changes DS records at
a delegation point based on CDS or CDNSKEY records published in
the child zone. If both CDS and CDNSKEY records are present in
the child zone, the CDS is preferred.
the child zone, the CDS is preferred. This enables a child zone
to inform its parent of upcoming changes to its key-signing keys;
by polling periodically with <span class="command"><strong>dnssec-cds</strong></span>, the
parent can keep the DS records up to date and enable automatic
rolling of KSKs.
</p>
<p>
Two input files are required. The
@@ -70,6 +74,13 @@
<span class="command"><strong>dnssec-dsfromkey</strong></span>, or the output of a previous
run of <span class="command"><strong>dnssec-cds</strong></span>.
</p>
<p>
The <span class="command"><strong>dnssec-cds</strong></span> command uses special DNSSEC
validation logic specified by RFC 7344. It requires that the CDS
and/or CDNSKEY records are validly signed by a key represented in the
existing DS records. This will typicially be the pre-existing
key-signing key (KSK).
</p>
<p>
For protection against replay attacks, the signatures on the
child records must not be older than they were on a previous run
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2008-2012, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -178,5 +178,5 @@ RFC 4509\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2008-2012, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+6 -5
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -64,8 +67,7 @@ initname(char *setname) {
isc_result_t result;
isc_buffer_t buf;
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
isc_buffer_init(&buf, setname, strlen(setname));
isc_buffer_add(&buf, strlen(setname));
@@ -203,8 +205,7 @@ loadkey(char *filename, unsigned char *key_buf, unsigned int key_buf_size,
rdclass = dst_key_class(key);
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
result = dns_name_copy(dst_key_name(key), name, NULL);
if (result != ISC_R_SUCCESS)
fatal("can't copy name");
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -37,6 +40,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2013-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -134,5 +134,5 @@ RFC 5011\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2013-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2013-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+6 -5
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2013-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -69,8 +72,7 @@ initname(char *setname) {
isc_result_t result;
isc_buffer_t buf;
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
isc_buffer_init(&buf, setname, strlen(setname));
isc_buffer_add(&buf, strlen(setname));
@@ -178,8 +180,7 @@ loadkey(char *filename, unsigned char *key_buf, unsigned int key_buf_size,
rdclass = dst_key_class(key);
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
result = dns_name_copy(dst_key_name(key), name, NULL);
if (result != ISC_R_SUCCESS)
fatal("can't copy name");
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -34,6 +37,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2013-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2008-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -307,5 +307,5 @@ The PKCS#11 URI Scheme (draft\-pechanec\-pkcs11uri\-13)\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2008-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+12 -5
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -362,8 +365,7 @@ main(int argc, char **argv) {
if (argc > isc_commandline_index + 1)
fatal("extraneous arguments");
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
isc_buffer_init(&buf, argv[isc_commandline_index],
strlen(argv[isc_commandline_index]));
isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
@@ -609,8 +611,13 @@ main(int argc, char **argv) {
isc_buffer_init(&buf, filename, sizeof(filename) - 1);
/* associate the key */
ret = dst_key_fromlabel(name, alg, flags, protocol,
rdclass, "pkcs11", label, NULL, mctx, &key);
ret = dst_key_fromlabel(name, alg, flags, protocol, rdclass,
#ifdef PKCS11CRYPTO
"pkcs11",
#else
engine,
#endif
label, NULL, mctx, &key);
isc_entropy_stopcallbacksources(ectx);
if (ret != ISC_R_SUCCESS) {
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -39,6 +42,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2005, 2007-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -369,5 +369,5 @@ RFC 4034\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2005, 2007-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+6 -4
View File
@@ -1,11 +1,14 @@
/*
* Portions Copyright (C) 1999-2017 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*
* Portions Copyright (C) Network Associates, Inc.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -519,8 +522,7 @@ main(int argc, char **argv) {
if (argc > isc_commandline_index + 1)
fatal("extraneous arguments");
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
isc_buffer_init(&buf, argv[isc_commandline_index],
strlen(argv[isc_commandline_index]));
isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2000-2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -46,6 +49,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2005, 2007-2012, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009, 2011, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -99,5 +99,5 @@ RFC 5011\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2009, 2011, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -1
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2009-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -34,6 +37,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2011, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009-2011, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -200,5 +200,5 @@ RFC 5011\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2009-2011, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+4 -1
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2009-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -36,6 +39,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009-2011, 2014-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2000-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2009, 2011-2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -484,5 +484,5 @@ RFC 4641\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2000-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2000-2009, 2011-2018 Internet Systems Consortium, Inc. ("ISC")
.br
+70 -52
View File
@@ -1,11 +1,14 @@
/*
* Portions Copyright (C) 1999-2017 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*
* Portions Copyright (C) Network Associates, Inc.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -188,6 +191,19 @@ static dns_ttl_t maxttl = 0;
static void
sign(isc_task_t *task, isc_event_t *event);
/*%
* Store a copy of 'name' in 'fzonecut' and return a pointer to that copy.
*/
static dns_name_t *
savezonecut(dns_fixedname_t *fzonecut, dns_name_t *name) {
dns_name_t *result;
result = dns_fixedname_initname(fzonecut);
dns_name_copy(name, result, NULL);
return (result);
}
static void
dumpnode(dns_name_t *name, dns_dbnode_t *node) {
dns_rdataset_t rds;
@@ -846,8 +862,7 @@ addnowildcardhash(hashlist_t *l, /*const*/ dns_name_t *name,
isc_result_t result;
char namestr[DNS_NAME_FORMATSIZE];
dns_fixedname_init(&fixed);
wild = dns_fixedname_name(&fixed);
wild = dns_fixedname_initname(&fixed);
result = dns_name_concatenate(dns_wildcardname, name, wild, NULL);
if (result == ISC_R_NOSPACE)
@@ -1233,8 +1248,7 @@ get_soa_ttls(void) {
isc_result_t result;
dns_rdata_t rdata = DNS_RDATA_INIT;
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
dns_rdataset_init(&soaset);
result = dns_db_find(gdb, gorigin, gversion, dns_rdatatype_soa,
0, 0, NULL, name, &soaset, NULL);
@@ -1403,8 +1417,7 @@ signapex(void) {
dns_name_t *name;
isc_result_t result;
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
result = dns_dbiterator_seek(gdbiter, gorigin);
check_result(result, "dns_dbiterator_seek()");
result = dns_dbiterator_current(gdbiter, &node, name);
@@ -1454,8 +1467,7 @@ assignwork(isc_task_t *task, isc_task_t *worker) {
fname = isc_mem_get(mctx, sizeof(dns_fixedname_t));
if (fname == NULL)
fatal("out of memory");
dns_fixedname_init(fname);
name = dns_fixedname_name(fname);
name = dns_fixedname_initname(fname);
node = NULL;
found = ISC_FALSE;
while (!found) {
@@ -1488,15 +1500,19 @@ assignwork(isc_task_t *task, isc_task_t *worker) {
if (dns_name_issubdomain(name, gorigin) &&
(zonecut == NULL ||
!dns_name_issubdomain(name, zonecut))) {
if (is_delegation(gdb, gversion, gorigin, name, node, NULL)) {
dns_fixedname_init(&fzonecut);
zonecut = dns_fixedname_name(&fzonecut);
dns_name_copy(name, zonecut, NULL);
if (is_delegation(gdb, gversion, gorigin,
name, node, NULL))
{
zonecut = savezonecut(&fzonecut, name);
if (!OPTOUT(nsec3flags) ||
secure(name, node))
found = ISC_TRUE;
} else
} else if (has_dname(gdb, gversion, node)) {
zonecut = savezonecut(&fzonecut, name);
found = ISC_TRUE;
} else {
found = ISC_TRUE;
}
}
}
@@ -1733,11 +1749,8 @@ nsecify(void) {
isc_uint32_t nsttl = 0;
dns_rdataset_init(&rdataset);
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
dns_fixedname_init(&fnextname);
nextname = dns_fixedname_name(&fnextname);
dns_fixedname_init(&fzonecut);
name = dns_fixedname_initname(&fname);
nextname = dns_fixedname_initname(&fnextname);
zonecut = NULL;
/*
@@ -1799,11 +1812,12 @@ nsecify(void) {
}
if (is_delegation(gdb, gversion, gorigin, name, node, &nsttl)) {
zonecut = dns_fixedname_name(&fzonecut);
dns_name_copy(name, zonecut, NULL);
zonecut = savezonecut(&fzonecut, name);
remove_sigs(node, ISC_TRUE, 0);
if (generateds)
add_ds(name, node, nsttl);
} else if (has_dname(gdb, gversion, node)) {
zonecut = savezonecut(&fzonecut, name);
}
result = dns_dbiterator_next(dbiter);
@@ -2148,8 +2162,7 @@ cleanup_zone(void) {
dns_diff_init(mctx, &add);
dns_diff_init(mctx, &del);
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
dns_rdataset_init(&rdataset);
result = dns_db_createiterator(gdb, 0, &dbiter);
@@ -2209,11 +2222,8 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
unsigned int count, nlabels;
dns_rdataset_init(&rdataset);
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
dns_fixedname_init(&fnextname);
nextname = dns_fixedname_name(&fnextname);
dns_fixedname_init(&fzonecut);
name = dns_fixedname_initname(&fname);
nextname = dns_fixedname_initname(&fnextname);
zonecut = NULL;
/*
@@ -2247,6 +2257,10 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
(void)active_node(node);
}
if (has_dname(gdb, gversion, node)) {
zonecut = savezonecut(&fzonecut, name);
}
result = dns_dbiterator_next(dbiter);
nextnode = NULL;
while (result == ISC_R_SUCCESS) {
@@ -2270,8 +2284,7 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
if (is_delegation(gdb, gversion, gorigin,
nextname, nextnode, &nsttl))
{
zonecut = dns_fixedname_name(&fzonecut);
dns_name_copy(nextname, zonecut, NULL);
zonecut = savezonecut(&fzonecut, nextname);
remove_sigs(nextnode, ISC_TRUE, 0);
if (generateds)
add_ds(nextname, nextnode, nsttl);
@@ -2281,6 +2294,8 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
result = dns_dbiterator_next(dbiter);
continue;
}
} else if (has_dname(gdb, gversion, nextnode)) {
zonecut = savezonecut(&fzonecut, nextname);
}
dns_db_detachnode(gdb, &nextnode);
break;
@@ -2379,6 +2394,11 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
dns_db_detachnode(gdb, &node);
continue;
}
if (has_dname(gdb, gversion, node)) {
zonecut = savezonecut(&fzonecut, name);
}
result = dns_dbiterator_next(dbiter);
nextnode = NULL;
while (result == ISC_R_SUCCESS) {
@@ -2401,14 +2421,15 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
if (is_delegation(gdb, gversion, gorigin,
nextname, nextnode, NULL))
{
zonecut = dns_fixedname_name(&fzonecut);
dns_name_copy(nextname, zonecut, NULL);
zonecut = savezonecut(&fzonecut, nextname);
if (OPTOUT(nsec3flags) &&
!secure(nextname, nextnode)) {
dns_db_detachnode(gdb, &nextnode);
result = dns_dbiterator_next(dbiter);
continue;
}
} else if (has_dname(gdb, gversion, nextnode)) {
zonecut = savezonecut(&fzonecut, nextname);
}
dns_db_detachnode(gdb, &nextnode);
break;
@@ -2456,8 +2477,7 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
isc_buffer_init(&b, origin, len);
isc_buffer_add(&b, len);
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL);
if (result != ISC_R_SUCCESS)
fatal("failed converting name '%s' to dns format: %s",
@@ -2513,11 +2533,11 @@ loadzonekeys(isc_boolean_t preserve_keys, isc_boolean_t load_public) {
goto cleanup;
if (set_keyttl && keyttl != rdataset.ttl) {
fprintf(stderr, "User-specified TTL %d conflicts "
fprintf(stderr, "User-specified TTL %u conflicts "
"with existing DNSKEY RRset TTL.\n",
keyttl);
fprintf(stderr, "Imported keys will use the RRSet "
"TTL %d instead.\n",
"TTL %u instead.\n",
rdataset.ttl);
}
keyttl = rdataset.ttl;
@@ -2805,8 +2825,7 @@ set_nsec3params(isc_boolean_t update, isc_boolean_t set_salt,
* (This assumes all NSEC3 records agree.)
*/
dns_fixedname_init(&fname);
hashname = dns_fixedname_name(&fname);
hashname = dns_fixedname_initname(&fname);
result = dns_nsec3_hashname(&fname, NULL, NULL,
gorigin, gorigin, dns_hash_sha1,
orig_iter, orig_salt, orig_saltlen);
@@ -2895,8 +2914,7 @@ writeset(const char *prefix, dns_rdatatype_t type) {
unsigned int labels;
dns_name_init(&tname, NULL);
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
name = dns_fixedname_initname(&fixed);
labels = dns_name_countlabels(gorigin);
dns_name_getlabelsequence(gorigin, 0, labels - 1, &tname);
result = dns_name_concatenate(&tname, dlv, name, NULL);
@@ -3128,12 +3146,12 @@ print_stats(isc_time_t *timer_start, isc_time_t *timer_finish,
isc_uint64_t sig_ms; /* Signatures per millisecond */
FILE *out = output_stdout ? stderr : stdout;
fprintf(out, "Signatures generated: %10d\n", nsigned);
fprintf(out, "Signatures retained: %10d\n", nretained);
fprintf(out, "Signatures dropped: %10d\n", ndropped);
fprintf(out, "Signatures successfully verified: %10d\n", nverified);
fprintf(out, "Signatures generated: %10u\n", nsigned);
fprintf(out, "Signatures retained: %10u\n", nretained);
fprintf(out, "Signatures dropped: %10u\n", ndropped);
fprintf(out, "Signatures successfully verified: %10u\n", nverified);
fprintf(out, "Signatures unsuccessfully "
"verified: %10d\n", nverifyfailed);
"verified: %10u\n", nverifyfailed);
time_us = isc_time_microdiff(sign_finish, sign_start);
time_ms = time_us / 1000;
@@ -3361,8 +3379,7 @@ main(int argc, char *argv[]) {
isc_buffer_init(&b, isc_commandline_argument, len);
isc_buffer_add(&b, len);
dns_fixedname_init(&dlv_fixed);
dlv = dns_fixedname_name(&dlv_fixed);
dlv = dns_fixedname_initname(&dlv_fixed);
result = dns_name_fromtext(dlv, &b, dns_rootname, 0,
NULL);
check_result(result, "dns_name_fromtext(dlv)");
@@ -3646,8 +3663,8 @@ main(int argc, char *argv[]) {
get_soa_ttls();
if (set_maxttl && set_keyttl && keyttl > maxttl) {
fprintf(stderr, "%s: warning: Specified key TTL %d "
"exceeds maximum zone TTL; reducing to %d\n",
fprintf(stderr, "%s: warning: Specified key TTL %u "
"exceeds maximum zone TTL; reducing to %u\n",
program, keyttl, maxttl);
keyttl = maxttl;
}
@@ -3742,6 +3759,8 @@ main(int argc, char *argv[]) {
if (nsec3iter > max)
fatal("NSEC3 iterations too big for weakest DNSKEY "
"strength. Maximum iterations allowed %u.", max);
} else {
hashlist_init(&hashlist, 0, 0); /* silence clang */
}
gversion = NULL;
@@ -3903,8 +3922,7 @@ main(int argc, char *argv[]) {
dns_db_closeversion(gdb, &gversion, ISC_FALSE);
dns_db_detach(&gdb);
if (IS_NSEC3)
hashlist_free(&hashlist);
hashlist_free(&hashlist);
while (!ISC_LIST_EMPTY(keylist)) {
key = ISC_LIST_HEAD(keylist);
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2000-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -46,6 +49,7 @@
<year>2015</year>
<year>2016</year>
<year>2017</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
+1 -1
View File
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2000-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2009, 2011-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
+2 -2
View File
@@ -1,4 +1,4 @@
.\" Copyright (C) 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2012, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -113,5 +113,5 @@ RFC 4033\&.
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
.br
Copyright \(co 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
Copyright \(co 2012, 2014-2016, 2018 Internet Systems Consortium, Inc. ("ISC")
.br
+5 -3
View File
@@ -1,9 +1,12 @@
/*
* Copyright (C) 2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
/*! \file */
@@ -94,8 +97,7 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
isc_buffer_init(&b, origin, len);
isc_buffer_add(&b, len);
dns_fixedname_init(&fname);
name = dns_fixedname_name(&fname);
name = dns_fixedname_initname(&fname);
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL);
if (result != ISC_R_SUCCESS)
fatal("failed converting name '%s' to dns format: %s",
+5 -1
View File
@@ -1,9 +1,12 @@
<!--
- Copyright (C) 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
<!-- Converted by db4-upgrade version 1.0 -->
@@ -33,6 +36,7 @@
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2018</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>

Some files were not shown because too many files have changed in this diff Show More