]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
4 years agoMention DoT/DoH related RFCs in the ARM
Artem Boldariev [Thu, 10 Feb 2022 14:29:57 +0000 (16:29 +0200)] 
Mention DoT/DoH related RFCs in the ARM

Mention RFC 7858 (DoT), 8484 (DoH), and 8945 (XoT).

4 years agoRemove rfc-compliance list in plaintext - ARM deduplication
Petr Špaček [Thu, 10 Feb 2022 13:03:39 +0000 (14:03 +0100)] 
Remove rfc-compliance list in plaintext - ARM deduplication

The plaintext version is now fully replaced by the doc/arm/general.rst.

4 years agoReorder list of supported RFCs in more user-oriented manner
Petr Špaček [Wed, 9 Feb 2022 17:42:54 +0000 (18:42 +0100)] 
Reorder list of supported RFCs in more user-oriented manner

For users it's not really important if a RFC is Internet Standard,
Proposed Standard, or Experimental. RFCs are now regrouped by
"Protocol", Best Current Practice, and "catch all" category FYI.

4 years agoReplace obsolete RFC2845 reference with RFC8945 (TSIG)
Petr Špaček [Wed, 9 Feb 2022 17:28:33 +0000 (18:28 +0100)] 
Replace obsolete RFC2845 reference with RFC8945 (TSIG)

4 years agoRemove special chapter about IPv6 address formats from ARM
Petr Špaček [Wed, 9 Feb 2022 17:17:19 +0000 (18:17 +0100)] 
Remove special chapter about IPv6 address formats from ARM

In 2022, IPv6 is not anything unusual, and it was really odd
to have it in a separate section next to a huge list of RFCs.

Fixes: #1918
4 years agoReplace obsolete RFC6944 reference with RFC8624 (DNSSEC algorithm status)
Petr Špaček [Wed, 9 Feb 2022 15:42:30 +0000 (16:42 +0100)] 
Replace obsolete RFC6944 reference with RFC8624 (DNSSEC algorithm status)

4 years agoReplace obsolete RFC5966 reference with RFC7766 (TCP)
Petr Špaček [Wed, 9 Feb 2022 15:40:15 +0000 (16:40 +0100)] 
Replace obsolete RFC5966 reference with RFC7766 (TCP)

4 years agoReplace obsolete RFC4408 reference with RFC7208 (SPF)
Petr Špaček [Wed, 9 Feb 2022 15:39:02 +0000 (16:39 +0100)] 
Replace obsolete RFC4408 reference with RFC7208 (SPF)

4 years agoReplace obsolete RFC2915 reference with RFC3403 (NAPTR)
Petr Špaček [Wed, 9 Feb 2022 15:35:20 +0000 (16:35 +0100)] 
Replace obsolete RFC2915 reference with RFC3403 (NAPTR)

4 years agoAdd link to RFC8749 (DLV is historic)
Petr Špaček [Wed, 9 Feb 2022 15:25:55 +0000 (16:25 +0100)] 
Add link to RFC8749 (DLV is historic)

4 years agoAdd newer version of IDNA RFC to docs
Petr Špaček [Wed, 9 Feb 2022 15:21:29 +0000 (16:21 +0100)] 
Add newer version of IDNA RFC to docs

4 years agoRemove obsolete RFCs from documentation
Petr Špaček [Wed, 9 Feb 2022 15:19:20 +0000 (16:19 +0100)] 
Remove obsolete RFCs from documentation

There is little point of listing all of the obsolete RFCs. I think it is
more likely confuse people than to do anything useful.

4 years agoReplace obsolete RFC6488 reference with RFC8659 (CAA)
Petr Špaček [Wed, 9 Feb 2022 15:14:43 +0000 (16:14 +0100)] 
Replace obsolete RFC6488 reference with RFC8659 (CAA)

4 years agoRemove obsolete book reference from ARM
Petr Špaček [Wed, 9 Feb 2022 15:05:31 +0000 (16:05 +0100)] 
Remove obsolete book reference from ARM

4 years agoUse Sphinx footnotes for DNS Reference Information
Petr Špaček [Fri, 21 Jan 2022 16:15:32 +0000 (17:15 +0100)] 
Use Sphinx footnotes for DNS Reference Information

It limits risk of errors while doing updates, which are next in the
pipeline.

4 years agoMerge branch '3151-bump-minimal-automake-version-to-1.14' into 'main'
Ondřej Surý [Mon, 14 Feb 2022 08:45:57 +0000 (08:45 +0000)] 
Merge branch '3151-bump-minimal-automake-version-to-1.14' into 'main'

Bump the required automake version to 1.14

Closes #3151

See merge request isc-projects/bind9!5825

