Commit Graph
3712 Commits
Author SHA1 Message Date
Witold KręcickiandEvan Hunt aa9866c390 If possible don't use forwarders when priming the resolver.
If we try to fetch a record from cache and need to look into
hints database we assume that the resolver is not primed and
start dns_resolver_prime(). Priming query is supposed to return
NSes for "." in ANSWER section and glue records for them in
ADDITIONAL section, so that we can fill that info in 'regular'
cache and not use hints db anymore.
However, if we're using a forwarder the priming query goes through
it, and if it's configured to return minimal answers we won't get
the addresses of root servers in ADDITIONAL section. Since the
only records for root servers we have are in hints database we'll
try to prime the resolver with every single query.

This patch adds a DNS_FETCHOPT_NOFORWARD flag which avoids using
forwarders if possible (that is if we have forward-first policy).
Using this flag on priming fetch fixes the problem as we get the
proper glue. With forward-only policy the problem is non-existent,
as we'll never ask for root server addresses because we'll never
have a need to query them.

Also added a test to confirm priming queries are not forwarded.

(cherry picked from commit b49310ac06)
(cherry picked from commit f8963ad70e)
2019-01-16 22:27:52 -08:00
Petr MenšíkandMark Andrews 2e8a927912 Normalize windows files and shell scripts
Commands used:
git add --chmod=+x bin/tests/system/ifconfig.sh mkinstalldirs
git add --renormalize 'win32utils/**.txt' '**.dsw'
2019-01-16 19:04:50 -05:00
Mark AndrewsandEvan Hunt 06eb0a4367 add multi-view server and tests
(cherry picked from commit 7122b5786d)
(cherry picked from commit 22b77f45b7)
2019-01-14 18:31:02 -08:00
Evan Hunt 3b367ef3cb b/t/s/dnssec/tests.sh: Cleanup showprivate() function
(cherry picked from commit b241dc58ec)
2019-01-14 13:23:36 -08:00
Evan Hunt d653989a1e fix testing errors
- the checkprivate function in the dnssec test set ret=0, erasing
  results from previous tests and making the test appear to have passed
  when it shouldn't have
- checkprivate needed a delay loop to ensure there was time for all
  private signing records to be updated before the test

(cherry picked from commit 82e83d5dc7)
2019-01-13 21:34:35 -05:00
Mark Andrews 58cc1ee718 Ensure base64/base32/hex fields in DNS records that should be non-empty are.
(cherry picked from commit 5e8b772ad1)
2019-01-09 18:52:50 +11:00
Mark AndrewsandEvan Hunt 24f7bc252d wait longer for dump to complete
(cherry picked from commit 8a8d378def)
2019-01-08 20:18:26 -08:00
Michał Kępień 3db9f56718 Track forwarder timeouts in fetch contexts
Since following a delegation resets most fetch context state, address
marks (FCTX_ADDRINFO_MARK) set inside lib/dns/resolver.c are not
preserved when a delegation is followed.  This is fine for full
recursive resolution but when named is configured with "forward first;"
and one of the specified forwarders times out, triggering a fallback to
full recursive resolution, that forwarder should no longer be consulted
at each delegation point subsequently reached within a given fetch
context.

Add a new badnstype_t enum value, badns_forwarder, and use it to mark a
forwarder as bad when it times out in a "forward first;" configuration.
Since the bad server list is not cleaned when a fetch context follows a
delegation, this prevents a forwarder from being queried again after
falling back to full recursive resolution.  Yet, as each fetch context
maintains its own list of bad servers, this change does not cause a
forwarder timeout to prevent that forwarder from being used by other
fetch contexts.

