Commit graph

27394 commits

Author SHA1 Message Date
Ondřej Surý
64fe6bbaf2 Replace ISC_PRINT_QUADFORMAT with inttypes.h format constants 2018-08-08 09:36:44 +02:00
Ondřej Surý
9e493798c6 Check for C99 compatible compiler 2018-08-08 09:36:44 +02:00
Ondřej Surý
e5ee96fc1b Merge branch 'silence-openbsd-warning' into 'master'
Silence a compiler warning on openbsd and fix windows build

See merge request isc-projects/bind9!603
2018-08-08 03:34:44 -04:00
Evan Hunt
b55338e447 Silence a compiler warning on openbsd and fix windows build 2018-08-08 02:49:28 -04:00
Michał Kępień
20c52bf9b8 Merge branch '431-refactor-code-preparing-a-delegation-response' into 'master'
Refactor code preparing a delegation response

Closes #431

See merge request isc-projects/bind9!549
2018-08-08 02:26:40 -04:00
Michał Kępień
1d9c37876b Add CHANGES entry
5006.	[cleanup]	Code preparing a delegation response was extracted from
			query_delegation() and query_zone_delegation() into a
			separate function in order to decrease code
			duplication. [GL #431]
2018-08-08 08:08:40 +02:00
Michał Kępień
8e3fc5725f Extract code preparing a delegation response to a separate function
Changes introduced by the previous two commits make the parts of
query_delegation() and query_zone_delegation() which prepare a
delegation response functionally equivalent.  Extract this code into a
separate function, query_prepare_delegation_response(), and then call
the latter from both query_delegation() and query_zone_delegation() in
order to reduce code duplication.  Add a comment describing the purpose
of the extracted code.  Fix coding style issues.
2018-08-08 08:08:40 +02:00
Michał Kępień
7db4dedf6b Remove unused NS_QUERYATTR_CACHEGLUEOK query attribute
The NS_QUERYATTR_CACHEGLUEOK query attribute has no influence on query
processing.  Remove it.
2018-08-08 08:08:40 +02:00
Michał Kępień
b6c77202cb Restore zone database and zone node if cache search results are to be ignored
When query processing hits a delegation from a locally configured zone,
an attempt may be made to look for a better answer in the cache.  In
such a case, the zone-sourced delegation data is set aside and the
lookup is retried using the cache database.  When that lookup is
completed, a decision is made whether the answer found in the cache is
better than the answer found in the zone.

Currently, if the zone-sourced answer turns out to be better than the
one found in the cache:

  - qctx->zdb is not restored into qctx->db,
  - qctx->node, holding the zone database node found, is not even saved.

Thus, in such a case both qctx->db and qctx->node will point at cache
data.  This is not an issue for BIND versions which do not support
mirror zones because in these versions non-recursive queries always
cause the zone-sourced delegation to be returned and thus the
non-recursive part of query_delegation() is never reached if the
delegation is coming from a zone.  With mirror zones, however,
non-recursive queries may cause cache lookups even after a zone
delegation is found.  Leaving qctx->db assigned to the cache database
when query_delegation() determines that the zone-sourced delegation is
the best answer to the client's query prevents DS records from being
added to delegations coming from mirror zones.  Fix this issue by
keeping the zone database and zone node in qctx while the cache is
searched for an answer and then restoring them into qctx->db and
qctx->node, respectively, if the zone-sourced delegation turns out to be
the best answer.  Since this change means that qctx->zdb cannot be used
as the glue database any more as it will be reset to NULL by RESTORE(),
ensure that qctx->db is not a cache database before attaching it to
qctx->client->query.gluedb.

Furthermore, current code contains a conditional statement which
prevents a mirror zone from being used as a source of glue records.
Said statement was added to prevent assertion failures caused by
attempting to use a zone database's glue cache for finding glue for an
NS RRset coming from a cache database.  However, that check is overly
strict since it completely prevents glue from being added to delegations
coming from mirror zones.  With the changes described above in place,
the scenario this check was preventing can no longer happen, so remove
the aforementioned check.

If qctx->zdb is not NULL, qctx->zfname will also not be NULL;
qctx->zsigrdataset may be NULL in such a case, but query_putrdataset()
handles pointers to NULL pointers gracefully.  Remove redundant
conditional expressions to make the cleanup code in query_freedata()
match the corresponding sequences of SAVE() / RESTORE() macros more
closely.
2018-08-08 08:07:46 +02:00
Ondřej Surý
ec25056b48 Merge branch '440-root-zone-performance-regression-uint32' into 'master'
Resolve "Root zone performance regression since 9.12.2rc2 and 9.13.1"

Closes #440

See merge request isc-projects/bind9!602
2018-08-07 04:02:02 -04:00
Ondřej Surý
e3131b8d52 Make sure the storage for isc_random32() result is 32-bit long 2018-08-07 09:52:47 +02:00
Ondřej Surý
21a547c100 Merge branch '440-root-zone-performance-regression' into 'master'
Resolve "Root zone performance regression since 9.12.2rc2 and 9.13.1"

Closes #440

See merge request isc-projects/bind9!593
2018-08-06 05:38:44 -04:00
Ondřej Surý
9e11b54bbc Update ARM on the default ordering 2018-08-06 11:24:14 +02:00
Ondřej Surý
e80c26b22e Define and use new DNS_RDATASET_COUNT_UNDEFINED equals ISC_UINT32_MAX to make the code more readable 2018-08-06 11:24:14 +02:00
Ondřej Surý
afddc2781e Modify the rrsetorder test to cope with the rrset order randomization (only four orders are now possible) 2018-08-06 11:24:14 +02:00
Ondřej Surý
41a68425ea Refactor code around random/cyclic/fixed to reduce code duplication 2018-08-06 11:24:14 +02:00
Mark Andrews
f7986c8d1a Only get one random number per response when order == random 2018-08-05 07:23:07 +02:00
Mark Andrews
9c4fb3b3e6 Merge branch 'remove-dead-code' into 'master'
Remove dead code

See merge request isc-projects/bind9!587
2018-08-02 19:22:25 -04:00
Mark Andrews
83a1e87dd2 remove dead code 2018-08-02 18:57:30 -04:00
Mark Andrews
5146cbc092 Merge branch '442-dnssec-verify-fails-on-case-sensitivity-of-owner-names-in-nsec-bitmap' into 'master'
Resolve "dnssec-verify fails on case-sensitivity of owner names in NSEC bitmap"

Closes #442

See merge request isc-projects/bind9!562
2018-08-02 18:34:46 -04:00
Mark Andrews
49cd3aac9c add CHANGES 2018-08-03 08:21:48 +10:00
Mark Andrews
a94db46631 only check the bit map 2018-08-03 08:21:48 +10:00
Ondřej Surý
c3c0481293 Merge branch '543-revert-!553' into 'master'
Revert "Merge branch 'modified-manual-install-oot' into 'master'"

Closes #453

See merge request isc-projects/bind9!573
2018-08-02 10:32:08 -04:00
Ondřej Surý
69380eb033 Revert "Merge branch 'modified-manual-install-oot' into 'master'"
This reverts commit d9929b1b0a, reversing
changes made to 8abf2f23d0.
2018-08-02 10:23:30 -04:00
Ondřej Surý
2c816e745b Merge branch '454-broken-build-with-custom-ldflags' into 'master'
Resolve "Broken build with custom LDFLAGS"

Closes #454

See merge request isc-projects/bind9!572
2018-08-02 08:41:50 -04:00
Ondřej Surý
10e6bfc864 Preserve ${LDFLAGS} contents in bin/dig/ 2018-08-02 08:33:03 -04:00
Mark Andrews
84385bc717 Merge branch '439-the-signed-instance-of-a-in-line-zone-should-be-treated-as-dynamic' into 'master'
Resolve "The signed instance of a in-line zone should be treated as dynamic."

Closes #439

See merge request isc-projects/bind9!554
2018-08-02 00:23:06 -04:00
Mark Andrews
d6d9fd1c71 add CHANGES 2018-08-02 14:07:03 +10:00
Mark Andrews
9130f055f4 treat the signed instance of a inline zone as dynamic 2018-08-02 00:00:13 -04:00
Mark Andrews
cfccd8d246 turn off ixfr-from-differences on signed instance of in-line zone 2018-08-02 00:00:13 -04:00
Mark Andrews
3ea9861e7a rename zone to mayberaw 2018-08-02 00:00:13 -04:00
Mark Andrews
a71823bc5c Merge branch '453-master-build-broken-in-documentation-tree' into 'master'
add /opt/local/share/xsl/docbook-xsl-nons to the places to look for manpages/docbook.xsl under macports

See merge request isc-projects/bind9!571
2018-08-01 22:41:45 -04:00
Mark Andrews
7425252207 add /opt/local/share/xsl/docbook-xsl-nons to the places to look for manpages/docbook.xsl under macports 2018-08-02 12:07:27 +10:00
Mark Andrews
c0bd1bf944 Merge branch '359-question-about-using-hashtable-size-log-messages-for-rpzs' into 'master'
Resolve "Question about 'using hashtable size' log messages for RPZs"

Closes #359

See merge request isc-projects/bind9!566
2018-08-01 21:32:01 -04:00
Mark Andrews
12d45c5cd1 lower log level to debug(1) 2018-08-01 21:31:17 -04:00
Mark Andrews
d30f6e5f99 Merge branch '424-nsupdate-tests-fail-intermittently' into 'master'
Resolve "nsupdate tests fail intermittently"

Closes #424

See merge request isc-projects/bind9!544
2018-08-01 21:25:27 -04:00
Mark Andrews
abe41ba011 use guard values for testing unixtime serial 2018-08-02 10:25:56 +10:00
Mark Andrews
6b30bc73c0 save SOA values 2018-08-01 20:04:09 -04:00
Mark Andrews
f335795068 Merge branch '406-dns_acl_isinsecure-does-not-handle-geoip-elements' into 'master'
Resolve "dns_acl_isinsecure does not handle geoip elements."

Closes #406

See merge request isc-projects/bind9!528
2018-08-01 19:30:22 -04:00
Mark Andrews
b0b76d259f add CHANGES note 2018-08-02 09:19:04 +10:00
Mark Andrews
57eadf4d4f handle dns_aclelementtype_geoip 2018-08-02 09:18:16 +10:00
Mark Andrews
fb8bb4e306 test dns_acl_isinsecure with geoip element 2018-08-02 09:18:16 +10:00
Mark Andrews
d7ae24c868 Merge branch '410-missing-sanity-check-for-call-to-next_token-in-file-mdig-c-for-bind-9-12-1-p2' into 'master'
Resolve "Missing Sanity Check for call to next_token() in file 'mdig.c' for BIND 9.12.1-P2"

Closes #410

See merge request isc-projects/bind9!527
2018-08-01 19:17:00 -04:00
Mark Andrews
84f1d9a204 add CHANGES note 2018-08-02 09:07:54 +10:00
Mark Andrews
2e688488f7 test mdig '+ednsopt=:' handling 2018-08-02 08:55:01 +10:00
Mark Andrews
d2943440a0 fix handling of '+ednsopt=:'; support 100 ednsopts per query rather than 100 total 2018-08-02 08:55:01 +10:00
Mark Andrews
1a5620db01 Merge branch '372-smimea-and-tlsa-methods-incorrectly-use-txt-type' into 'master'
Resolve "smimea and tlsa methods incorrectly use txt type"

Closes #372

See merge request isc-projects/bind9!458
2018-08-01 18:23:53 -04:00
Mark Andrews
63c9ec367f use tlsa and smime structs to set common values 2018-08-01 18:15:08 -04:00
Mark Andrews
d9929b1b0a Merge branch 'modified-manual-install-oot' into 'master'
Use make automatic variables to install correct manual version.

See merge request isc-projects/bind9!553
2018-08-01 02:06:44 -04:00
Petr Menšík
88f913ac81 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.
2018-08-01 01:56:16 -04:00