]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
6 years agoMimic nzf_append from bin/named/server.c
Mark Andrews [Mon, 23 Mar 2020 02:27:37 +0000 (13:27 +1100)] 
Mimic nzf_append from bin/named/server.c

nzf_append is conditionally compiled and this is intended to
catch error introduced by changes to the called functions on all
systems before the changes are run through the CI.

6 years agoAdd jobs for 'configure --with{out}-lmdb' to the GitLab CI
Mark Andrews [Mon, 23 Mar 2020 01:04:30 +0000 (12:04 +1100)] 
Add jobs for 'configure --with{out}-lmdb' to the GitLab CI

We missed a case where LMDB was not installed/used in the build
and that broke system tests on such systems.

6 years agoAdd more special zones to addzone restart test.
Mark Andrews [Mon, 23 Mar 2020 00:22:48 +0000 (11:22 +1100)] 
Add more special zones to addzone restart test.

Test zones with various escape sequences and filesystem seperator
characters.
* escaped double quote (\")
* escaped escape (\\)
* escaped decimal byte value (\032)
* slash seperator (/)

6 years agoEscape double quote when printing quoted string.
Mark Andrews [Sun, 22 Mar 2020 23:28:33 +0000 (10:28 +1100)] 
Escape double quote when printing quoted string.

When we were printing quoted string, the double quotes where unescaped
leading to prematurely ending the quoted string.

6 years agoMerge branch '1648-native-pkcs11-eddsa' into 'master'
Ondřej Surý [Thu, 30 Apr 2020 17:53:08 +0000 (17:53 +0000)] 
Merge branch '1648-native-pkcs11-eddsa' into 'master'

Resolve "Fix PKCS#11-based EdDSA support"

Closes #1648

See merge request isc-projects/bind9!3467

6 years agoFixup the start_fail -> start_servers_failed typo
Ondřej Surý [Thu, 30 Apr 2020 16:35:25 +0000 (18:35 +0200)] 
Fixup the start_fail -> start_servers_failed typo

6 years agoAdd release notes
Ondřej Surý [Mon, 20 Apr 2020 10:05:49 +0000 (12:05 +0200)] 
Add release notes

6 years agoAdd CHANGES
Ondřej Surý [Mon, 20 Apr 2020 10:02:55 +0000 (12:02 +0200)] 
Add CHANGES

6 years agoFix the check for non-operational algs 15 and 16 in PKCS#11
Ondřej Surý [Thu, 30 Apr 2020 13:26:27 +0000 (15:26 +0200)] 
Fix the check for non-operational algs 15 and 16 in PKCS#11

6 years agoFail running run.sh when clean.sh or setup.sh fails
Ondřej Surý [Thu, 30 Apr 2020 12:53:55 +0000 (14:53 +0200)] 
Fail running run.sh when clean.sh or setup.sh fails

6 years agoRefactor the pkcs11 to test for individual algorithms
Ondřej Surý [Thu, 30 Apr 2020 12:53:40 +0000 (14:53 +0200)] 
Refactor the pkcs11 to test for individual algorithms

6 years agoUpdate EdDSA implementation to PKCS#11 v3.0.
Aaron Thompson [Sun, 29 Mar 2020 06:04:08 +0000 (06:04 +0000)] 
Update EdDSA implementation to PKCS#11 v3.0.

Per Current Mechanisms 2.3.5, the curve name is DER-encoded in the
EC_PARAMS attribute, and the public key value is DER-encoded in the
EC_POINT attribute.

6 years agoFix EdDSA key sizes (key_size is in bits).
Aaron Thompson [Wed, 25 Mar 2020 21:03:41 +0000 (21:03 +0000)] 
Fix EdDSA key sizes (key_size is in bits).

6 years agoAdd EdDSA algorithms back to dnssec-keyfromlabel help text.
Aaron Thompson [Sun, 29 Mar 2020 08:54:43 +0000 (08:54 +0000)] 
Add EdDSA algorithms back to dnssec-keyfromlabel help text.

Regressed in 45afdb267253e7178267d696b8b4488ec1d67d47.

6 years agoMerge branch '1797-libuv-1-37-requires-uv_init_ex-to-be-used-for-mmsg' into 'master'
Ondřej Surý [Thu, 30 Apr 2020 16:40:06 +0000 (16:40 +0000)] 
Merge branch '1797-libuv-1-37-requires-uv_init_ex-to-be-used-for-mmsg' into 'master'

Use UV_UDP_RECVMMSG to enable mmsg support in libuv if available

Closes #1797

See merge request isc-projects/bind9!3433

6 years agoCHANGES note
Witold Kręcicki [Thu, 30 Apr 2020 08:23:34 +0000 (10:23 +0200)] 
CHANGES note

6 years agoDon't free udp recv buffer if UV_UDP_MMSG_CHUNK is set
Witold Kręcicki [Wed, 29 Apr 2020 13:19:32 +0000 (15:19 +0200)] 
Don't free udp recv buffer if UV_UDP_MMSG_CHUNK is set

6 years agoUse UV_UDP_RECVMMSG to enable mmsg support in libuv if available
Ondřej Surý [Mon, 27 Apr 2020 16:57:07 +0000 (18:57 +0200)] 
Use UV_UDP_RECVMMSG to enable mmsg support in libuv if available

6 years agoMerge branch 'ondrej/fix-asan-build' into 'master'
Ondřej Surý [Thu, 30 Apr 2020 15:29:13 +0000 (15:29 +0000)] 
Merge branch 'ondrej/fix-asan-build' into 'master'

As libltdl is convenience library, link it just into libisc

See merge request isc-projects/bind9!3465

6 years agoAs libltdl is convenience library, link it just into libisc
Ondřej Surý [Thu, 30 Apr 2020 13:33:44 +0000 (15:33 +0200)] 
As libltdl is convenience library, link it just into libisc

6 years agoMerge branch 'matthijs-make-check-missing-tests' into 'master'
Ondřej Surý [Thu, 30 Apr 2020 13:30:07 +0000 (13:30 +0000)] 
Merge branch 'matthijs-make-check-missing-tests' into 'master'

make check: add missing tests

See merge request isc-projects/bind9!3460

6 years agofixup! Add missing system test in Makefile
Matthijs Mekking [Thu, 30 Apr 2020 10:09:05 +0000 (12:09 +0200)] 
fixup! Add missing system test in Makefile

6 years agoConditionally re-add pkcs11 system test
Ondřej Surý [Thu, 30 Apr 2020 07:43:48 +0000 (09:43 +0200)] 
Conditionally re-add pkcs11 system test

6 years agoUpdate run system test doc
Matthijs Mekking [Thu, 30 Apr 2020 07:33:07 +0000 (09:33 +0200)] 
Update run system test doc

6 years agoAdd missing system test in Makefile
Matthijs Mekking [Thu, 30 Apr 2020 07:28:21 +0000 (09:28 +0200)] 
Add missing system test in Makefile

Add the missing tests in the Makefile (include-multiplecfg kasp
pkcs11 ttl).  Also put them in alphabetical order.

6 years agoMerge branch '1806-system-and-unit-clang-asan-have-incorrect-needs' into 'master'
Mark Andrews [Thu, 30 Apr 2020 07:41:20 +0000 (07:41 +0000)] 
Merge branch '1806-system-and-unit-clang-asan-have-incorrect-needs' into 'master'

Resolve "system and unit clang:asan have incorrect needs"

Closes #1806

See merge request isc-projects/bind9!3457

6 years agoIncorrect job in needs, gcc:asan -> clang:asan
Mark Andrews [Thu, 30 Apr 2020 07:12:00 +0000 (17:12 +1000)] 
Incorrect job in needs, gcc:asan -> clang:asan

6 years agoMerge branch '1804-util-parse_tsan-py-is-not-pylint-clean' into 'master'
Mark Andrews [Thu, 30 Apr 2020 07:28:37 +0000 (07:28 +0000)] 
Merge branch '1804-util-parse_tsan-py-is-not-pylint-clean' into 'master'

Resolve "util/parse_tsan.py is not pylint clean"

Closes #1804

See merge request isc-projects/bind9!3456

6 years agopylint cleanups
Mark Andrews [Wed, 29 Apr 2020 04:33:10 +0000 (14:33 +1000)] 
pylint cleanups

6 years agoMerge branch 'placeholder' into 'master'
Evan Hunt [Thu, 30 Apr 2020 06:25:30 +0000 (06:25 +0000)] 
Merge branch 'placeholder' into 'master'

placeholder

See merge request isc-projects/bind9!3455

6 years agoplaceholder
Evan Hunt [Thu, 30 Apr 2020 06:24:40 +0000 (23:24 -0700)] 
placeholder

6 years agoMerge branch '1777-update-the-build-instructions-for-automake' into 'master'
Mark Andrews [Thu, 30 Apr 2020 01:44:07 +0000 (01:44 +0000)] 
Merge branch '1777-update-the-build-instructions-for-automake' into 'master'

Resolve "Update the build instructions for automake"

Closes #1777

See merge request isc-projects/bind9!3428

6 years agoupdate CHANGES entry
Mark Andrews [Mon, 27 Apr 2020 05:03:23 +0000 (15:03 +1000)] 
update CHANGES entry

6 years agoupdate release note
Mark Andrews [Mon, 27 Apr 2020 05:01:41 +0000 (15:01 +1000)] 
update release note

6 years agoAdd requirements to build from the repository
Mark Andrews [Fri, 24 Apr 2020 02:28:59 +0000 (12:28 +1000)] 
Add requirements to build from the repository

6 years agoMerge branch '1783-ax_check_compile_flag-fno-delete-null-pointer-checks-does-not...
Ondřej Surý [Wed, 29 Apr 2020 16:16:41 +0000 (16:16 +0000)] 
Merge branch '1783-ax_check_compile_flag-fno-delete-null-pointer-checks-does-not-fail-for-clang' into 'master'

Resolve "AX_CHECK_COMPILE_FLAG -fno-delete-null-pointer-checks does not fail for clang"

Closes #1783

See merge request isc-projects/bind9!3413

6 years agoForce test for -fno-delete-null-pointer-checks to fail
Mark Andrews [Wed, 22 Apr 2020 03:02:18 +0000 (13:02 +1000)] 
Force test for -fno-delete-null-pointer-checks to fail

6 years agoMerge branch 'ondrej/fix-asan-symbolizer' into 'master'
Ondřej Surý [Wed, 29 Apr 2020 15:01:32 +0000 (15:01 +0000)] 
Merge branch 'ondrej/fix-asan-symbolizer' into 'master'

Fix the ASAN symbolizer

See merge request isc-projects/bind9!3450

6 years agoFix the ASAN symbolizer
Ondřej Surý [Wed, 29 Apr 2020 13:26:36 +0000 (15:26 +0200)] 
Fix the ASAN symbolizer

6 years agoMerge branch '725-prepare-system-tests-for-pytest' into 'master'
Ondřej Surý [Wed, 29 Apr 2020 09:51:30 +0000 (09:51 +0000)] 
Merge branch '725-prepare-system-tests-for-pytest' into 'master'

Add a pytest runner to run.sh

Closes #725

See merge request isc-projects/bind9!3445

6 years agoAdd a pytest runner to run.sh
Ondřej Surý [Fri, 27 Mar 2020 12:23:24 +0000 (13:23 +0100)] 
Add a pytest runner to run.sh

The system tests currently uses patchwork of shell scripts which doesn't
offer proper error handling.

This commit introduced option to write new tests in pytest framework
that also allows easier manipulation of DNS traffic (using dnspython),
native XML and JSON manipulation and proper error reporting.

6 years agoMerge branch '1090-fix-unable-to-set-effective-uid-to-0-fixup' into 'master'
Ondřej Surý [Tue, 28 Apr 2020 16:52:21 +0000 (16:52 +0000)] 
Merge branch '1090-fix-unable-to-set-effective-uid-to-0-fixup' into 'master'

Hide setperms when not in use

Closes #1090

See merge request isc-projects/bind9!3443

6 years agoHide setperms when not in use
Ondřej Surý [Tue, 28 Apr 2020 15:33:57 +0000 (17:33 +0200)] 
Hide setperms when not in use

6 years agoMerge branch '1090-fix-unable-to-set-effective-uid-to-0' into 'master'
Ondřej Surý [Tue, 28 Apr 2020 14:25:55 +0000 (14:25 +0000)] 
Merge branch '1090-fix-unable-to-set-effective-uid-to-0' into 'master'

Resolve "BIND 9.14: unable to set effective uid to 0"

Closes #1090 and #1042

See merge request isc-projects/bind9!3432

6 years agoAdd release notes for GL #1042, #1090
Ondřej Surý [Mon, 27 Apr 2020 14:27:05 +0000 (16:27 +0200)] 
Add release notes for GL #1042, #1090

6 years agoAdd CHANGES for #1042, #1090
Ondřej Surý [Mon, 27 Apr 2020 14:23:07 +0000 (16:23 +0200)] 
Add CHANGES for #1042, #1090

6 years agoPropagate first_time to named_os_openfile in generate_session_key.
Mark Andrews [Mon, 27 Apr 2020 22:13:02 +0000 (08:13 +1000)] 
Propagate first_time to named_os_openfile in generate_session_key.

named_os_openfile was being called with switch_user set to true
unconditionally leading to log messages about being unable to
switch user identity from named when regenerating the key.

6 years agoDon't change effective uid when we already dropped privileges
Ondřej Surý [Mon, 27 Apr 2020 13:58:45 +0000 (15:58 +0200)] 
Don't change effective uid when we already dropped privileges

When running on Linux and system capabilities are available, named will
drop the extra capabilities before loading the configuration.  This led
to spurious warnings from `seteuid()` because named already dropped
CAP_SETUID and CAP_GETUID capabilities.

The fix removes setting the effective uid/gid when capabilities are
available, and adds a check that we are running under the user we were
requested to run.

6 years agoMerge branch '1780-fix-system-tests-failing-with-automake' into 'master'
Ondřej Surý [Mon, 27 Apr 2020 14:27:25 +0000 (14:27 +0000)] 
Merge branch '1780-fix-system-tests-failing-with-automake' into 'master'

Properly fail the GitLab CI system test job when any system test fails

Closes #1780

See merge request isc-projects/bind9!3414

6 years agoFix the noinst_LTLIBRARIES -> check_LTLIBRARIES in libisc and libdns unit tests
Ondřej Surý [Mon, 27 Apr 2020 13:18:31 +0000 (15:18 +0200)] 
Fix the noinst_LTLIBRARIES -> check_LTLIBRARIES in libisc and libdns unit tests

6 years agoRestore behaviour of "make test" and "make unit"
Evan Hunt [Thu, 23 Apr 2020 23:22:21 +0000 (16:22 -0700)] 
Restore behaviour of "make test" and "make unit"

Add recursive "test" and "unit" rules, which execute "make check"
in specific directories - "make test" runs the system tests, and
"make unit" runs the unit tests.

6 years agoDisable pylint: 'Constant name dname doesn't conform to UPPER_CASE naming style ...
Ondřej Surý [Mon, 27 Apr 2020 12:15:10 +0000 (14:15 +0200)] 
Disable pylint: 'Constant name dname doesn't conform to UPPER_CASE naming style (invalid-name)'

6 years agoUse absolute path to PYTHON and PERL, so test -x works properly in system tests
Ondřej Surý [Mon, 27 Apr 2020 10:23:44 +0000 (12:23 +0200)] 
Use absolute path to PYTHON and PERL, so test -x works properly in system tests

6 years agoStore the output from yamlget.py into intermediate files for easier debugging
Ondřej Surý [Mon, 27 Apr 2020 09:43:22 +0000 (11:43 +0200)] 
Store the output from yamlget.py into intermediate files for easier debugging

6 years agoRefactor the script that gets/sets the ports for system tests
Ondřej Surý [Mon, 27 Apr 2020 08:47:08 +0000 (10:47 +0200)] 
Refactor the script that gets/sets the ports for system tests

The current script used ephemeral port range which clashed with the
ports used by the tools (dig, ...), and the range always started with
the first port and there was 100 ports allocated for each system test.

In this commit, the first port has been randomized, the get_ports.sh
script outputs the variables (the output has to be eval'ed from run.sh)
and there's less waste in the port range.

6 years agoRun recheck in case some system test fails
Ondřej Surý [Fri, 24 Apr 2020 15:00:39 +0000 (17:00 +0200)] 
Run recheck in case some system test fails

6 years agoColorize the test-driver output by default
Ondřej Surý [Fri, 24 Apr 2020 13:37:36 +0000 (15:37 +0200)] 
Colorize the test-driver output by default

6 years agoImprove the LOG_DRIVER and LOG_COMPILER for the system tests
Ondřej Surý [Fri, 24 Apr 2020 13:29:54 +0000 (15:29 +0200)] 
Improve the LOG_DRIVER and LOG_COMPILER for the system tests

There are several improvements over the default/previous behaviour of
the test log driver and log compiler:

 * The system-test-driver.sh was dropped (it was used incorrectly)
 * The run.sh script is now both log compiler and cli script to run
   individual tests
 * The custom-test-driver was added as extended version of the automake
   test-driver with capability to tee the test output to stdout when
   `--verbose yes` is passed to it (you can use LOG_DRIVER_FLAGS to
   add the option by default)
 * Makefile.am has been extended to honor V=1 for the system tests
   test-driver (e.g. V=1 adds `--verbose yes` to AM_LOG_DRIVER_FLAGS)

6 years agoRemove the requirement for GNU getopt and parse long options using getopts
Ondřej Surý [Fri, 24 Apr 2020 11:34:40 +0000 (13:34 +0200)] 
Remove the requirement for GNU getopt and parse long options using getopts

6 years agoEnsure fstrm_capture is looked for
Michał Kępień [Thu, 23 Apr 2020 06:34:11 +0000 (08:34 +0200)] 
Ensure fstrm_capture is looked for

fstrm_capture is not an essential utility, but its corresponding
Makefile token needs to substituted even if it is not found in PATH or
else the "dnstap" system test will consistently fail.

6 years agoBuild wire_test
Michał Kępień [Thu, 23 Apr 2020 06:07:07 +0000 (08:07 +0200)] 
Build wire_test

The bin/tests/wire_test helper program is currently not included in any
Makefile.am file.  Move its source code to bin/tests/system and build it
along other helper tools when dnstap support is requested as the
"dnstap" system test needs this tool in order to pass.

6 years agoSilence PyYAML warning
Michał Kępień [Thu, 23 Apr 2020 06:07:07 +0000 (08:07 +0200)] 
Silence PyYAML warning

Make yaml.load_all() use yaml.SafeLoader to address a warning currently
emitted when bin/tests/system/dnstap/ydump.py is run:

    ydump.py:28: YAMLLoadWarning: calling yaml.load_all() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
      for l in yaml.load_all(f.stdout):

6 years agoUse $TOP_SRCDIR instead of $TOP of calling prepare-softhsm2 script
Ondřej Surý [Wed, 22 Apr 2020 13:39:45 +0000 (15:39 +0200)] 
Use $TOP_SRCDIR instead of $TOP of calling prepare-softhsm2 script

6 years agoUse $TOP_BUILDDIR instead of $TOP of checking config.h values
Ondřej Surý [Wed, 22 Apr 2020 13:17:45 +0000 (15:17 +0200)] 
Use $TOP_BUILDDIR instead of $TOP of checking config.h values

6 years agoProperly fail the GitLab CI system test job when any system test fails
Ondřej Surý [Wed, 22 Apr 2020 12:58:55 +0000 (14:58 +0200)] 
Properly fail the GitLab CI system test job when any system test fails

6 years agoMerge branch '1758-cleanup-libirs' into 'master'
Ondřej Surý [Fri, 24 Apr 2020 12:02:11 +0000 (12:02 +0000)] 
Merge branch '1758-cleanup-libirs' into 'master'

Cleanup libirs APIs and slim down the library to just irs_resconf

Closes #1758

See merge request isc-projects/bind9!3416

6 years agoAdd CHANGES note for GL #1758
Ondřej Surý [Thu, 23 Apr 2020 09:54:54 +0000 (11:54 +0200)] 
Add CHANGES note for GL #1758

6 years agoCleanup libirs APIs and slim down the library to just irs_resconf
Ondřej Surý [Wed, 22 Apr 2020 22:13:29 +0000 (00:13 +0200)] 
Cleanup libirs APIs and slim down the library to just irs_resconf

The libirs contained own re-implementations of the getaddrinfo,
getnameinfo and gai_strerror + irs_context and irs_dnsconf API that was
unused anywhere in the BIND 9.

Keep just the irs_resonf API that is being extensively used to parse
/etc/resolv.conf by several of BIND 9 tools.

6 years agoMerge branch '178-remove-unused-dns-ecdb' into 'master'
Ondřej Surý [Thu, 23 Apr 2020 19:40:23 +0000 (19:40 +0000)] 
Merge branch '178-remove-unused-dns-ecdb' into 'master'

Remove 'ephemeral' database implementation

Closes #178

See merge request isc-projects/bind9!3425

6 years agoRemove 'ephemeral' database implementation
Ondřej Surý [Wed, 22 Apr 2020 11:26:19 +0000 (13:26 +0200)] 
Remove 'ephemeral' database implementation

The 'ephemeral' database implementation was used to provide a
lightweight database implemenation that doesn't cache results, and the
only place where it was really use is "samples" because delv is
overriding this to use "rbtdb" instead. Otherwise it was completely
unused.

 * The 'ephemeral' cache DB (ecdb) implementation.  An ecdb just provides
 * temporary storage for ongoing name resolution with the common DB interfaces.
 * It actually doesn't cache anything.  The implementation expects any stored
 * data is released within a short period, and does not care about the
 * scalability in terms of the number of nodes.

6 years agoMerge branch 'ondrej/add-missing-OPENSSL_CFLAGS' into 'master'
Ondřej Surý [Thu, 23 Apr 2020 14:22:44 +0000 (14:22 +0000)] 
Merge branch 'ondrej/add-missing-OPENSSL_CFLAGS' into 'master'

Add OPENSSL_CFLAGS to libdns tests that include dst_internal.h

See merge request isc-projects/bind9!3424

6 years agoAdd OPENSSL_CFLAGS to libdns tests that include dst_internal.h
Ondřej Surý [Wed, 22 Apr 2020 12:24:21 +0000 (14:24 +0200)] 
Add OPENSSL_CFLAGS to libdns tests that include dst_internal.h

The three libdns tests directly include ../dst_internal.h which
in turn directly include openssl headers, thus there was a missing
path and build failure on systems where OpenSSL is not in the default
include path.

6 years agoMerge branch '178-remove-unused-isc_lfsr' into 'master'
Ondřej Surý [Thu, 23 Apr 2020 13:33:00 +0000 (13:33 +0000)] 
Merge branch '178-remove-unused-isc_lfsr' into 'master'

Remove unused isc_lfsr API

Closes #178

See merge request isc-projects/bind9!3423

6 years agoRemove unused isc_lfsr API
Ondřej Surý [Thu, 23 Apr 2020 10:16:22 +0000 (12:16 +0200)] 
Remove unused isc_lfsr API

The isc_lfsr API was used to generate message IDs in the past.
Currently, it's just cruft.

6 years agoMerge branch 'mnowak/1751-abi-check-does-not-know-which-source-is-older-newer' into...
Michal Nowak [Thu, 23 Apr 2020 06:52:05 +0000 (06:52 +0000)] 
Merge branch 'mnowak/1751-abi-check-does-not-know-which-source-is-older-newer' into 'master'

abi-check does not know which source is older, newer

Closes #1751

See merge request isc-projects/bind9!3374

6 years agoEnsure proper comparison order in "abi-check" jobs
Michal Nowak [Wed, 15 Apr 2020 09:06:22 +0000 (11:06 +0200)] 
Ensure proper comparison order in "abi-check" jobs

Right before the release API version (LIBINTERFACE, LIBREVISION, LIBAGE)
for older and newer libraries tends to be the same. Given that, commit
hash can't be the determining factor here, Unix time of the commit
should suit us better and is placed after the API version. The commit
hash is preserved as it's useful to see it in the actual report.

'-nosymtbl' versions of libraries are not produced in Automake builds.

6 years agoMerge branch 'ondrej/make-merge_copyrights-ignore-hidden-files' into 'master'
Ondřej Surý [Thu, 23 Apr 2020 05:58:36 +0000 (05:58 +0000)] 
Merge branch 'ondrej/make-merge_copyrights-ignore-hidden-files' into 'master'

Make merge_copyrights ignore hidden files

See merge request isc-projects/bind9!3417

6 years agoMake merge_copyrights ignore hidden files
Ondřej Surý [Thu, 23 Apr 2020 05:57:29 +0000 (07:57 +0200)] 
Make merge_copyrights ignore hidden files

6 years agoMerge branch 'ondrej/update-lgtm.com-configuration' into 'master'
Ondřej Surý [Wed, 22 Apr 2020 14:57:40 +0000 (14:57 +0000)] 
Merge branch 'ondrej/update-lgtm.com-configuration' into 'master'

Add configuration for LGTM.com static code analyzer

See merge request isc-projects/bind9!3415

6 years agoAdd configuration for LGTM.com static code analyzer
Ondřej Surý [Wed, 22 Apr 2020 13:56:17 +0000 (15:56 +0200)] 
Add configuration for LGTM.com static code analyzer

6 years agoMerge branch '1779-lock-rpzs' into 'master'
Evan Hunt [Tue, 21 Apr 2020 23:59:37 +0000 (23:59 +0000)] 
Merge branch '1779-lock-rpzs' into 'master'

acquire maintenance lock when running incremental RPZ updates

Closes #1779

See merge request isc-projects/bind9!3411

6 years agoCHANGES
Evan Hunt [Tue, 21 Apr 2020 23:59:02 +0000 (16:59 -0700)] 
CHANGES

6 years agoacquire maintenance lock when running incremental RPZ updates
Evan Hunt [Tue, 21 Apr 2020 17:42:23 +0000 (10:42 -0700)] 
acquire maintenance lock when running incremental RPZ updates

this addresses a race that could occur during shutdown or when
reconfiguring to remove RPZ zones.

this change should ensure that the rpzs structure and the incremental
updates don't interfere with each other: rpzs->zones entries cannot
be set to NULL while an update quantum is running, and the
task should be destroyed and its queue purged so that no subsequent
quanta will run.

6 years agoMerge branch '4-add-changes-and-release-notes' into 'master'
Ondřej Surý [Tue, 21 Apr 2020 13:38:21 +0000 (13:38 +0000)] 
Merge branch '4-add-changes-and-release-notes' into 'master'

Add CHANGES and Release Notes for "Convert to modern autotools (autoconf + automake + libtool)"

See merge request isc-projects/bind9!3410

6 years agoAdd release notes for #4
Ondřej Surý [Tue, 21 Apr 2020 13:36:47 +0000 (15:36 +0200)] 
Add release notes for #4

6 years agoAdd CHANGES for GL #4
Ondřej Surý [Tue, 21 Apr 2020 13:25:41 +0000 (15:25 +0200)] 
Add CHANGES for GL #4

6 years agoMerge branch '4-convert-to-modern-autotools-autoconf-automake-libtool' into 'master'
Ondřej Surý [Tue, 21 Apr 2020 13:06:22 +0000 (13:06 +0000)] 
Merge branch '4-convert-to-modern-autotools-autoconf-automake-libtool' into 'master'

Convert to modern autotools (autoconf + automake + libtool)

Closes #4

See merge request isc-projects/bind9!985

6 years agoComplete rewrite the BIND 9 build system
Ondřej Surý [Tue, 7 Aug 2018 14:46:53 +0000 (16:46 +0200)] 
Complete rewrite the BIND 9 build system

The rewrite of BIND 9 build system is a large work and cannot be reasonable
split into separate merge requests.  Addition of the automake has a positive
effect on the readability and maintainability of the build system as it is more
declarative, it allows conditional and we are able to drop all of the custom
make code that BIND 9 developed over the years to overcome the deficiencies of
autoconf + custom Makefile.in files.

This squashed commit contains following changes:

- conversion (or rather fresh rewrite) of all Makefile.in files to Makefile.am
  by using automake

- the libtool is now properly integrated with automake (the way we used it
  was rather hackish as the only official way how to use libtool is via
  automake

- the dynamic module loading was rewritten from a custom patchwork to libtool's
  libltdl (which includes the patchwork to support module loading on different
  systems internally)

- conversion of the unit test executor from kyua to automake parallel driver

- conversion of the system test executor from custom make/shell to automake
  parallel driver

- The GSSAPI has been refactored, the custom SPNEGO on the basis that
  all major KRB5/GSSAPI (mit-krb5, heimdal and Windows) implementations
  support SPNEGO mechanism.

- The various defunct tests from bin/tests have been removed:
  bin/tests/optional and bin/tests/pkcs11

- The text files generated from the MD files have been removed, the
  MarkDown has been designed to be readable by both humans and computers

- The xsl header is now generated by a simple sed command instead of
  perl helper

- The <irs/platform.h> header has been removed

- cleanups of configure.ac script to make it more simpler, addition of multiple
  macros (there's still work to be done though)

- the tarball can now be prepared with `make dist`

- the system tests are partially able to run in oot build

Here's a list of unfinished work that needs to be completed in subsequent merge
requests:

- `make distcheck` doesn't yet work (because of system tests oot run is not yet
  finished)

- documentation is not yet built, there's a different merge request with docbook
  to sphinx-build rst conversion that needs to be rebased and adapted on top of
  the automake

- msvc build is non functional yet and we need to decide whether we will just
  cross-compile bind9 using mingw-w64 or fix the msvc build

- contributed dlz modules are not included neither in the autoconf nor automake

6 years agoRemove files generated by autotools
Ondřej Surý [Tue, 23 Oct 2018 08:28:47 +0000 (10:28 +0200)] 
Remove files generated by autotools

6 years agoRemove python based tools (dnssec-keymgr, dnssec-coverage, dnssec-checkds)
Ondřej Surý [Wed, 12 Feb 2020 11:14:00 +0000 (12:14 +0100)] 
Remove python based tools (dnssec-keymgr, dnssec-coverage, dnssec-checkds)

With the introduction of dnssec-policy, the aforementioned tools were
either rendered obsolete, or they will be replaced with dnssec-policy
based tools.  Remove the tools and the requirement to have Python
installed.  Python 3 is still being used for tests, so keep the autoconf
test, but make it much simpler.

6 years agoMerge branch 'ondrej/enable-quota-test-in-Kyuatest' into 'master'
Ondřej Surý [Tue, 21 Apr 2020 12:18:07 +0000 (12:18 +0000)] 
Merge branch 'ondrej/enable-quota-test-in-Kyuatest' into 'master'

Enable quota_test in Kyuafile

See merge request isc-projects/bind9!3408

6 years agoFix detaching the extra quotas in the quota_test
Witold Kręcicki [Tue, 21 Apr 2020 11:33:42 +0000 (13:33 +0200)] 
Fix detaching the extra quotas in the quota_test

6 years agoEnable quota_test in Kyuafile
Ondřej Surý [Tue, 21 Apr 2020 10:30:11 +0000 (12:30 +0200)] 
Enable quota_test in Kyuafile

6 years agoMerge branch 'marka-placeholer' into 'master'
Mark Andrews [Mon, 20 Apr 2020 23:59:50 +0000 (23:59 +0000)] 
Merge branch 'marka-placeholer' into 'master'

Marka placeholer

See merge request isc-projects/bind9!3407

6 years agoplaceholder
Mark Andrews [Mon, 20 Apr 2020 23:57:42 +0000 (09:57 +1000)] 
placeholder

6 years agoMerge branch '1763-pkcs11-code-cleanups' into 'master'
Ondřej Surý [Mon, 20 Apr 2020 09:55:51 +0000 (09:55 +0000)] 
Merge branch '1763-pkcs11-code-cleanups' into 'master'

Update to PKCS#11 v3.0 EdDSA macros and cleanup the PKCS#11 code

See merge request isc-projects/bind9!3391

6 years agoAdd CHANGES
Ondřej Surý [Mon, 20 Apr 2020 09:48:45 +0000 (11:48 +0200)] 
Add CHANGES

6 years agoUse switch instead of if when evaluating curves
Ondřej Surý [Mon, 20 Apr 2020 08:30:54 +0000 (10:30 +0200)] 
Use switch instead of if when evaluating curves

Previously, the code would do:

    REQUIRE(alg == CURVE1 || alg == CURVE2);

    [...]

    if (alg == CURVE1) { /* code for CURVE1 */ }
    else { /* code for CURVE2 */ }

This approach is less extensible and also more prone to errors in case
the initial REQUIRE() is forgotten.  The code has been refactored to
use:

    REQUIRE(alg == CURVE1 || alg == CURVE2);

    [...]

    switch (alg) {
    case CURVE1: /* code for CURVE1 */; break;
    case CURVE2: /* code for CURVE2 */; break;
    default: INSIST(0);
    }

6 years agoRefactor the code using the pk11 ECC constants.
Ondřej Surý [Mon, 20 Apr 2020 08:31:15 +0000 (10:31 +0200)] 
Refactor the code using the pk11 ECC constants.

The pk11/constants.h header contained static CK_BYTE arrays and
we had to use #defines to pull only those we need.  This commit
changes the constants to only define byte arrays with the content
and either use them directly or define the CK_BYTE arrays locally
where used.

6 years agoOnly print warning when PKCS#11 dnssec-keygen fails from Edwards curves
Ondřej Surý [Fri, 17 Apr 2020 08:58:46 +0000 (10:58 +0200)] 
Only print warning when PKCS#11 dnssec-keygen fails from Edwards curves