]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
4 years agoWIP: disable rbt hash table prehashing ondrej-reduce-memory-jemalloc
Ondřej Surý [Thu, 9 Dec 2021 17:25:59 +0000 (18:25 +0100)] 
WIP: disable rbt hash table prehashing

4 years agoCripple adjusthashsize
Ondřej Surý [Fri, 10 Dec 2021 12:40:36 +0000 (13:40 +0100)] 
Cripple adjusthashsize

4 years agoWIP: Disable internal allocator
Ondřej Surý [Fri, 10 Dec 2021 16:07:17 +0000 (17:07 +0100)] 
WIP: Disable internal allocator

4 years agoEnforce linking with jemalloc
Ondřej Surý [Thu, 9 Dec 2021 16:40:12 +0000 (17:40 +0100)] 
Enforce linking with jemalloc

4 years agoWIP: Reduce the memory used by hazard pointers
Ondřej Surý [Thu, 9 Dec 2021 10:40:02 +0000 (11:40 +0100)] 
WIP: Reduce the memory used by hazard pointers

4 years agoMerge branch 'matthijs-regen-configure-after-mr-5625' into 'v9_16'
Ondřej Surý [Thu, 9 Dec 2021 16:51:52 +0000 (16:51 +0000)] 
Merge branch 'matthijs-regen-configure-after-mr-5625' into 'v9_16'

Regenerate configure file

See merge request isc-projects/bind9!5630

4 years agoRegenerate configure file
Matthijs Mekking [Thu, 9 Dec 2021 15:48:01 +0000 (16:48 +0100)] 
Regenerate configure file

Commit 3c77a51f added a configure check for OPENSSL_cleanup. The
regenerated configure file should have been added to that commit.

4 years agoMerge branch 'matthijs-fix-openssl-init-ssl-leak-v9_16' into 'v9_16'
Matthijs Mekking [Thu, 9 Dec 2021 10:07:19 +0000 (10:07 +0000)] 
Merge branch 'matthijs-fix-openssl-init-ssl-leak-v9_16' into 'v9_16'

Add OPENSSL_cleanup to tls_shutdown function (9.16)

See merge request isc-projects/bind9!5625

4 years agoAdd OPENSSL_cleanup to tls_shutdown function
Matthijs Mekking [Thu, 25 Nov 2021 14:10:00 +0000 (15:10 +0100)] 
Add OPENSSL_cleanup to tls_shutdown function

This prevents a direct leak in OPENSSL_init_crypto (called from
OPENSSL_init_ssl).

Add shim version of OPENSSL_cleanup because it is missing in LibreSSL on
OpenBSD.

(cherry picked from commit 89f4f8f0c89a5243ba9fa343d492b15fd97e4df0)

4 years agoMerge branch '3051-missing-destroy-for-pthread-primitives-v9_16' into 'v9_16'
Ondřej Surý [Wed, 8 Dec 2021 17:39:12 +0000 (17:39 +0000)] 
Merge branch '3051-missing-destroy-for-pthread-primitives-v9_16' into 'v9_16'

Stop leaking mutex in nmworker and cond in nm socket

See merge request isc-projects/bind9!5626