(cherry picked from commit 33350626f9)
2019-01-08 08:34:37 +01:00
Matthijs Mekking bb2c242c39 Remove dig_with_opts 2018-12-20 15:23:07 +01:00
Matthijs MekkingandOndřej Surý 0e9a8da68c Replace DSA with Reserved algorithm
(cherry picked from commit 17cdde1e56)
2018-12-20 04:50:08 -05:00
Matthijs MekkingandOndřej Surý 9f81119c02 Add dnssec-signzone tests with unsupported alg
dnssec-signzone should sign a zonefile that contains a DNSKEY record
with an unsupported algorithm.

(cherry picked from commit 6d976b37c1)
(cherry picked from commit 8619318a1e6207e487438a93bd7a620967091347)
2018-12-20 04:50:08 -05:00
Ondřej Surý c1c10ca2b9 Properly detect msys/msys2 environment in the stop.pl script.
(cherry picked from commit 808dac0760)
2018-12-19 21:31:41 +01:00
Ondřej Surý b9e16f3475 Revert "Merge branch '782-cygwin-grep-CRLF-issue-v9_12-v9_11' into 'v9_11'"
This reverts commit b644eb672b, reversing
changes made to 3b302c58e2.
2018-12-17 12:44:24 +01:00
Curtis BlackburnandEvan Hunt 5641664f91 minor fixes to dns64 and rndc CRLF fix. rpzrecurse failure will be addressed in a separate issue 2018-12-14 19:45:42 -08:00
Curtis BlackburnandEvan Hunt d9fe816644 more CRLF fixes (dns64) 2018-12-14 19:45:38 -08:00
Curtis BlackburnandEvan Hunt 99fcbcf904 digdelv test fixed for CRLF issue 2018-12-14 19:45:37 -08:00
Curtis BlackburnandEvan Hunt ddee74194c windows CRLF issues fixed in builtin test 2018-12-14 19:45:34 -08:00
Mark Andrews 7aecb8b1fd pass the correct object to cfg_obj_log
(cherry picked from commit 53a33f7365)
2018-12-15 09:38:42 +11:00
Mark Andrews 637e3c4c4b check that DNSKEY and other occluded data are excluded from the delegating bitmap
(cherry picked from commit 7e4b82103b)
2018-12-14 14:44:18 +11:00
Mark Andrews c5f85f808c check that the time between notify messages is not too small
(cherry picked from commit 47a4e0eeaa)
2018-12-12 10:24:23 +11:00
Mark AndrewsandOndřej Surý 1d33b62405 update rpzrecurse for RPZ_LOG_QTYPE_QCLASS 2018-12-11 12:26:25 +01:00
Evan Hunt c47a301c0c add missing -r $RANDFILE 2018-12-11 01:23:33 -05:00
Mark AndrewsandEvan Hunt 940a0f2003 allow a small about of time for the syncptr event to be processed
(cherry picked from commit 3bca52ca07)
2018-12-10 09:07:59 -08:00
Michał KępieńandMark Andrews f0004e120d Check that DNAME is not treated as a delegation when signing
(cherry picked from commit adbca54079)
2018-12-10 17:48:17 +11:00
Mark Andrews ccac107ded verify that auto-dnssec maintain generates and signs NSEC3 records with DNAME at the apex
(cherry picked from commit 6b470bbf42)
2018-12-10 17:48:17 +11:00
Mark Andrews 4731ee6ae1 verify that dnssec-signzone generates NSEC3 records with DNAME at the apex
(cherry picked from commit 06e218c421)
2018-12-10 17:29:29 +11:00
Mark Andrews f8dc30d18b Properly detect bottom of zone when sign_a_node() is not called
(cherry picked from commit 9eec02a81f)
2018-12-07 12:20:09 +11:00
Mark Andrews e1f49ba977 add more error logging; add event processing logging
(cherry picked from commit 6a5c8ec2ea)
2018-12-06 11:33:36 +11:00
Ondřej Surý ca391cd085 Change the default algorithm to RSASHA256 and the alternative algorithm to RSASHA1 as those are always supported 2018-12-05 21:56:15 +01:00
Ondřej Surý 28560fd280 Add DNSKEY and CDNSKEY with unknown algorithm number (PRIVATEDNS) and \0 as content
(cherry picked from commit 00cc0b236a)
2018-12-05 20:45:57 +01:00
Ondřej Surý f492efe680 Refactor masterformat to be shellcheck clean and don't use RSAMD5 algorithm in the tests
(cherry picked from commit b13c7ca402)
2018-12-05 20:45:50 +01:00
Ondřej Surý fc9e2a1a75 Make the start.pl and stop.pl more Cygwin friendly
(cherry picked from commit 835bad2c5c)
2018-12-04 15:31:50 +01:00
Ondřej Surý 948104ee5a Replace realpath with cd&pwd shell magic 2018-12-03 20:45:16 +01:00
Ondřej Surý 337c87faad Add extra .gitignore to lwresd test 2018-12-03 20:45:16 +01:00
Ondřej Surý 4344a7e599 Make run.sh and runall.sh executable 2018-12-03 20:45:16 +01:00
Ondřej Surý 08fa20bf54 Re-add functionality to handle lwresd from {start,stop}.pl 2018-12-03 20:45:16 +01:00
Ondřej Surý 62a1054fd0 Make calls to the stop.pl always use the test name instead of '.'
(cherry picked from commit e227815af5)
(cherry picked from commit 73e26ec1d6)
2018-12-03 20:39:14 +01:00
Ondřej Surý 1fa08d78d3 stop.pl - refactor
(cherry picked from commit 27ee629e6b)
(cherry picked from commit 70cbdf3528)
2018-12-03 20:39:13 +01:00
Ondřej Surý 0c384a76cd Make calls to the start.pl always use the test name instead of '.'
(cherry picked from commit 16b95157e8)
(cherry picked from commit e8f38da2df)
2018-12-03 20:39:13 +01:00
Brian ConryandOndřej Surý 7f2a3a7c5f start.pl - refactor
(cherry picked from commit 0fc8bfef13)
(cherry picked from commit 1ae7ca6606)
2018-12-03 17:31:27 +01:00
Brian ConryandOndřej Surý 8bb758633d start.pl - wait for server to say 'running'
(cherry picked from commit 597049461d)
(cherry picked from commit ee737c8328)
2018-12-03 17:25:18 +01:00
Ondřej Surý 72fbbd0a29 Add ALTERNATIVE_ALGORITHM to conf.sh
(cherry picked from commit b2c4c35493)
(cherry picked from commit e3379c44cb)
2018-12-03 09:52:02 +01:00
Ondřej Surý 08a39b1073 Export SYSTEMTESTTOP from run.sh (so, it doesn't have to be defined in each script) and scrub / from the test names
(cherry picked from commit 1b2a3a0ea6)
(cherry picked from commit d1dffe2fd3)
2018-12-03 09:52:02 +01:00
Mark Andrews 232a2004ba use documented default key ttl
(cherry picked from commit 6499bdfd8b)
2018-11-30 11:15:31 +11:00
Mark Andrews a74acbfd82 add reproducer for [GL #585]
(cherry picked from commit 0ac2a868bb)
2018-11-30 11:15:29 +11:00
Mark Andrews 889175eb17 replace strncpy + setting end of array to NUL with strlcpy 2018-11-22 10:50:06 +11:00
Evan Hunt b407e80d00 better system test entropy
- use genrandom to get 4k of data instead of 800 bytes
- set this value as RANDOMSIZE in conf.sh

(cherry picked from commit 19aaecafeb)
2018-11-16 23:54:39 -08:00
Evan Hunt 731f27e77e set inactive date in keygen instead of settime 2018-11-16 11:56:19 -08:00
Evan Hunt a37f21fdcf increase the entropy allocated by genrandom 2018-11-16 11:56:19 -08:00
Evan Hunt 9557e2f454 fix broken keygen call in verify 2018-11-16 11:56:19 -08:00