4 years agoBump the required automake version to 1.14
Ondřej Surý [Mon, 14 Feb 2022 08:17:41 +0000 (09:17 +0100)] 
Bump the required automake version to 1.14

After the build system refactoring, we no longer call AM_PROG_CC_C_O
because it is obsolescent macro.  According to the automake manual the
`AC_PROG_CC` has been rewritten in automake 1.14 to not required the
call, thus we need to require at least automake version 1.14.

4 years agoMerge branch 'ondrej/change-bug-reporting-address' into 'main'
Ondřej Surý [Fri, 11 Feb 2022 07:52:19 +0000 (07:52 +0000)] 
Merge branch 'ondrej/change-bug-reporting-address' into 'main'

Change the bug reporting address from email to gitlab URI

See merge request isc-projects/bind9!5817

4 years agoChange the bug reporting address from email to gitlab URI
Ondřej Surý [Wed, 2 Feb 2022 09:50:45 +0000 (10:50 +0100)] 
Change the bug reporting address from email to gitlab URI

In autoconf, the AC_INIT() accepts bugreport address for reporting
issues (f.e. when the test suite fails).  Instead of providing generic
emails address, change this to the address where to report with the
default Bug template applied.

4 years agoMerge branch '3137-create-new-log-messages-when-entering-and-exiting-exlusive-task...
Ondřej Surý [Thu, 10 Feb 2022 20:21:18 +0000 (20:21 +0000)] 
Merge branch '3137-create-new-log-messages-when-entering-and-exiting-exlusive-task-mode' into 'main'

Log when entering and exiting task exclusive mode

Closes #3137

See merge request isc-projects/bind9!5814