4 years agoAdd CHANGES and release not for [GL #3051]
Ondřej Surý [Wed, 8 Dec 2021 10:24:47 +0000 (11:24 +0100)] 
Add CHANGES and release not for [GL #3051]

(cherry picked from commit dff5888d9b00e932a1aa66eaca1ace76b9671cc3)

4 years agoStop leaking mutex in nmworker and cond in nm socket
Ondřej Surý [Mon, 6 Dec 2021 10:10:17 +0000 (11:10 +0100)] 
Stop leaking mutex in nmworker and cond in nm socket

On FreeBSD, the pthread primitives are not solely allocated on stack,
but part of the object lives on the heap.  Missing pthread_*_destroy
causes the heap memory to grow and in case of fast lived object it's
possible to run out-of-memory.

Properly destroy the leaking mutex (worker->lock) and
the leaking condition (sock->cond).

(cherry picked from commit 57d0fabaddf0e7ac297a046b084df8fb22d54d51)

4 years agoMerge branch '2700-improve-failed-tcp-accept-logging-v9_16' into 'v9_16'
Ondřej Surý [Thu, 2 Dec 2021 13:40:39 +0000 (13:40 +0000)] 
Merge branch '2700-improve-failed-tcp-accept-logging-v9_16' into 'v9_16'

Improve the logging on failed TCP accept

See merge request isc-projects/bind9!5613

4 years agoAdd CHANGES and release note for [GL #2700]
Ondřej Surý [Wed, 1 Dec 2021 16:52:33 +0000 (17:52 +0100)] 
Add CHANGES and release note for [GL #2700]

(cherry picked from commit 9d53471890bedf2b602daa06362a95b60a675f44)

4 years agoImprove the logging on failed TCP accept
Ondřej Surý [Wed, 1 Dec 2021 16:41:20 +0000 (17:41 +0100)] 
Improve the logging on failed TCP accept

Previously, when TCP accept failed, we have logged a message with
ISC_LOG_ERROR level.  One common case, how this could happen is that the
client hits TCP client quota and is put on hold and when resumed, the
client has already given up and closed the TCP connection.  In such
case, the named would log:

    TCP connection failed: socket is not connected

This message was quite confusing because it actually doesn't say that
it's related to the accepting the TCP connection and also it logs
everything on the ISC_LOG_ERROR level.

Change the log message to "Accepting TCP connection failed" and for
specific error states lower the severity of the log message to
ISC_LOG_INFO.

(cherry picked from commit 20ac73eb222e60395399b467b0a72015a4dd8845)

4 years agoMerge branch '1608-catz-reconfig-crash-fix-v9_16' into 'v9_16'
Arаm Sаrgsyаn [Wed, 1 Dec 2021 10:31:02 +0000 (10:31 +0000)] 
Merge branch '1608-catz-reconfig-crash-fix-v9_16' into 'v9_16'

[v9_16] Fix catalog zone reconfiguration crash

See merge request isc-projects/bind9!5608

4 years agoAdd a regression test
Evan Hunt [Mon, 11 Oct 2021 20:01:20 +0000 (13:01 -0700)] 
Add a regression test

Reconfigure the server without catalog-zone configuration, and then
put it back and reconfigure again, to confirm that there's no crash.

(cherry picked from commit bb411af31dd78ceda7a16f7ecfab483fb3746af9)

4 years agoAdd CHANGES and release notes for [GL #1608]
Aram Sargsyan [Mon, 11 Oct 2021 18:33:06 +0000 (18:33 +0000)] 
Add CHANGES and release notes for [GL #1608]

(cherry picked from commit e64473831010f3e8c76d9d0e1f222f4237e053e1)

4 years agoFix catalog zone reconfiguration crash
Aram Sargsyan [Mon, 11 Oct 2021 18:13:39 +0000 (18:13 +0000)] 
Fix catalog zone reconfiguration crash

The following scenario triggers a "named" crash:

1. Configure a catalog zone.
2. Start "named".
3. Comment out the "catalog-zone" clause.
4. Run `rndc reconfig`.
5. Uncomment the "catalog-zone" clause.
6. Run `rndc reconfig` again.

Implement the required cleanup of the in-memory catalog zone during
the first `rndc reconfig`, so that the second `rndc reconfig` could
find it in an expected state.

(cherry picked from commit 43ac2cd229813c04438e027c42c0b93b9661adda)

4 years agoMerge branch '2850-the-list-of-fetches-at-the-end-of-rndc-recursing-output-is-very...
Mark Andrews [Tue, 30 Nov 2021 13:04:03 +0000 (13:04 +0000)] 
Merge branch '2850-the-list-of-fetches-at-the-end-of-rndc-recursing-output-is-very-poorly-explained-in-the-arm-v9_16' into 'v9_16'

Update the description of fetches-per-zone counters

See merge request isc-projects/bind9!5604

4 years agoUpdate the description of fetches-per-zone counters
Mark Andrews [Wed, 8 Sep 2021 03:51:07 +0000 (13:51 +1000)] 
Update the description of fetches-per-zone counters

(cherry picked from commit 65f6d8af75d99de22f667149435d68d3862cda36)

4 years agoMerge branch '853-dnssec-dsfromkey-doesn-t-omit-revoked-ksk-v9_16' into 'v9_16'
Mark Andrews [Tue, 30 Nov 2021 11:39:27 +0000 (11:39 +0000)] 
Merge branch '853-dnssec-dsfromkey-doesn-t-omit-revoked-ksk-v9_16' into 'v9_16'

dnssec-dsfromkey should not convert revoked keys

See merge request isc-projects/bind9!5603

4 years agoAdd CHANGES for [GL #853]
Mark Andrews [Mon, 22 Nov 2021 06:29:08 +0000 (17:29 +1100)] 
Add CHANGES for [GL  #853]

(cherry picked from commit d632df3c11e966bacc4c66eca468a235125f16d6)

4 years agoCheck dnssec-dsfromkey with revoked DNSKEY
Mark Andrews [Wed, 17 Nov 2021 02:06:44 +0000 (13:06 +1100)] 
Check dnssec-dsfromkey with revoked DNSKEY

Checks that there is a revoked key in the DNSKEY RRset then checks
that only the correct number of DS records are produced.

(cherry picked from commit e7a3ada1d2fe787e55f8eddf4674c2ef6b01a0ab)

4 years agodnssec-dsfromkey should not convert revoked keys
Tony Finch [Mon, 4 Oct 2021 23:01:54 +0000 (10:01 +1100)] 
dnssec-dsfromkey should not convert revoked keys

it is pointless to convert revoked keys to DS or CDS records as
they cannot be used to provide a cryptographic link from the parent
zone.

(cherry picked from commit 04a5529c2da2187dde4cfce656fee023d55b1b47)

4 years agoMerge branch '3009-set-dopenssl_suppress_deprecated-for-9-16-and-9-11' into 'v9_16'
Mark Andrews [Fri, 26 Nov 2021 13:16:25 +0000 (13:16 +0000)] 
Merge branch '3009-set-dopenssl_suppress_deprecated-for-9-16-and-9-11' into 'v9_16'

Resolve "Set -DOPENSSL_SUPPRESS_DEPRECATED for 9.16 and 9.11"

See merge request isc-projects/bind9!5562

4 years agoSuppress OpenSSL deprecated warnings from OpensSSL 3.0.0
Mark Andrews [Tue, 9 Nov 2021 00:39:52 +0000 (11:39 +1100)] 
Suppress OpenSSL deprecated warnings from OpensSSL 3.0.0

We are not back porting OpenSSL 3.0.0 fixes to this branch so there
is no point in emitting warnings about using deprecated code.
Additionally this impacts --enable-developer and --enable-warn-error.

4 years agoMerge branch '3021-dns_sdlz_putrr-does-not-auto-increase-buffer-v9_16' into 'v9_16'
Mark Andrews [Thu, 25 Nov 2021 21:08:16 +0000 (21:08 +0000)] 
Merge branch '3021-dns_sdlz_putrr-does-not-auto-increase-buffer-v9_16' into 'v9_16'

Do not convert ISC_R_NOSPACE to DNS_R_SERVFAIL too early

See merge request isc-projects/bind9!5596

4 years agoAdd CHANGES for [GL #3021]
Mark Andrews [Wed, 24 Nov 2021 00:20:17 +0000 (11:20 +1100)] 
Add CHANGES for [GL #3021]

(cherry picked from commit ed5d28088aefd55dcde6eff7c495761dc68bf2f6)

4 years agoExercise ISC_R_NOSPACE path in dns_sdlz_putrr
Mark Andrews [Thu, 25 Nov 2021 02:16:56 +0000 (13:16 +1100)] 
Exercise ISC_R_NOSPACE path in dns_sdlz_putrr

Use relative names when adding SOA record and a long domain
name to create SOA RR where the wire format is longer than
the initial buffer allocation in dns_sdlz_putrr.

(cherry picked from commit 6dc524860622277bd24fe17d4a82454b30f5f1b5)

4 years agoDo not convert ISC_R_NOSPACE to DNS_R_SERVFAIL too early
Mark Andrews [Wed, 24 Nov 2021 00:03:19 +0000 (11:03 +1100)] 
Do not convert ISC_R_NOSPACE to DNS_R_SERVFAIL too early

The parsing loop needs to process ISC_R_NOSPACE to properly
size the buffer.  If result is still ISC_R_NOSPACE at the end
of the parsing loop set result to DNS_R_SERVFAIL.

(cherry picked from commit 08f1cba096243cd14041731b7ea1ad45e54e87b0)

4 years agoMerge branch 'mnowak/warning-array-subscript-is-of-type-char-on-netbsd-9-v9_16' into...
Michal Nowak [Thu, 25 Nov 2021 18:20:11 +0000 (18:20 +0000)] 
Merge branch 'mnowak/warning-array-subscript-is-of-type-char-on-netbsd-9-v9_16' into 'v9_16'

[v9_16] Fix "array subscript is of type 'char'" on NetBSD 9

See merge request isc-projects/bind9!5594

4 years agoFix "array subscript is of type 'char'" on NetBSD 9
Michal Nowak [Wed, 24 Nov 2021 15:50:57 +0000 (16:50 +0100)] 
Fix "array subscript is of type 'char'" on NetBSD 9

    In file included from rdata.c:602:
    In file included from ./code.h:88:
    ./rdata/in_1/svcb_64.c:259:9: warning: array subscript is of type 'char' [-Wchar-subscripts]
                            if (!isdigit(*region->base)) {
                                 ^~~~~~~~~~~~~~~~~~~~~~
    /usr/include/sys/ctype_inline.h:51:44: note: expanded from macro 'isdigit'
    #define isdigit(c)      ((int)((_ctype_tab_ + 1)[(c)] & _CTYPE_D))
                                                    ^~~~

(cherry picked from commit d09447287f02cdf479cf2e542e4ab0efe7a024fe)

4 years agoMerge branch 'matthijs-doc-fix-cookie-algorithm-desc-v9_16' into 'v9_16'
Matthijs Mekking [Thu, 18 Nov 2021 13:08:23 +0000 (13:08 +0000)] 
Merge branch 'matthijs-doc-fix-cookie-algorithm-desc-v9_16' into 'v9_16'

Update docs with correct cookie-algorithm values (9.16)

See merge request isc-projects/bind9!5583

4 years agoUpdate docs with correct cookie-algorithm values
Dan Theisen [Mon, 15 Nov 2021 11:59:01 +0000 (03:59 -0800)] 
Update docs with correct cookie-algorithm values

The documentation was inconsistent with the code. The new description
for cookie-algorithm now reflects the current behavior.

The following two commits are the relevant code changes to this
section of docs: afa81ee4 a912f313

(cherry picked from commit b29a7481199dd0c76f250f26ac89de49e767785d)

4 years agoMerge branch 'v9_16_23-release' into 'v9_16'
Michał Kępień [Thu, 18 Nov 2021 08:28:40 +0000 (08:28 +0000)] 
Merge branch 'v9_16_23-release' into 'v9_16'

Merge 9.16.23 release branch

See merge request isc-projects/bind9!5582

4 years agoSet up release notes for BIND 9.16.24
Michał Kępień [Thu, 18 Nov 2021 08:19:02 +0000 (09:19 +0100)] 
Set up release notes for BIND 9.16.24

4 years agoMerge branch 'prep-release' into v9_16_23-release
Tinderbox User [Fri, 5 Nov 2021 09:03:26 +0000 (09:03 +0000)] 
Merge branch 'prep-release' into v9_16_23-release

4 years agoMerge branch 'michal/prepare-documentation-for-bind-9.16.23' into 'v9_16_23-release'
Michał Kępień [Fri, 5 Nov 2021 08:39:24 +0000 (08:39 +0000)] 
Merge branch 'michal/prepare-documentation-for-bind-9.16.23' into 'v9_16_23-release'

Prepare documentation for BIND 9.16.23

See merge request isc-private/bind9!336

4 years agoprep 9.16.23
Tinderbox User [Fri, 5 Nov 2021 09:01:07 +0000 (09:01 +0000)] 
prep 9.16.23

4 years agoPrepare release notes for BIND 9.16.23
Michał Kępień [Fri, 5 Nov 2021 08:30:30 +0000 (09:30 +0100)] 
Prepare release notes for BIND 9.16.23

4 years agoTweak and reword release notes
Michał Kępień [Fri, 5 Nov 2021 08:30:30 +0000 (09:30 +0100)] 
Tweak and reword release notes

4 years agoMerge branch '2374-mdig-ephemeral-v9_16' into 'v9_16'
Evan Hunt [Wed, 17 Nov 2021 23:52:58 +0000 (23:52 +0000)] 
Merge branch '2374-mdig-ephemeral-v9_16' into 'v9_16'

Make mdig use the OS-supplied ephemeral port range

See merge request isc-projects/bind9!5579

4 years agoMake mdig use the OS-supplied ephemeral port range
Evan Hunt [Tue, 2 Nov 2021 09:37:20 +0000 (02:37 -0700)] 
Make mdig use the OS-supplied ephemeral port range

mdig was always using the default 1024-65535 range for outgoing
messages, instead of using the system's configured ephemeral ports.

(cherry picked from commit 0fecb10c172fad66a698d3737958439e28d96113)

4 years agoMerge branch '3012-begin-end-dnssec-managed-keys-in-bin-named-config-c-are-mismatched...
Mark Andrews [Tue, 16 Nov 2021 22:05:37 +0000 (22:05 +0000)] 
Merge branch '3012-begin-end-dnssec-managed-keys-in-bin-named-config-c-are-mismatched-v9_16' into 'v9_16'

Update comments around built in trust anchors

See merge request isc-projects/bind9!5577

4 years agoEmbed NAMED_SYSCONFDIR contents in the bind.keys comment
Mark Andrews [Tue, 16 Nov 2021 03:39:05 +0000 (14:39 +1100)] 
Embed NAMED_SYSCONFDIR contents in the bind.keys comment

(cherry picked from commit 1d7b1f74c9ec841967741406a22034282b608f56)

4 years agoUpdate comments around built in trust anchors
Mark Andrews [Tue, 16 Nov 2021 03:36:10 +0000 (14:36 +1100)] 
Update comments around built in trust anchors

The comments now say "# BEGIN TRUST ANCHORS" and "# END TRUST ANCHORS".

(cherry picked from commit 43a7f3f5324a2ea09605cbf0c42bf2a6dbf78c82)

4 years agoMerge branch 'ondrej/update-flycheck-configuration-on-Linux-v9_16' into 'v9_16'
Ondřej Surý [Mon, 15 Nov 2021 11:37:03 +0000 (11:37 +0000)] 
Merge branch 'ondrej/update-flycheck-configuration-on-Linux-v9_16' into 'v9_16'

Add flycheck configuration for libxml2 and json-c on Linux

See merge request isc-projects/bind9!5571

4 years agoAdd flycheck configuration for libxml2 and json-c on Linux
Ondřej Surý [Mon, 15 Nov 2021 11:18:44 +0000 (12:18 +0100)] 
Add flycheck configuration for libxml2 and json-c on Linux

(cherry picked from commit 41f86440c44e5800190f069fa74d7a997eb6e40b)

4 years agoMerge branch '3003-greedy-regular-expression-causes-intermittent-nsupdate-system...
Mark Andrews [Wed, 10 Nov 2021 02:35:02 +0000 (02:35 +0000)] 
Merge branch '3003-greedy-regular-expression-causes-intermittent-nsupdate-system-test-failures-v9_16' into 'v9_16'

Replace incorrect sed expersion with awk

See merge request isc-projects/bind9!5566

4 years agoAdd CHANGES note for [GL #3003]
Mark Andrews [Mon, 8 Nov 2021 03:10:19 +0000 (14:10 +1100)] 
Add CHANGES note for [GL #3003]

(cherry picked from commit c1df7884f028d9f1434ba1b971e3e83a5868ff12)

4 years agoReplace incorrect sed expersion with awk
Mark Andrews [Mon, 8 Nov 2021 03:05:42 +0000 (14:05 +1100)] 
Replace incorrect sed expersion with awk

The sed expression could find the wrong instance of 10.
Use awk to replace the TTL field and also to specify the
server and issue the send command.

(cherry picked from commit be879cda728b9fac3208f39148869d46c9c919e7)

4 years agoMerge branch '2779-wildcard_test_property_based-v9_16' into 'v9_16'
Petr Špaček [Tue, 9 Nov 2021 12:15:16 +0000 (12:15 +0000)] 
Merge branch '2779-wildcard_test_property_based-v9_16' into 'v9_16'

Add property based test for wildcard expansion [v9.16]

See merge request isc-projects/bind9!5560

4 years agoAdd missing PYTHONPATH variable export to pylint job in CI
Petr Špaček [Mon, 8 Nov 2021 15:43:05 +0000 (16:43 +0100)] 
Add missing PYTHONPATH variable export to pylint job in CI

The old .gitlab-ci.yaml accidentally worked because pylint
was importing modules internally, probably as a side-effect
of testing other code.

This pylint invocation errors out when PYTHONPATH is not set:
    $ pylint --rcfile $CI_PROJECT_DIR/.pylintrc bin/tests/system/keymgr/testpolicy.py
    ************* Module testpolicy
    bin/tests/system/keymgr/testpolicy.py:13:0: E0401: Unable to import 'isc' (import-error)

And this invocation works even without PYTHONPATH:
    $ pylint --rcfile $CI_PROJECT_DIR/.pylintrc bin/python/setup.py bin/tests/system/keymgr/testpolicy.py

4 years agoFix system test .status file cleanup
Petr Špaček [Wed, 27 Oct 2021 12:56:58 +0000 (14:56 +0200)] 
Fix system test .status file cleanup

(cherry picked from commit 6495e59a4cc5a82833db84eb2b0debc6b941e141)

4 years agoAdd new system test for wildcard expansion
Petr Špaček [Mon, 21 Jun 2021 12:51:43 +0000 (14:51 +0200)] 
Add new system test for wildcard expansion

This is almost minimal prototype to show how to use python-hypothesis
library in a system test. It does not fully replace existing shell-based
system test for wildcards.

(cherry picked from commit 49da19c353a2dc37868b2863594bf454750e2a4b)

4 years agoUse more liberal pylint for tests
Petr Špaček [Mon, 28 Jun 2021 14:17:01 +0000 (16:17 +0200)] 
Use more liberal pylint for tests

Ignore wrong-import-position to enable use of pytest.importorskip.

(cherry picked from commit 8ce4759c5cfd13e7df591b4cf729bb27ba6300fe)

4 years agoUse more liberal flake8 for tests
Petr Špaček [Wed, 23 Jun 2021 08:57:14 +0000 (10:57 +0200)] 
Use more liberal flake8 for tests

Ignore rule W402 (wrong import order) to enable use of
pytest.importorskip.

(cherry picked from commit 1a80e641e9085d25892bed17866d38e525cd3588)

4 years agoMerge branch 'pspacek/ci-jobs-interruptible-v9_16' into 'v9_16'
Petr Špaček [Tue, 9 Nov 2021 12:09:40 +0000 (12:09 +0000)] 
Merge branch 'pspacek/ci-jobs-interruptible-v9_16' into 'v9_16'

Automatically cancel CI jobs on outdated branches [v9_16]

See merge request isc-projects/bind9!5564

4 years agoAutomatically cancel CI jobs on outdated branches
Petr Špaček [Fri, 5 Nov 2021 10:39:07 +0000 (11:39 +0100)] 
Automatically cancel CI jobs on outdated branches

Gitlab feature
https://docs.gitlab.com/ee/ci/pipelines/settings.html#auto-cancel-redundant-pipelines
can automatically cancel jobs which operate on an outdated code, i.e. on
branches which received new commits while jobs with an older set of
commits are still running. For this feature to work jobs have to be
configured with boolean interruptible: true.

I think practically all of our current CI jobs can be cancelled,
so the option is now on by default for all jobs.

4 years agoMerge branch 'pspacek/clang-format-v9_16' into 'v9_16'
Petr Špaček [Tue, 2 Nov 2021 15:02:03 +0000 (15:02 +0000)] 
Merge branch 'pspacek/clang-format-v9_16' into 'v9_16'

retain diff output if clang-format changes something [v9_16]

See merge request isc-projects/bind9!5553

4 years agoretain diff output if clang-format changes something
Petr Špaček [Thu, 28 Oct 2021 14:39:20 +0000 (16:39 +0200)] 
retain diff output if clang-format changes something

It's major PITA trying to guess what exactly clang-format has changed,
so how CI stores patch file with changes which can be applied locally if
needed.

(cherry picked from commit ca4393fc9fe85d2e6b7012ebe6684d972d6e6c8f)

4 years agoMerge branch '2976-restore-xsltproc-discovery-for-statistics-system-test-9-16' into...
Mark Andrews [Sat, 30 Oct 2021 01:47:42 +0000 (01:47 +0000)] 
Merge branch '2976-restore-xsltproc-discovery-for-statistics-system-test-9-16' into 'v9_16'

Resolve "Restore 'xsltproc' discovery for statistics system test 9.16"

See merge request isc-projects/bind9!5532

4 years agoLook for xsltproc
Mark Andrews [Mon, 25 Oct 2021 01:15:42 +0000 (12:15 +1100)] 
Look for xsltproc

xsltproc is used by the statistics system test

4 years agoMerge branch '2972-rsa-keys-compare-typo-bug-v9_16' into 'v9_16'
Arаm Sаrgsyаn [Thu, 28 Oct 2021 15:36:24 +0000 (15:36 +0000)] 
Merge branch '2972-rsa-keys-compare-typo-bug-v9_16' into 'v9_16'

[v9_16] Fix a bug when comparing two RSA keys

See merge request isc-projects/bind9!5541

4 years agoAdd dst_key_pubcompare and dst_key_compare unit test
Aram Sargsyan [Wed, 27 Oct 2021 19:52:05 +0000 (19:52 +0000)] 
Add dst_key_pubcompare and dst_key_compare unit test

The dst_key_pubcompare() and dst_key_compare() didn't have a unit test,
add the unit tests which test comparing the same keys, different keys,
and, where possible, similar keys with a manually altered parameter.

dst_key_pubcompare() internally uses the *_todns() functions of the
lib/dns/openssl*_link.c modules.

dst_key_compare() internally uses the *_compare() functions of the
lib/dns/openssl*_link.c modules.

4 years agoAdd CHANGES note for [GL #2972]
Aram Sargsyan [Fri, 22 Oct 2021 13:38:45 +0000 (13:38 +0000)] 
Add CHANGES note for [GL #2972]

(cherry picked from commit 1ceb1f7ab09a2984ef976abcd33355eec48af7e9)

4 years agoFix a bug when comparing two RSA keys
Aram Sargsyan [Sat, 25 Sep 2021 14:03:27 +0000 (14:03 +0000)] 
Fix a bug when comparing two RSA keys

When comparing different parameters of two RSA keys there is a typo
which causes the "p" prime factors to not being compared.

Fix the typo.

(cherry picked from commit 930e4f52a56d501ae0deefa948d7f4b6bd5d8995)

4 years agoMerge branch 'michal/disable-pylint-warning-C0209-v9_16' into 'v9_16'
Michał Kępień [Thu, 28 Oct 2021 13:40:25 +0000 (13:40 +0000)] 
Merge branch 'michal/disable-pylint-warning-C0209-v9_16' into 'v9_16'

[v9_16] Disable PyLint warning C0209

See merge request isc-projects/bind9!5539

4 years agoDisable PyLint warning C0209
Michał Kępień [Thu, 28 Oct 2021 12:03:04 +0000 (14:03 +0200)] 
Disable PyLint warning C0209

PyLint 2.11 reports a new warning, C0209 (consider-using-f-string).
Since f-strings are only available in Python 3.6+, existing scripts
cannot be updated to use this feature just yet because they would stop
working with older Python versions.  Instead, disable PyLint warning
C0209 for the time being.  Sort all disabled warnings in .pylintrc.

(cherry picked from commit 860ca4e0efe3d1a2d63095e4720ccb56224b34f8)

4 years agoMerge branch 'v9_16_22-release' into 'v9_16'
Michał Kępień [Thu, 28 Oct 2021 10:27:09 +0000 (10:27 +0000)] 
Merge branch 'v9_16_22-release' into 'v9_16'

Merge 9.16.22 release branch

See merge request isc-projects/bind9!5536

4 years agoMove CHANGES entry for GL #2308
Michał Kępień [Thu, 28 Oct 2021 10:22:33 +0000 (12:22 +0200)] 
Move CHANGES entry for GL #2308

GL #2308 was originally referenced by CHANGES entry 5727.  However, the
corresponding code change turned out to be flawed and had to be reverted
in BIND 9.16.22, causing CHANGES entry 5727 to be removed on the release
branch.

Commit d329d47bae68c1cc90374397b4756a8f2487895e subsequently addressed
the flaw, so the fix for GL #2308 will be included in BIND 9.16.23.
Move the relevant CHANGES entry to reflect that.

4 years agoSet up release notes for BIND 9.16.23
Michał Kępień [Thu, 28 Oct 2021 10:22:33 +0000 (12:22 +0200)] 
Set up release notes for BIND 9.16.23

4 years agoMerge branch 'prep-release' into security-v9_16
Tinderbox User [Mon, 11 Oct 2021 15:18:47 +0000 (15:18 +0000)] 
Merge branch 'prep-release' into security-v9_16

4 years agoMerge branch 'michal/prepare-documentation-for-bind-9.16.22' into 'security-v9_16'
Michał Kępień [Mon, 11 Oct 2021 14:13:16 +0000 (14:13 +0000)] 
Merge branch 'michal/prepare-documentation-for-bind-9.16.22' into 'security-v9_16'

Prepare documentation for BIND 9.16.22

See merge request isc-private/bind9!326

4 years agoprep 9.16.22
Tinderbox User [Mon, 11 Oct 2021 15:17:56 +0000 (15:17 +0000)] 
prep 9.16.22

4 years agoMerge branch '2899-security-disable-lame-cache-v9_16' into 'security-v9_16'
Michał Kępień [Mon, 11 Oct 2021 12:07:45 +0000 (12:07 +0000)] 
Merge branch '2899-security-disable-lame-cache-v9_16' into 'security-v9_16'

[CVE-2021-25219] [v9_16] Disable "lame-ttl" cache

See merge request isc-private/bind9!323

4 years agoPrepare release notes for BIND 9.16.22
Michał Kępień [Mon, 11 Oct 2021 13:56:17 +0000 (15:56 +0200)] 
Prepare release notes for BIND 9.16.22

4 years agoAdd CHANGES and release note for [GL #2899]
Ondřej Surý [Fri, 24 Sep 2021 07:58:47 +0000 (09:58 +0200)] 
Add CHANGES and release note for [GL #2899]

4 years agoAdd release note for GL #2911
Michał Kępień [Mon, 11 Oct 2021 13:56:17 +0000 (15:56 +0200)] 
Add release note for GL #2911

4 years agoEnable lame response detection even with disabled lame cache
Ondřej Surý [Fri, 24 Sep 2021 07:48:50 +0000 (09:48 +0200)] 
Enable lame response detection even with disabled lame cache

Previously, when lame cache would be disabled by setting lame-ttl to 0,
it would also disable lame answer detection.  In this commit, we enable
the lame response detection even when the lame cache is disabled.  This
enables stopping answer processing early rather than going through the
whole answer processing flow.

4 years agoReorder release notes
Michał Kępień [Mon, 11 Oct 2021 13:56:17 +0000 (15:56 +0200)] 
Reorder release notes

4 years agoDisable lame-ttl cache
Ondřej Surý [Fri, 24 Sep 2021 07:35:11 +0000 (09:35 +0200)] 
Disable lame-ttl cache

The lame-ttl cache is implemented in ADB as per-server locked
linked-list "indexed" with <qname,qtype>.  This list has to be walked
every time there's a new query or new record added into the lame cache.
Determined attacker can use this to degrade performance of the resolver.

Resolver testing has shown that disabling the lame cache has little
impact on the resolver performance and it's a minimal viable defense
against this kind of attack.

4 years agoTweak and reword release notes
Michał Kępień [Mon, 11 Oct 2021 13:56:17 +0000 (15:56 +0200)] 
Tweak and reword release notes

4 years agoTweak and reword recent CHANGES entries
Michał Kępień [Mon, 11 Oct 2021 13:56:17 +0000 (15:56 +0200)] 
Tweak and reword recent CHANGES entries

4 years agoMerge branch 'each-test-fixes-v9_16' into 'v9_16'
Evan Hunt [Wed, 27 Oct 2021 20:21:58 +0000 (20:21 +0000)] 
Merge branch 'each-test-fixes-v9_16' into 'v9_16'

Fix test errors that caused intermittent failures

See merge request isc-projects/bind9!5534

4 years agoFix statistics test error
Evan Hunt [Sun, 17 Oct 2021 18:45:21 +0000 (11:45 -0700)] 
Fix statistics test error

The statistics system test sometimes needs a pause to wait for the
expected stats to be reported.

Also, the test for priming queries was ineffective; the result of
the grep was not being checked.

(cherry picked from commit c167feb1dc9d35bc8770c4311a0987f702a1da47)

4 years agoFix cds test error
Evan Hunt [Sun, 17 Oct 2021 18:45:21 +0000 (11:45 -0700)] 
Fix cds test error

The margin of error (up to 2 seconds) allowed for the inception time
in the cds system test was a bit too small, and has been increased to 3
seconds.

(cherry picked from commit 3ecaccb961bb1dd3a338a1c6ef26e009e4ea5451)

4 years agoFix catz test error
Evan Hunt [Sun, 17 Oct 2021 18:45:21 +0000 (11:45 -0700)] 
Fix catz test error

The catz system test included a test case that was looking for a single
answer record after an update, when it should have been looking for two.
The test usually passed because of timing - the first dig usually got a
response before the update was completed - but occasionally the update
processed fast enough for the test to fail. On investigation, it turned
out to be the test that was wrong.

(cherry picked from commit 9b6060c6c476998c9e5f8faf6169ab148dd9a103)

4 years agoFix digdelv test error
Evan Hunt [Sun, 17 Oct 2021 18:45:21 +0000 (11:45 -0700)] 
Fix digdelv test error

The digdelv system test has a test case in which stderr was
included in the dig output. When trace logging was in use,
this confused the grep and caused a spurious test failure.

(cherry picked from commit 21431206366e5c4f019f82e4e9b8e6963d3919a9)

4 years agoMerge branch '2947-unexpected-deletion-of-configured-catalog-zone-v9_16' into 'v9_16'
Mark Andrews [Wed, 27 Oct 2021 13:26:56 +0000 (13:26 +0000)] 
Merge branch '2947-unexpected-deletion-of-configured-catalog-zone-v9_16' into 'v9_16'

Prevent existing catalog zone entries being incorrectly deleted

See merge request isc-projects/bind9!5533

4 years agoCheck that existing catalog zone entries are preserved
Mark Andrews [Wed, 13 Oct 2021 06:39:00 +0000 (17:39 +1100)] 
Check that existing catalog zone entries are preserved

Update the 'catz' system test by adding tests that update an
catalog zone (catalog1.example) while preserving existing entries
(increase SOA serial) then check that catalog zone has transferred
and that the existing entries have not accidentally been removed
as a consequence (can return updated zone content).

(cherry picked from commit bf9c5698526f2d81cfcae0a4032e3bbd00bcb535)

4 years agoPrevent existing catalog zone entries being incorrectly deleted
Mark Andrews [Wed, 13 Oct 2021 06:06:48 +0000 (17:06 +1100)] 
Prevent existing catalog zone entries being incorrectly deleted

After receiving a new version of a catalog zone it is required
to merge it with the old version.

The algorithm walks through the new version's hash table and applies
the following logic:

1. If an entry from the new version does not exist in the old
   version, then it's a new entry, add the entry to the `toadd` hash
   table.
2. If the zone does not exist in the set of configured zones, because
   it was deleted via rndc delzone or it was removed from another
   catalog zone instance, then add into to the `toadd` hash table to
   be reinstantiated.
3. If an entry from the new version also exists in the old version,
   but is modified, then add the entry to the `tomod` hash table, then
   remove it from the old version's hash table.
4. If an entry from the new version also exists in the old version and
   is the same (unmodified) then just remove it from the old version's
   hash table.

The algorithm then deletes all the remaining zones which still exist
in the old version's hash table (because only the ones that don't
exist in the new version should now remain there), then adds the ones
that were added to the `toadd`, and modifies the ones that were added
to the `tomod`, completing the merge.

During a recent refactoring, the part when the entry should be
removed from the old version's hash table on condition (4.) above
was accidentally omitted, so the unmodified zones were remaining
in the old version's hash table and consequently being deleted.

(cherry picked from commit 63145fb1d328eb66f9c786d2273bc2e3f6a3ecf5)

4 years agoMerge branch '2458-run-asan-and-tsan-with-latest-stable-gcc-v9_16' into 'v9_16'
Michal Nowak [Fri, 22 Oct 2021 13:22:12 +0000 (13:22 +0000)] 
Merge branch '2458-run-asan-and-tsan-with-latest-stable-gcc-v9_16' into 'v9_16'

[v9_16] Use Fedora image for GCC ASAN and TSAN CI jobs

See merge request isc-projects/bind9!5527

4 years agoDrop GCC ThreadSanitizer suppresion of fstrm-originated calls
Michal Nowak [Wed, 20 Oct 2021 17:47:17 +0000 (19:47 +0200)] 
Drop GCC ThreadSanitizer suppresion of fstrm-originated calls

With custom fstrm library in the Fedora image which uses mutexes instead
of barriers ThreadSanitizer suppression with GCC is not necessary
anymore.

(cherry picked from commit 6179011a50381d2fdee865cefdd705c41e5662cf)

4 years agoRename ASAN_OPTIONS_COMMON to ASAN_OPTIONS
Michal Nowak [Wed, 20 Oct 2021 14:06:45 +0000 (16:06 +0200)] 
Rename ASAN_OPTIONS_COMMON to ASAN_OPTIONS

Renaming the variable removes some of the complexity.

(cherry picked from commit 1f4a56cb3e826dd61effae29d3fa3354879463cf)

4 years agoUse Fedora image for GCC ASAN and TSAN CI jobs
Michal Nowak [Thu, 18 Feb 2021 15:19:57 +0000 (16:19 +0100)] 
Use Fedora image for GCC ASAN and TSAN CI jobs

For the sake of running ASAN and TSAN jobs with the latest stable GCC,
replace "base image" (Debian Buster with GCC 8.3.0) with Fedora 34 image
with GCC 11.

(cherry picked from commit 6ab2d8968603b624772f5fb82c09373a8a8d79c0)

4 years agoMerge branch 'mnowak/debian-11-bullseye-v9_16' into 'v9_16'
Michal Nowak [Fri, 22 Oct 2021 09:05:34 +0000 (09:05 +0000)] 
Merge branch 'mnowak/debian-11-bullseye-v9_16' into 'v9_16'

[v9_16] Add Debian 11 (bullseye)

See merge request isc-projects/bind9!5525

4 years agoDo not spawn Debian 9 CI jobs in merge requests
Michal Nowak [Thu, 21 Oct 2021 11:43:42 +0000 (13:43 +0200)] 
Do not spawn Debian 9 CI jobs in merge requests

(cherry picked from commit 1b9a9c2829379d771249c8b508855d0863dcd919)

4 years agoAdd Debian 11 (bullseye)
Michal Nowak [Tue, 17 Aug 2021 08:38:14 +0000 (10:38 +0200)] 
Add Debian 11 (bullseye)

(cherry picked from commit 2b5dfae5de5cc65258073d8cd4c650aa27dac3ea)