Commit Graph
8491 Commits
Author SHA1 Message Date
Mark Andrews 252aa79fe4 rename zone to mayberaw
(cherry picked from commit 3ea9861e7a)
2018-08-02 14:27:20 +10:00
Mark Andrews eb506cf14e use guard values for testing unixtime serial
(cherry picked from commit abe41ba011)
2018-08-02 11:29:04 +10:00
Mark Andrews 8e12e6f7ce save SOA values
(cherry picked from commit 6b30bc73c0)
2018-08-02 11:29:04 +10:00
Mark Andrews 3d40bc4e1a test mdig '+ednsopt=:' handling
(cherry picked from commit 2e688488f7)
2018-08-02 09:42:13 +10:00
Mark Andrews 3f7a651d3a fix handling of '+ednsopt=:'; support 100 ednsopts per query rather than 100 total
(cherry picked from commit d2943440a0)
2018-08-02 09:42:09 +10:00
Petr MenšíkandMark Andrews 85deed805b Use make automatic variables to install updated manuals
Make will choose modified manual from build directory or original from source
directory automagically. Take advantage of install tool feature.
Install all files in single command instead of iterating on each of them.

(cherry picked from commit 88f913ac81)
2018-08-01 16:22:01 +10:00
Mark AndrewsandEvan Hunt ab5c03c507 named_server_servestale could leave the server in exclusive mode if a error occurs.
(cherry picked from commit c8b07932e4)
2018-07-26 22:58:03 -07:00
Michał Kępień f4b403e8b2 Fix handling of TAT sending failures
dns_view_zonecut() may associate the dns_rdataset_t structure passed to
it even if it returns a result different then ISC_R_SUCCESS.  Not
handling this properly may cause a reference leak.  Fix by ensuring
'nameservers' is cleaned up in all relevant failure modes.

(cherry picked from commit 8666f8d28f)
2018-07-19 18:04:01 +02: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ń 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
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
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ń 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ý bbd82796bd Add .gitignore for PKCS#11 test files
(cherry picked from commit 96907d636d)
2018-07-11 08:11:21 +02: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ń 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ń 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 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 22327b4cdf free rbuf
(cherry picked from commit ecb2f20324)
2018-07-10 14:37:52 +10:00
Tinderbox User bbf35634c0 prep 9.12.2rc2 2018-06-28 04:42:37 +00: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
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ń 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ń 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
Mark AndrewsandEvan Hunt 74bfd11a5f log the remaining -V info at startup
(cherry picked from commit 33ff03db58)
2018-06-25 15:02:31 -07:00
Mukund SivaramanandMark Andrews 19bad5a7f3 Add system test
(cherry picked from commit 2bf388a31b)
2018-06-25 17:33:15 +10:00
Evan HuntandOndřej Surý 87344e3493 prepare 9.12.1rc1 2018-06-21 18:46:32 +02:00
Mark Andrews 4f332dc936 Restore default rrset-order to random.
(cherry picked from commit e8154b50d4)
2018-06-19 11:18:19 +10: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
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ń 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
Evan Hunt 74c3b9d3b2 complete strtok fix 2018-06-09 23:03:38 -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 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
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 60a703550e Add support for marking a option as deprecated.
(cherry picked from commit befff9452c)
2018-06-08 15:55:56 +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