4 years agoAdd CHANGES and release note for [GL #3137]
Ondřej Surý [Thu, 10 Feb 2022 08:30:26 +0000 (09:30 +0100)] 
Add CHANGES and release note for [GL #3137]

4 years agoLog when starting and ending task exclusive mode
Ondřej Surý [Thu, 10 Feb 2022 08:21:26 +0000 (09:21 +0100)] 
Log when starting and ending task exclusive mode

The task exclusive mode stops all processing (tasks and networking IO)
except the designated exclusive task events.  This has impact on the
operation of the server.  Add log messages indicating when we start the
exclusive mode, and when we end exclusive task mode.

4 years agoMerge branch '1087-rrset-strict-stats' into 'main'
Ondřej Surý [Thu, 10 Feb 2022 17:21:16 +0000 (17:21 +0000)] 
Merge branch '1087-rrset-strict-stats' into 'main'

In developer mode assert if statistics counter underflows

Closes #1087

See merge request isc-projects/bind9!2453

4 years agoAssert if statistics counter underflows in the developer mode
Ondřej Surý [Mon, 17 Jan 2022 11:39:56 +0000 (12:39 +0100)] 
Assert if statistics counter underflows in the developer mode

There are reported occurences where the statitic counters underflows and
starts reporting non-sense.

Add a check for the underflow, when ``named`` is compiled in the
developer mode.

4 years agoMerge branch '2717-fix-sysconfdir-in-manpages' into 'main'
Ondřej Surý [Thu, 10 Feb 2022 16:07:43 +0000 (16:07 +0000)] 
Merge branch '2717-fix-sysconfdir-in-manpages' into 'main'

Use compile-time paths in the manual pages

Closes #2717

See merge request isc-projects/bind9!5749

4 years agoAdd CHANGES note for [GL #2717]
Ondřej Surý [Mon, 24 Jan 2022 14:36:17 +0000 (15:36 +0100)] 
Add CHANGES note for [GL #2717]

4 years agoUse compile-time paths in the manual pages
Ondřej Surý [Mon, 24 Jan 2022 11:13:24 +0000 (12:13 +0100)] 
Use compile-time paths in the manual pages

Replace the hard-coded paths for various BIND 9 files (configuration,
pid, etc.) in the man pages and ARM with compile-time values using the
sphinx-build replace system.

This is more complicated, because the restructured text specification
doesn't allow |substitions| inside ``code-blocks``, so for each specific
file we had to create own substition which is sub-optimal, but it is
only way how to do this without adding Sphinx extension.

4 years agoMerge branch '3130-cleanup-pthread-api-usage' into 'main'
Ondřej Surý [Wed, 9 Feb 2022 16:40:14 +0000 (16:40 +0000)] 
Merge branch '3130-cleanup-pthread-api-usage' into 'main'

Remove unused functions from isc_thread API

Closes #3130

See merge request isc-projects/bind9!5805

4 years agoRemove unused functions from isc_thread API
Ondřej Surý [Wed, 9 Feb 2022 09:00:59 +0000 (10:00 +0100)] 
Remove unused functions from isc_thread API

The isc_thread_setaffinity call was removed in !5265 and we are not
going to restore it because it was proven that the performance is better
without it.  Additionally, remove the already disabled cpu system test.

The isc_thread_setconcurrency function is unused and also calling
pthread_setconcurrency() on Linux has no meaning, formerly it was
added because of Solaris in 2001 and it was removed when taskmgr was
refactored to run on top of netmgr in !4918.

4 years agoMerge branch '2599-run-less-stable-unit-tests-in-aws' into 'main'
Michal Nowak [Wed, 9 Feb 2022 11:29:27 +0000 (11:29 +0000)] 
Merge branch '2599-run-less-stable-unit-tests-in-aws' into 'main'

Add CI job with unstable netmgr unit tests

Closes #2599

See merge request isc-projects/bind9!4841

4 years agoRun unstable unit tests in CI
Michal Nowak [Fri, 26 Mar 2021 10:51:46 +0000 (11:51 +0100)] 
Run unstable unit tests in CI

Running unstable unit tests in CI should help with making sure they
don't fail permanently without the fact being noticed in daily
pipelines.

4 years agoMerge branch 'mnowak/fix-lsan-suppression-file-path' into 'main'
Michal Nowak [Mon, 7 Feb 2022 12:32:32 +0000 (12:32 +0000)] 
Merge branch 'mnowak/fix-lsan-suppression-file-path' into 'main'

Fix path to suppr-lsan.txt file

See merge request isc-projects/bind9!5791

4 years agoFix path to suppr-lsan.txt file
Michal Nowak [Wed, 2 Feb 2022 09:39:53 +0000 (10:39 +0100)] 
Fix path to suppr-lsan.txt file

The "suppr-lsan.txt" file needs to be referenced with GitLab-specific
variable, otherwise AddressSanitizer won't find it outside the
"isc-projects" project group.

This has been introduced in 8a4f098dee9056cec29366424d74ef78eea81184.

4 years agoMerge branch 'matthijs-engine_pkcs11-system-test' into 'main'
Matthijs Mekking [Fri, 4 Feb 2022 13:48:38 +0000 (13:48 +0000)] 
Merge branch 'matthijs-engine_pkcs11-system-test' into 'main'

Add engine_pkcs11 system test

See merge request isc-projects/bind9!5727

4 years agoFix keyfromlabel test, missing status update
Matthijs Mekking [Fri, 4 Feb 2022 10:55:46 +0000 (11:55 +0100)] 
Fix keyfromlabel test, missing status update

Fix a missing status=$((status+ret)) in the keyfromlabel system test,
which would ignore the error if ZSK key creation failed.

4 years agoUse unique SoftHSMv2 token label for the "keyfromlabel" test
Aram Sargsyan [Thu, 3 Feb 2022 10:59:45 +0000 (10:59 +0000)] 
Use unique SoftHSMv2 token label for the "keyfromlabel" test

When there are more than one tokens initialized in SoftHSMv2,
care must be taken to correctly identify them.

Use a SoftHSMv2 token label which will uniquely identify the
token used for this test.

Use the "--token-label" parameter for the `pkcs11-tool` program
to make sure that it finds and uses the correct token.

4 years agoFix keyfromlabel echo output
Matthijs Mekking [Mon, 31 Jan 2022 15:53:40 +0000 (16:53 +0100)] 
Fix keyfromlabel echo output

The 'id' variable is either keyfromlabel-ksk or keyfromlabel-zsk and is
set in the 'keygen' and 'keyfromlabel' functions. It should not be used
outside these functions.

4 years agoAdd test for assertion failure in pk11_numbits
Matthijs Mekking [Tue, 18 Jan 2022 08:36:59 +0000 (09:36 +0100)] 
Add test for assertion failure in pk11_numbits

This test was originally in the pkcs11 system test. While this crash
happened in the native pkcs11 of BIND 9, and that code has been
removed in 9.17, there is no need for this test. Nevertheless, it
doesn't hurt having the test case persist.

4 years agoAdd system test for engine_pkcs11
Matthijs Mekking [Mon, 17 Jan 2022 10:39:02 +0000 (11:39 +0100)] 
Add system test for engine_pkcs11

Add a system test for engine_pkcs11 interactions that replaces the
tests that are done in the native PKCS#11 system test.

The native PKCS#11 code was removed in 9.17 but without copying the
pkcs11 system test.

4 years agoMerge branch 'each-missing-relnotes' into 'main'
Evan Hunt [Wed, 2 Feb 2022 20:00:31 +0000 (20:00 +0000)] 
Merge branch 'each-missing-relnotes' into 'main'

Release notes for [GL #5555] and [GL 5757]

See merge request isc-projects/bind9!5796

4 years agoRelease notes for [GL #3082] and [GL #3111]
Evan Hunt [Wed, 2 Feb 2022 17:57:15 +0000 (09:57 -0800)] 
Release notes for [GL #3082] and [GL #3111]

4 years agoMerge branch '2974-improve-directory-documentation' into 'main'
Petr Špaček [Wed, 2 Feb 2022 11:27:30 +0000 (11:27 +0000)] 
Merge branch '2974-improve-directory-documentation' into 'main'

Clarify effect of "directory" configuration option

Closes #2974

See merge request isc-projects/bind9!5531

4 years agoClarify effect of "directory" configuration option
Ondřej Surý [Sat, 23 Oct 2021 21:37:57 +0000 (23:37 +0200)] 
Clarify effect of "directory" configuration option

The "directory" configuration options affects the configuration listed
after the directive but not before which may affect ``include``
directive with relative file paths.

4 years agoMerge branch '3125-log-hard-quota-when-not-accepting-the-connection' into 'main'
Ondřej Surý [Tue, 1 Feb 2022 20:38:01 +0000 (20:38 +0000)] 
Merge branch '3125-log-hard-quota-when-not-accepting-the-connection' into 'main'

Add log message when hard quota is reached in TCP accept

Closes #3125

See merge request isc-projects/bind9!5788

4 years agoAdd CHANGES and release notes for [GL #3125]
Ondřej Surý [Tue, 1 Feb 2022 17:41:46 +0000 (18:41 +0100)] 
Add CHANGES and release notes for [GL #3125]

4 years agoAdd log message when hard quota is reached in TCP accept
Ondřej Surý [Tue, 1 Feb 2022 17:36:12 +0000 (18:36 +0100)] 
Add log message when hard quota is reached in TCP accept

When isc_quota_attach_cb() API returns ISC_R_QUOTA (meaning hard quota
was reached) the accept_connection() would return without logging a
message about quota reached.

Change the connection callback to log the quota reached message.

4 years agoMerge branch '3120-recent-editions-9-17-22-onwards-of-arm-have-many-empty-grammar...
Petr Špaček [Tue, 1 Feb 2022 17:15:08 +0000 (17:15 +0000)] 
Merge branch '3120-recent-editions-9-17-22-onwards-of-arm-have-many-empty-grammar-descriptions' into 'main'

Fix empty grammar descriptions in the ARM

Closes #3120

See merge request isc-projects/bind9!5784

4 years agoAdd missing parental-agents grammar generation
Petr Špaček [Tue, 1 Feb 2022 12:04:21 +0000 (13:04 +0100)] 
Add missing parental-agents grammar generation

Formerly parental-agents grammar was an exception and it did not
auto-generate itself from source code. From now on it is generated using
the same mechanism as other grammars.

For consistency with rest of the system, I've also renamed the grammar
file and the link anchors from "parentals" to "parental-agents".

Technically this is fixup for commit
0311705d4b36c536dd541b0b193bd01b68fe90b3.

Related: !5234

4 years agoRegenerate .rst files with grammars after changes to rst generators
Mark Andrews [Tue, 1 Feb 2022 06:51:38 +0000 (17:51 +1100)] 
Regenerate .rst files with grammars after changes to rst generators

    $ make -C doc/misc all

4 years agoFix grammar generators to produce renderable include files in rst format
Mark Andrews [Tue, 1 Feb 2022 06:50:09 +0000 (17:50 +1100)] 
Fix grammar generators to produce renderable include files in rst format

The missing `::` in the .rst files caused grammar section in docs to
render empty.

The `::` was accidentally removed in an unrelated commit
58bd26b6cf7bac3f614b6614cd2aff6075b6f9fa which was supposed to update
only copyright headers.

Fixes: #3120
4 years agoAdd missing rst-grammars.pl dependecy to config grammar build
Mark Andrews [Tue, 1 Feb 2022 06:49:19 +0000 (17:49 +1100)] 
Add missing rst-grammars.pl dependecy to config grammar build

4 years agoMerge branch '3117-9-18-0-nslookup-debugging-output' into 'main'
Mark Andrews [Mon, 31 Jan 2022 23:20:12 +0000 (23:20 +0000)] 
Merge branch '3117-9-18-0-nslookup-debugging-output' into 'main'

Resolve "9.18.0 nslookup debugging output"

Closes #3117

See merge request isc-projects/bind9!5780

4 years agoCheck that no debugging / errors are reported normally
Mark Andrews [Mon, 31 Jan 2022 07:00:06 +0000 (18:00 +1100)] 
Check that no debugging / errors are reported normally

4 years agomake nslookup test shellcheck safe
Evan Hunt [Mon, 31 Jan 2022 22:11:22 +0000 (14:11 -0800)] 
make nslookup test shellcheck safe

4 years agoRemove spurious 'debugging = true;'
Mark Andrews [Mon, 31 Jan 2022 06:35:00 +0000 (17:35 +1100)] 
Remove spurious 'debugging = true;'

This appears to be left over from the developement phase while
adding reference counting to the lookup structure.

4 years agoMerge branch '3088-cleanup-dns_dnsseckey_create' into 'main'
Evan Hunt [Mon, 31 Jan 2022 19:12:12 +0000 (19:12 +0000)] 
Merge branch '3088-cleanup-dns_dnsseckey_create' into 'main'

remove error handling code around dns_dnsseckey_create()

Closes #3088

See merge request isc-projects/bind9!5707

4 years agoremove error handling code around dns_dnsseckey_create()
Evan Hunt [Mon, 10 Jan 2022 19:34:30 +0000 (11:34 -0800)] 
remove error handling code around dns_dnsseckey_create()

this function can no longer fail, so error checking is not necessary.

4 years agoMerge branch 'each-dlz-pthreads' into 'main'
Evan Hunt [Mon, 31 Jan 2022 18:37:00 +0000 (18:37 +0000)] 
Merge branch 'each-dlz-pthreads' into 'main'

complete removal of !PTHREADS code from DLZ modules

See merge request isc-projects/bind9!5779

4 years agocomplete removal of !PTHREADS code from DLZ modules
Evan Hunt [Fri, 28 Jan 2022 23:41:04 +0000 (15:41 -0800)] 
complete removal of !PTHREADS code from DLZ modules

DLZ modules no longer support being built without threads,
so the "#if PTHREADS" conditionals were no longer necessary,
and were also causing errors in some of the modules due to
PTHREADS no longer being defined in dlz_pthread.h.

4 years agoMerge branch 'each-fix-contrib-dlz' into 'main'
Evan Hunt [Fri, 28 Jan 2022 00:01:29 +0000 (00:01 +0000)] 
Merge branch 'each-fix-contrib-dlz' into 'main'

update dlz_minimal.h

See merge request isc-projects/bind9!5774

4 years agoupdate dlz_minimal.h
Evan Hunt [Thu, 27 Jan 2022 23:11:42 +0000 (15:11 -0800)] 
update dlz_minimal.h

the addition of support for ECS client information in DLZ
modules omitted some necessary changes to build modules
in contrib.

4 years agoMerge branch 'each-dns-clientinfo' into 'main'
Evan Hunt [Thu, 27 Jan 2022 22:33:56 +0000 (22:33 +0000)] 
Merge branch 'each-dns-clientinfo' into 'main'

allow dns_clientinfo to store client ECS data

Closes #3082

See merge request isc-projects/bind9!5555

4 years agoCHANGES for [GL #3082]
Evan Hunt [Thu, 27 Jan 2022 21:54:44 +0000 (13:54 -0800)] 
CHANGES for [GL #3082]

4 years agotest ECS information is passed in dlzexternal
Evan Hunt [Wed, 3 Nov 2021 06:06:10 +0000 (23:06 -0700)] 
test ECS information is passed in dlzexternal

the dlzexternal test driver now includes ECS, if present in the
query, in the TXT record returned for QNAME "source-addr".

4 years agoextend DLZ interface and example with ECS support
Petr Špaček [Wed, 3 Nov 2021 05:43:30 +0000 (22:43 -0700)] 
extend DLZ interface and example with ECS support

Apparently we forgot about DLZ when updating DNS_CLIENTINFO_VERSION
constant for ECS, which is at value "3" since ECS was introduced.

The code in example drivers and tests now hardcodes version numbers
2 (without ECS) and 3 (with ECS) depending on what a given code path
requires.

4 years agoallow dns_clientinfo to store client ECS data
Evan Hunt [Wed, 3 Nov 2021 05:38:45 +0000 (22:38 -0700)] 
allow dns_clientinfo to store client ECS data

this brings DNS_CLIENTINFO_VERSION into line with the subscription
branch so that fixes applied to clientinfo processing can also be
applied to the main branch without diverging.

4 years agoMerge branch 'mnowak/drop-some-system-test-scrips' into 'main'
Michal Nowak [Thu, 27 Jan 2022 14:45:42 +0000 (14:45 +0000)] 
Merge branch 'mnowak/drop-some-system-test-scrips' into 'main'

Drop some system test scripts

See merge request isc-projects/bind9!5745

4 years agoClean up test.output.* references
Michal Nowak [Wed, 26 Jan 2022 13:02:22 +0000 (14:02 +0100)] 
Clean up test.output.* references

test.output.* files are no longer created by the system test framework.
Remove all references to these files from the source tree.

4 years agoDrop systests.output references from system test
Michal Nowak [Thu, 20 Jan 2022 12:43:43 +0000 (13:43 +0100)] 
Drop systests.output references from system test

Since "runall.sh" script removal systests.output file is not being
created and its references are useless.

4 years agoDrop support for sequential system tests
Michal Nowak [Wed, 26 Jan 2022 12:49:32 +0000 (13:49 +0100)] 
Drop support for sequential system tests

System test used to have sequential system tests, which can't run in
parallel with the rest of system tests. As there are no such tests
anymore the underlying infrastructure can be dropped.

4 years agoDrop bin/tests/system/parallel.sh
Michal Nowak [Thu, 20 Jan 2022 12:11:49 +0000 (13:11 +0100)] 
Drop bin/tests/system/parallel.sh

"parallel.sh" script was used on Windows to run system tests in
parallel. Since Windows support was removed from BIND 9, the script is
not needed anymore.

4 years agoDrop testsummary.sh
Michal Nowak [Mon, 14 Dec 2020 19:40:58 +0000 (20:40 +0100)] 
Drop testsummary.sh

testsummary.sh was not updated after build system rewrite to Autotools,
and needs to be fixed to produce test summary and core dump, assertion
failures, and ThreadSanitizer reports.

Given that all of this is provided by Autotools and run.sh already,
there's little use to testsummary.sh script and should be dropped.

4 years agoMerge branch '3108-cacheline-detection-propagate' into 'main'
Ondřej Surý [Thu, 27 Jan 2022 12:06:55 +0000 (12:06 +0000)] 
Merge branch '3108-cacheline-detection-propagate' into 'main'

Actually use detected cache line size

Closes #3108

See merge request isc-projects/bind9!5758

4 years agoAdd CHANGES note for [GL #3108]
Ondřej Surý [Thu, 27 Jan 2022 11:29:44 +0000 (12:29 +0100)] 
Add CHANGES note for [GL #3108]

4 years agoUse detected cache line size
Petr Menšík [Tue, 25 Jan 2022 22:26:27 +0000 (23:26 +0100)] 
Use detected cache line size

IBM power architecture has L1 cache line size equal to 128.  Take
advantage of that on that architecture, do not force more common value
of 64.  When it is possible to detect higher value, use that value
instead.  Keep the default to be 64.

4 years agoMerge branch '3115-qname-wait-recurse-typo' into 'main'
Ondřej Surý [Thu, 27 Jan 2022 11:53:54 +0000 (11:53 +0000)] 
Merge branch '3115-qname-wait-recurse-typo' into 'main'

Fix typo in qname-wait-recurse

Closes #3115

See merge request isc-projects/bind9!5768

4 years agoFix typo in qname-wait-recurse
Ondřej Surý [Thu, 27 Jan 2022 11:51:06 +0000 (12:51 +0100)] 
Fix typo in qname-wait-recurse

In the RPZ documentation, there's a mistake where it states that the
default behavior will be disabled by setting `qname-wait-recurse yes;`
while in fact it's opposite `qname-wait-recurse no;`.

This affects only the RST documentation.

4 years agoMerge branch '1729-remove-unused-helper-scripts-from-bin-tests-system' into 'main'
Michal Nowak [Thu, 27 Jan 2022 11:48:11 +0000 (11:48 +0000)] 
Merge branch '1729-remove-unused-helper-scripts-from-bin-tests-system' into 'main'

Resolve "Remove unused helper scripts from bin/tests/system/"

Closes #1729

See merge request isc-projects/bind9!4489

4 years agoDrop runall.sh
Michal Nowak [Tue, 18 Jan 2022 18:39:37 +0000 (19:39 +0100)] 
Drop runall.sh

runall.sh was mainly used on Windows and as it's support was removed
from the "main" branch the script is not needed anymore.

Also, remove bin/tests/system/README text on running multiple system
test suites simultaneously with runall.sh as that support was not
present in the script anyway.

4 years agoDrop unused @DNSTAP@ label in conf.sh.in
Michal Nowak [Thu, 10 Dec 2020 14:15:50 +0000 (15:15 +0100)] 
Drop unused @DNSTAP@ label in conf.sh.in

@DNSTAP@ label does not have adjacent AC_SUBST() call and is therefore
unused.

4 years agorrsetorder should use stop_server() in tests.sh
Michal Nowak [Thu, 10 Dec 2020 13:33:51 +0000 (14:33 +0100)] 
rrsetorder should use stop_server() in tests.sh

4 years agoDrop bin/tests/system/setup.sh
Michal Nowak [Thu, 10 Dec 2020 13:10:49 +0000 (14:10 +0100)] 
Drop bin/tests/system/setup.sh

bin/tests/system/setup.sh just executes setup.sh script of a particular
system test in the directory of the system test. This does not seems to
be useful enough to maintain it.

4 years agoDrop stopall.sh
Michal Nowak [Thu, 10 Dec 2020 12:53:44 +0000 (13:53 +0100)] 
Drop stopall.sh

stopall.sh script takes almost 2 minutes to go thru all test
subdirectories (due to a sleep in stop.pl) and does not seems to be
efficient way to stop manually started tests.

4 years agoMerge branch 'matthijs-keyfromlabel-system-test' into 'main'
Matthijs Mekking [Thu, 27 Jan 2022 10:07:57 +0000 (10:07 +0000)] 
Merge branch 'matthijs-keyfromlabel-system-test' into 'main'

Add keyfromlabel system test

Closes #3092

See merge request isc-projects/bind9!5312

4 years agoUpdate pkcs11 documentation on openssl_conf
Matthijs Mekking [Fri, 14 Jan 2022 10:30:06 +0000 (11:30 +0100)] 
Update pkcs11 documentation on openssl_conf

The user should make sure there are no other 'openssl_conf = ...' lines
in the file.

4 years agoCreate keys with pkcs11-tool --id
Matthijs Mekking [Tue, 11 Jan 2022 08:04:55 +0000 (09:04 +0100)] 
Create keys with pkcs11-tool --id

The keyfromlabel system ECDSA tests sometimes fail. When this happens
the ZSK and KSK key id values differ by 1, which is an indication that
the same key is used for both DNSKEY records.

When the private key is retrieved with 'ENGINE_load_private_key()', the
public key is already set. But sometimes that key differs from the key
which was retrieved with 'ENGINE_load_public_key()'.

The libp11 source code uses id to find the key and without IDs all the
keys are "equal", so it is returning the first key in the array of the
enumerated keys instead of the matching key. In our test we didn't use
'--id', just '--label'. With this change, the system test should no
longer fail intermittently.

Note this is only an issue for ECDSA keys, not RSA keys.

4 years agoSuppressing memory leaks procuded by LeakSanitizer
Matthijs Mekking [Wed, 22 Dec 2021 15:53:30 +0000 (16:53 +0100)] 
Suppressing memory leaks procuded by LeakSanitizer

These memory leaks are a known issue in libp11: From Timo Teras:

The relevant code is:

  https://github.com/OpenSC/libp11/blob/master/src/eng_front.c#L114-L123

The authors of libp11 did not get the locking right and decided
that having intentional memory leaks is better than risking a deadlock.

The leak logs indicate that it is the cached structures that should
have been freed.

These are not a run-time leaks, so suppressing these leaks is probably
okay.

4 years agoAdd system test for dnssec-keyfromlabel
Matthijs Mekking [Mon, 15 Nov 2021 09:23:04 +0000 (10:23 +0100)] 
Add system test for dnssec-keyfromlabel

Add missing system test for dnssec-keyfromlabel. Test for various
algorithms that we can generate key files from a key that is stored in a
HSM, and that those keys can be used for signing with dnssec-signzone.

4 years agoUpdate .gitlab-ci.yml with openssl setup
Matthijs Mekking [Thu, 11 Nov 2021 08:35:46 +0000 (09:35 +0100)] 
Update .gitlab-ci.yml with openssl setup

GitLab CI needs to know about some environment variables that will
tell where OpenSSL and SoftHSM2 is installed. This is done in the
image, making the prepare-softhsm2.sh script obsolete.

The SoftHSM2 module location is system specific.

4 years agoRemove prepare-softhsm2.sh from runtime test
Matthijs Mekking [Mon, 13 Dec 2021 16:10:56 +0000 (17:10 +0100)] 
Remove prepare-softhsm2.sh from runtime test

This script is obsoleted because SoftHSM2 is now installed in the
image.

4 years agoAdd CHANGES for keyfromlabel test
Matthijs Mekking [Thu, 11 Nov 2021 08:37:33 +0000 (09:37 +0100)] 
Add CHANGES for keyfromlabel test

4 years agoMerge branch 'mnowak/remove-leftover-test-code-for-windows' into 'main'
Michal Nowak [Thu, 27 Jan 2022 09:34:52 +0000 (09:34 +0000)] 
Merge branch 'mnowak/remove-leftover-test-code-for-windows' into 'main'

Remove leftover test code for Windows

See merge request isc-projects/bind9!5739

4 years agoRemove leftover test code for Windows
Evan Hunt [Fri, 15 Oct 2021 07:05:36 +0000 (00:05 -0700)] 
Remove leftover test code for Windows

- Removed all code that only runs under CYGWIN, and made all
  code that doesn't run under CYGWIN non-optional.
- Removed the $TP variable which was used to add optional
  trailing dots to filenames; they're no longer optional.
- Removed references to pssuspend and dos2unix.
- No need to use environment variables for diff and kill.
- Removed uses of "tr -d '\r'"; this was a workaround for
  a cygwin regex bug that is no longer needed.

4 years agoMerge branch 'michal/misc-test-framework-fixes' into 'main'
Michał Kępień [Wed, 26 Jan 2022 14:21:53 +0000 (14:21 +0000)] 
Merge branch 'michal/misc-test-framework-fixes' into 'main'

Miscellaneous test framework fixes

See merge request isc-projects/bind9!5759

4 years agoFix waiting for lock file removal upon exit
Michał Kępień [Wed, 26 Jan 2022 14:18:43 +0000 (15:18 +0100)] 
Fix waiting for lock file removal upon exit

Commit c787a539d2a931ba9023677c1c269ed191455512 fixed a certain class of
intermittent system test failures caused by named instances unable to
restart.  The root cause was bin/tests/system/stop.pl returning without
waiting for a named instance to remove its lock file.

Later on, it turned out that the above change causes other issues on
Windows due to the way named handles signals on that platform.  Commit
761ba4514f7eceab8019d71dc9cabd269d274597 intended to address those
issues by making the server_lock_file() subroutine in
bin/tests/system/stop.pl return an empty value on Windows, in order to
prevent the script for waiting for lock file cleanup on that platform.
Note, however, that Windows detection in that subroutine is limited to
checking whether the CYGWIN environment variable is set.

While that environment variable was not set on Unix-like systems before
commit 761ba4514f7eceab8019d71dc9cabd269d274597, another commit
(a33237f070c95480f581d85b0169f41ce5a12017, merged a few weeks later)
changed that by setting the CYGWIN environment variable to an empty
value on Unix-like systems.  This made the defined($ENV{'CYGWIN'}) check
in server_lock_file() return true, inadvertently preventing
bin/tests/system/stop.pl from waiting for lock file removal before
exiting on Unix-like systems and therefore reintroducing the original
issue.

Fix by making server_lock_file() only return an empty value when the
CYGWIN environment variable is set to a non-empty value (which is what
bin/tests/system/conf.sh.win32 does).  Adjust a similar check in the
pid_file_exists() subroutine in the same way for consistency.

4 years agoDo not strip leading whitespace from test output
Michał Kępień [Wed, 26 Jan 2022 14:18:43 +0000 (15:18 +0100)] 
Do not strip leading whitespace from test output

The echo_*() and cat_*() functions in bin/tests/system/conf.sh.common
call the "read" builtin command without specifying the field separator
to use.  This results in leading whitespace getting stripped from each
line of the texts passed to those functions, which mangles e.g. pytest
output, hindering test failure troubleshooting.

Address by setting IFS to an empty value for the "read" calls used in
the aforementioned helper functions.

4 years agoRetain all named.run files from each test run
Michał Kępień [Wed, 26 Jan 2022 14:18:43 +0000 (15:18 +0100)] 
Retain all named.run files from each test run

The bin/tests/system/start.pl script truncates the named.run file for a
given named instance unless it is invoked with the --restart
command-line option.  Ever since Python-based tests were introduced,
bin/tests/system/run.sh may start named instances used by a given system
test multiple times within a single run, causing the
bin/tests/system/start.pl script to truncate some of the log files
written during the test.  This makes troubleshooting certain test
failures hard or even impossible.

Fix by calling bin/tests/system/start.pl with the --restart command-line
option for every start_servers() invocation except the first one.

4 years agoMerge branch '3087-tls-ephemeral-certificate-set-not-before-in-past' into 'main'
Arаm Sаrgsyаn [Tue, 25 Jan 2022 09:33:30 +0000 (09:33 +0000)] 
Merge branch '3087-tls-ephemeral-certificate-set-not-before-in-past' into 'main'

Set the ephemeral certificate's "not before" a short time in the past

Closes #3087

See merge request isc-projects/bind9!5708

4 years agoSet the ephemeral certificate's "not before" a short time in the past
Aram Sargsyan [Tue, 11 Jan 2022 09:07:34 +0000 (09:07 +0000)] 
Set the ephemeral certificate's "not before" a short time in the past

TLS clients can have their clock a short time in the past which will
result in not being able to validate the certificate.

Setting the "not before" property 5 minutes in the past will
accommodate with some possible clock skew across systems.

4 years agoMerge branch '3060-revert-view-on-failed-reconfig' into 'main'
Arаm Sаrgsyаn [Tue, 25 Jan 2022 08:40:08 +0000 (08:40 +0000)] 
Merge branch '3060-revert-view-on-failed-reconfig' into 'main'

Improve the view configuration error handling and reverting logic

Closes #3060

See merge request isc-projects/bind9!5674