]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
5 years agoFix cppcheck warnings 1969-fix-cppcheck-warnings
Matthijs Mekking [Wed, 24 Jun 2020 12:14:29 +0000 (14:14 +0200)] 
Fix cppcheck warnings

5 years agoMerge branch '1970-fix-libtool-initialization' into 'main'
Michał Kępień [Wed, 24 Jun 2020 09:28:01 +0000 (09:28 +0000)] 
Merge branch '1970-fix-libtool-initialization' into 'main'

Fix libtool initialization

Closes #1970

See merge request isc-projects/bind9!3742

5 years agoFix libtool initialization
Michał Kępień [Wed, 24 Jun 2020 08:07:57 +0000 (10:07 +0200)] 
Fix libtool initialization

The LT_INIT() call in configure.ac is effectively a no-op because it is
preceded by a call to AC_PROG_LIBTOOL(), which is the previous name of
LT_INIT() used in older libtool versions.  Replace AC_PROG_LIBTOOL()
with AC_PATH_PROG() to look for libtool in PATH without initializing it,
which is the originally intended behavior.

Without this change, --enable-static is used by default, which causes a
plain ./configure invocation to fail because static linking is now
disallowed.  Drop --disable-static from the ./configure invocations used
in GitLab CI to test this scenario continuously.

5 years agoMerge branch '1933-disable-static-linking' into 'main'
Ondřej Surý [Tue, 23 Jun 2020 13:28:06 +0000 (13:28 +0000)] 
Merge branch '1933-disable-static-linking' into 'main'

Disable and disallow static linking

Closes #1933

See merge request isc-projects/bind9!3697

5 years agoAdd CHANGES and release note for #1933
Ondřej Surý [Wed, 17 Jun 2020 12:28:23 +0000 (14:28 +0200)] 
Add CHANGES and release note for #1933

5 years agoDisable and disallow static linking
Ondřej Surý [Tue, 16 Jun 2020 08:38:46 +0000 (10:38 +0200)] 
Disable and disallow static linking

Linking BIND 9 programs and libraries statically disables several
important features:

  * dlopen() - relied on by dynamic loading of modules, dlz, and dyndb,

  * RELRO (read-only relocations) and ASLR (address space layout
    randomization) - security features which are important for any
    program interacting with the network and/or user input.

Disable and disallow linking BIND 9 binaries statically, thus enforcing
dlopen() support and allowing use of RELRO and ASLR by default.

5 years agoMerge branch 'u/fanf2/dnstap-roll' into 'main'
Mark Andrews [Tue, 23 Jun 2020 10:27:34 +0000 (10:27 +0000)] 
Merge branch 'u/fanf2/dnstap-roll' into 'main'

Fix `rndc dnstap -roll N`

See merge request isc-projects/bind9!3728

5 years agoAdd Release Note for [GL !3728]
Mark Andrews [Tue, 23 Jun 2020 03:36:40 +0000 (13:36 +1000)] 
Add Release Note for [GL !3728]

5 years agoAdd CHANGES for [GL !3728]
Mark Andrews [Mon, 22 Jun 2020 04:44:48 +0000 (14:44 +1000)] 
Add CHANGES for [GL !3728]

5 years agoCheck that 'rndc dnstap -roll <value>' works
Mark Andrews [Mon, 22 Jun 2020 04:41:55 +0000 (14:41 +1000)] 
Check that 'rndc dnstap -roll <value>' works

5 years agoFix `rndc dnstap -roll N`
Tony Finch [Sun, 21 Jun 2020 20:17:51 +0000 (21:17 +0100)] 
Fix `rndc dnstap -roll N`

The `rndc` argument was always overridden by the static configuration,
because the logic for handling the number of dnstap files to retain
was both backwards and a bit redundant.

5 years agoMerge branch 'mnowak/do-not-build-gzip-tarball' into 'main'
Michal Nowak [Tue, 23 Jun 2020 07:48:58 +0000 (07:48 +0000)] 
Merge branch 'mnowak/do-not-build-gzip-tarball' into 'main'

Do not create gzip tarball

See merge request isc-projects/bind9!3734

5 years agoDo not create gzip tarball
Michal Nowak [Mon, 22 Jun 2020 18:13:41 +0000 (20:13 +0200)] 
Do not create gzip tarball

'make dist' does not need to create gzip tarball as we always ship the
XZ one.

5 years agoMerge branch 'ondrej/disable-maintainer-mode-in-ci' into 'main'
Ondřej Surý [Mon, 22 Jun 2020 17:01:41 +0000 (17:01 +0000)] 
Merge branch 'ondrej/disable-maintainer-mode-in-ci' into 'main'

Disable rebuilding miscellaneous documentation source files when not in maintainer mode

See merge request isc-projects/bind9!3733

5 years agoEnable maintainer mode by default only when building from git
Ondřej Surý [Mon, 22 Jun 2020 12:26:07 +0000 (14:26 +0200)] 
Enable maintainer mode by default only when building from git

When maintainer mode is enabled (./configure --enable-maintainer-mode)
it enables rebuild of documentation source files that require extra
tools to be installed or compiled.  For a convenience, those files are
already committed into the repository and their rebuild is not required
to build BIND 9 from sources.

5 years agoRemove the last bits of '// not configured' from doc/misc/options
Ondřej Surý [Mon, 22 Jun 2020 11:58:19 +0000 (13:58 +0200)] 
Remove the last bits of '// not configured' from doc/misc/options

5 years agoUpdate pregenerated dig.1in and rndc-confgen.8in
Ondřej Surý [Mon, 22 Jun 2020 11:48:39 +0000 (13:48 +0200)] 
Update pregenerated dig.1in and rndc-confgen.8in

5 years agoDisable the double configure and build step in docs CI job
Ondřej Surý [Mon, 22 Jun 2020 11:13:11 +0000 (13:13 +0200)] 
Disable the double configure and build step in docs CI job

The documentation now can be build even when the BIND 9 source tree
hasn't been built yet allowing no-arch builds.

5 years agoRebuild the manpages sources only when in maintainer mode
Ondřej Surý [Mon, 22 Jun 2020 11:08:58 +0000 (13:08 +0200)] 
Rebuild the manpages sources only when in maintainer mode

Similarly, the manpage sources will get rebuild only when in maintainer
mode because they require sphinx-build to be available locally and that
might not be always the case.

5 years agoRebuild the file in doc/misc only when in maintainer mode
Ondřej Surý [Mon, 22 Jun 2020 11:03:07 +0000 (13:03 +0200)] 
Rebuild the file in doc/misc only when in maintainer mode

The files in doc/misc requires all the BIND 9 libraries to be built
before the documentation can be built.  One of the extra automake
features is maintainer mode that allows to conditionally build and clean
files that require special tools.  Make use of the automake maintainer
mode to not rebuild the files in doc/misc under normal circumstances.

5 years agoMerge branch 'each-shorten-tests' into 'main'
Ondřej Surý [Mon, 22 Jun 2020 12:06:10 +0000 (12:06 +0000)] 
Merge branch 'each-shorten-tests' into 'main'

reorder system tests to shorten runtime

See merge request isc-projects/bind9!3727

5 years agoreorder system tests to shorten runtime
Evan Hunt [Sat, 20 Jun 2020 22:39:43 +0000 (15:39 -0700)] 
reorder system tests to shorten runtime

if tests that take a particularly long time to complete
(serve-stale, dnssec, rpzrecurse) are run first, a parallel
run of the system tests can finish 1-2 minutes faster.

5 years agoMerge branch '1898-doc/misc/options-should-be-independent-on-configure' into 'main'
Ondřej Surý [Mon, 22 Jun 2020 11:44:39 +0000 (11:44 +0000)] 
Merge branch '1898-doc/misc/options-should-be-independent-on-configure' into 'main'

Remove // not configured when generating doc/misc/options

Closes #1898

See merge request isc-projects/bind9!3731

5 years agoRemove // not configured when generating doc/misc/options
Ondřej Surý [Mon, 22 Jun 2020 10:41:01 +0000 (12:41 +0200)] 
Remove // not configured when generating doc/misc/options

The doc/misc/options is used to generate a file describing all
configuration options. Currently, the file contents could differ
based on ./configure option which is kind of suboptimal.

We already removed the "// not configured" from the options.active, and
this time we remove generation of the string altogether.

5 years agoMerge branch '1949-checknames' into 'main'
Ondřej Surý [Mon, 22 Jun 2020 11:14:54 +0000 (11:14 +0000)] 
Merge branch '1949-checknames' into 'main'

"check-names primary" and "check-names secondary" were ignored

Closes #1949

See merge request isc-projects/bind9!3702

5 years agoAdd CHANGES and release note for #1949
Ondřej Surý [Mon, 22 Jun 2020 10:33:54 +0000 (12:33 +0200)] 
Add CHANGES and release note for #1949

5 years ago"check-names primary" and "check-names secondary" were ignored
Evan Hunt [Wed, 17 Jun 2020 00:48:42 +0000 (17:48 -0700)] 
"check-names primary" and "check-names secondary" were ignored

these keywords were added to the parser as synonyms for "master"
and "slave" but were never hooked in to the configuration of named,
so they were ignored. this has been fixed and the option is now
checked for correctness.

5 years agoMerge branch '1627-address-race-in-zone-maintenance' into 'main'
Ondřej Surý [Mon, 22 Jun 2020 10:26:29 +0000 (10:26 +0000)] 
Merge branch '1627-address-race-in-zone-maintenance' into 'main'

address race between zone_maintenance and dns_zone_setview_helper

Closes #1627

See merge request isc-projects/bind9!3669

5 years agoAddress race between zone_maintenance and dns_zone_setview_helper
Mark Andrews [Thu, 27 Feb 2020 06:29:32 +0000 (17:29 +1100)] 
Address race between zone_maintenance and dns_zone_setview_helper

There was a possible NULL dereference due to data race between accessing
zone->view and zone->view->adb.

5 years agoMerge branch 'each-rndc-netmgr-pt1' into 'main'
Evan Hunt [Fri, 19 Jun 2020 22:19:10 +0000 (22:19 +0000)] 
Merge branch 'each-rndc-netmgr-pt1' into 'main'

client-side TCP

Closes #1958

See merge request isc-projects/bind9!3723

5 years agoCHANGES
Evan Hunt [Wed, 10 Jun 2020 00:53:38 +0000 (17:53 -0700)] 
CHANGES

5 years agochange the signature of recv callbacks to include a result code
Evan Hunt [Thu, 16 Apr 2020 02:26:49 +0000 (19:26 -0700)] 
change the signature of recv callbacks to include a result code

this will allow recv event handlers to distinguish between cases
in which the region is NULL because of error, shutdown, or cancelation.

5 years agoimplement isc_nm_cancelread()
Evan Hunt [Sat, 6 Jun 2020 00:32:36 +0000 (17:32 -0700)] 
implement isc_nm_cancelread()

The isc_nm_cancelread() function cancels reading on a connected
socket and calls its read callback function with a 'result'
parameter of ISC_R_CANCELED.

5 years agoshorten the sleep in isc_nm_destroy()
Evan Hunt [Fri, 10 Apr 2020 23:59:24 +0000 (16:59 -0700)] 
shorten the sleep in isc_nm_destroy()

when isc_nm_destroy() is called, there's a loop that waits for
other references to be detached, pausing and unpausing the netmgr
to ensure that all the workers' events are run, followed by a
1-second sleep. this caused a delay on shutdown which will be
noticeable when netmgr is used in tools other than named itself,
so the delay has now been reduced to a hundredth of a second.

5 years agoimplement isc_nm_tcpconnect()
Evan Hunt [Tue, 17 Dec 2019 02:24:55 +0000 (18:24 -0800)] 
implement isc_nm_tcpconnect()

the isc_nm_tcpconnect() function establishes a client connection via
TCP.  once the connection is esablished, a callback function will be
called with a newly created network manager handle.

5 years agoallow tcpdns sockets to self-reference while connected
Witold Kręcicki [Wed, 10 Jun 2020 00:07:16 +0000 (17:07 -0700)] 
allow tcpdns sockets to self-reference while connected

A TCPDNS socket creates a handle for each complete DNS message.

Previously, when all the handles were disconnected, the socket
would be closed, but the wrapped TCP socket might still have
more to read.

Now, when a connection is established, the TCPDNS socket creates
a reference to itself by attaching itself to sock->self. This
reference isn't cleared until the connection is closed via
EOF, timeout, or server shutdown. This allows the socket to remain
open even when there are no active handles for it.

5 years agomodify reference counting within netmgr
Evan Hunt [Fri, 5 Jun 2020 06:13:54 +0000 (23:13 -0700)] 
modify reference counting within netmgr

- isc__nmhandle_get() now attaches to the sock in the nmhandle object.
  the caller is responsible for dereferencing the original socket
  pointer when necessary.
- tcpdns listener sockets attach sock->outer to the outer tcp listener
  socket. tcpdns connected sockets attach sock->outerhandle to the handle
  for the tcp connected socket.
- only listener sockets need to be attached/detached directly. connected
  sockets should only be accessed and reference-counted via their
  associated handles.

5 years agomake isc_nmsocket_{attach,detach}{} functions private
Evan Hunt [Thu, 4 Jun 2020 21:54:36 +0000 (14:54 -0700)] 
make isc_nmsocket_{attach,detach}{} functions private

there is no need for a caller to reference-count socket objects.
they need tto be able tto close listener sockets (i.e., those
returned by isc_nm_listen{udp,tcp,tcpdns}), and an isc_nmsocket_close()
function has been added for that. other sockets are only accessed via
handles.

5 years agoMerge branch 'marka-placeholder' into 'main'
Mark Andrews [Fri, 19 Jun 2020 02:20:25 +0000 (02:20 +0000)] 
Merge branch 'marka-placeholder' into 'main'

placeholder for [GL #1955]

See merge request isc-projects/bind9!3720

5 years agoplaceholder for [GL #1955]
Mark Andrews [Fri, 19 Jun 2020 02:16:57 +0000 (12:16 +1000)] 
placeholder for [GL #1955]

5 years agoMerge branch 'michal/fix-abi-check-job-in-gitlab-ci' into 'main'
Michał Kępień [Thu, 18 Jun 2020 08:56:01 +0000 (08:56 +0000)] 
Merge branch 'michal/fix-abi-check-job-in-gitlab-ci' into 'main'

Fix ABI check job in GitLab CI

See merge request isc-projects/bind9!3715

5 years agoFix ABI check job in GitLab CI
Michał Kępień [Thu, 18 Jun 2020 08:52:54 +0000 (10:52 +0200)] 
Fix ABI check job in GitLab CI

Since the reference BIND version for the ABI check job which is run for
the main branch is now 9.17.2, autoreconf needs to be run before
./configure as the latter is no longer present in the Git repository.

5 years agoMerge branch 'v9_17_2-release' into 'main'
Michał Kępień [Thu, 18 Jun 2020 08:20:56 +0000 (08:20 +0000)] 
Merge branch 'v9_17_2-release' into 'main'

[CVE-2020-8618] [CVE-2020-8619] Merge 9.17.2 release branch

See merge request isc-projects/bind9!3711

5 years agoSet up release notes for BIND 9.17.3
Michał Kępień [Thu, 18 Jun 2020 08:10:02 +0000 (10:10 +0200)] 
Set up release notes for BIND 9.17.3

5 years agoBump BIND_BASELINE_VERSION for ABI checks
Michał Kępień [Thu, 18 Jun 2020 08:10:02 +0000 (10:10 +0200)] 
Bump BIND_BASELINE_VERSION for ABI checks

5 years agoMerge branch 'prep-release' into master
Evan Hunt [Wed, 10 Jun 2020 21:10:33 +0000 (14:10 -0700)] 
Merge branch 'prep-release' into master

5 years agoUpdate BIND version to 9.17.2
Michał Kępień [Wed, 10 Jun 2020 09:26:35 +0000 (11:26 +0200)] 
Update BIND version to 9.17.2

5 years agoAdd a CHANGES marker
Michał Kępień [Wed, 10 Jun 2020 09:26:35 +0000 (11:26 +0200)] 
Add a CHANGES marker

5 years agoMerge branch 'security-master-docs' into 'security-master'
Michał Kępień [Wed, 10 Jun 2020 09:21:13 +0000 (09:21 +0000)] 
Merge branch 'security-master-docs' into 'security-master'

Prepare documentation for BIND 9.17.2

See merge request isc-private/bind9!172

5 years agoUpdate library API versions
Michał Kępień [Wed, 10 Jun 2020 09:26:35 +0000 (11:26 +0200)] 
Update library API versions

5 years agoTweak and reword release notes
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Tweak and reword release notes

5 years agoAdd release note for #1859
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #1859

5 years agoAdd release note for #1842
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #1842

5 years agoAdd release note for #1834
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #1834

5 years agoAdd release note for #1812
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #1812

5 years agoAdd release note for #1714
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #1714

5 years agoAdd release note for #83
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Add release note for #83

5 years agoReorder release notes
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Reorder release notes

5 years agoMerge branch 'security-wildcard-test-marka' into security-master
Michał Kępień [Tue, 9 Jun 2020 14:24:23 +0000 (16:24 +0200)] 
Merge branch 'security-wildcard-test-marka' into security-master

5 years agoPrepare release notes for BIND 9.17.2
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Prepare release notes for BIND 9.17.2

5 years agoMerge branch 'security-new_reference-insist' into security-master
Michał Kępień [Tue, 9 Jun 2020 14:24:23 +0000 (16:24 +0200)] 
Merge branch 'security-new_reference-insist' into security-master

5 years agoAdd CHANGES note
Mark Andrews [Tue, 2 Jun 2020 05:06:43 +0000 (15:06 +1000)] 
Add CHANGES note

5 years agoTweak and reword recent CHANGES entries
Michał Kępień [Wed, 10 Jun 2020 09:07:02 +0000 (11:07 +0200)] 
Tweak and reword recent CHANGES entries

5 years agoMerge branch '1850-cleanup-client_allocsendbuf' into security-master
Michał Kępień [Tue, 9 Jun 2020 14:24:23 +0000 (16:24 +0200)] 
Merge branch '1850-cleanup-client_allocsendbuf' into security-master

5 years agoAdd CHANGES entry for #1718
Mark Andrews [Tue, 2 Jun 2020 03:50:10 +0000 (13:50 +1000)] 
Add CHANGES entry for #1718

5 years agoAdd checking RFC 4592 responses examples to wildcard system test
Mark Andrews [Tue, 2 Jun 2020 02:38:40 +0000 (12:38 +1000)] 
Add checking RFC 4592 responses examples to wildcard system test

5 years agoAdd release note for #1718
Mark Andrews [Tue, 2 Jun 2020 05:11:05 +0000 (15:11 +1000)] 
Add release note for #1718

5 years agoRemove INSIST from from new_reference
Mark Andrews [Tue, 2 Jun 2020 02:38:40 +0000 (12:38 +1000)] 
Remove INSIST from from new_reference

RBTDB node can now appear on the deadnodes lists following the changes
to decrement_reference in 176b23b6cd98e5b58f832902fdbe964ee5f762d0 to
defer checking of node->down when the tree write lock is not held.  The
node should be unlinked instead.

5 years agoAdd release notes for #1850
Mark Andrews [Fri, 5 Jun 2020 03:08:40 +0000 (13:08 +1000)] 
Add release notes for #1850

5 years agoAdd CHANGES entry for #1850
Mark Andrews [Thu, 28 May 2020 05:28:24 +0000 (15:28 +1000)] 
Add CHANGES entry for #1850

5 years agoAdjust NS_CLIENT_TCP_BUFFER_SIZE and cleanup client_allocsendbuf
Mark Andrews [Thu, 28 May 2020 05:19:25 +0000 (15:19 +1000)] 
Adjust NS_CLIENT_TCP_BUFFER_SIZE and cleanup client_allocsendbuf

NS_CLIENT_TCP_BUFFER_SIZE was 2 byte too large following the
move to netmgr add associated changes to lib/ns/client.c and
as a result an INSIST could be trigger if the DNS message being
constructed had a checkpoint stage that fell in those two extra
bytes.  Adjusted NS_CLIENT_TCP_BUFFER_SIZE and cleaned up
client_allocsendbuf now that the previously reserved 2 bytes
are no longer used.

5 years agoMerge branch 'ondrej/switch-the-default-branch-name-to-main' into 'main'
Ondřej Surý [Wed, 17 Jun 2020 12:12:07 +0000 (12:12 +0000)] 
Merge branch 'ondrej/switch-the-default-branch-name-to-main' into 'main'

Adjust the GitLab CI scripts for new default branch name

See merge request isc-projects/bind9!3706

5 years agoAdjust the GitLab CI scripts for new default branch name
Ondřej Surý [Wed, 17 Jun 2020 11:33:31 +0000 (13:33 +0200)] 
Adjust the GitLab CI scripts for new default branch name

5 years agoMerge branch '1950-placeholder' into 'master'
Ondřej Surý [Wed, 17 Jun 2020 10:40:25 +0000 (10:40 +0000)] 
Merge branch '1950-placeholder' into 'master'

Add CHANGES placeholder for #1950

Closes #1950

See merge request isc-projects/bind9!3705

5 years agoAdd CHANGES placeholder for #1950
Ondřej Surý [Wed, 17 Jun 2020 10:39:05 +0000 (12:39 +0200)] 
Add CHANGES placeholder for #1950

5 years agoMerge branch '1943-remove-references-to-blacklist-and-whitelist-in-bind-arm' into...
Ondřej Surý [Tue, 16 Jun 2020 19:57:41 +0000 (19:57 +0000)] 
Merge branch '1943-remove-references-to-blacklist-and-whitelist-in-bind-arm' into 'master'

Resolve "Remove references to "blacklist" and "whitelist" in BIND ARM"

Closes #1943

See merge request isc-projects/bind9!3693

5 years agoUpdate logging-categories.rst and reference.rst
Suzanne Goldlust [Mon, 15 Jun 2020 17:01:37 +0000 (17:01 +0000)] 
Update logging-categories.rst and reference.rst
Remove references to "blacklist" and "whitelist"

5 years agoMerge branch '1932-text-corrections-in-readme-md' into 'master'
Ondřej Surý [Tue, 16 Jun 2020 19:35:44 +0000 (19:35 +0000)] 
Merge branch '1932-text-corrections-in-readme-md' into 'master'

Resolve "Text corrections in README.md"

Closes #1932

See merge request isc-projects/bind9!3686

5 years agoVarious text edits and corrections to README.md
Suzanne Goldlust [Tue, 16 Jun 2020 19:35:44 +0000 (19:35 +0000)] 
Various text edits and corrections to README.md

5 years agoMerge branch '1931-fix-out-of-order-rfcs-in-general-rst-file-of-bind-arm' into 'master'
Ondřej Surý [Tue, 16 Jun 2020 19:30:44 +0000 (19:30 +0000)] 
Merge branch '1931-fix-out-of-order-rfcs-in-general-rst-file-of-bind-arm' into 'master'

Resolve "Fix out-of-order RFCs in general.rst file of BIND ARM"

Closes #1931

See merge request isc-projects/bind9!3685

5 years agoFix two RFCs that were out of numerical order
Suzanne Goldlust [Wed, 10 Jun 2020 19:15:52 +0000 (19:15 +0000)] 
Fix two RFCs that were out of numerical order

5 years agoMerge branch '1945-system-clang-tsan-has-bad-symbolizer' into 'master'
Ondřej Surý [Tue, 16 Jun 2020 08:49:08 +0000 (08:49 +0000)] 
Merge branch '1945-system-clang-tsan-has-bad-symbolizer' into 'master'

Set the TSAN symbolizer path directly, the indirection via env doesn't work

Closes #1945

See merge request isc-projects/bind9!3696

5 years agoSet the TSAN symbolizer path directly, the indirection via env doesn't work
Ondřej Surý [Tue, 16 Jun 2020 07:58:49 +0000 (09:58 +0200)] 
Set the TSAN symbolizer path directly, the indirection via env doesn't work

5 years agoMerge branch '1474-threadsanitizer-data-race-lib-dns-message-c' into 'master'
Ondřej Surý [Tue, 16 Jun 2020 06:57:21 +0000 (06:57 +0000)] 
Merge branch '1474-threadsanitizer-data-race-lib-dns-message-c' into 'master'

Add missing acquire memory barrier in isc_nmhandle_unref

Closes #1474

See merge request isc-projects/bind9!3689

5 years agoAdd missing acquire memory barrier in isc_nmhandle_unref
Ondřej Surý [Thu, 11 Jun 2020 11:01:26 +0000 (13:01 +0200)] 
Add missing acquire memory barrier in isc_nmhandle_unref

The ThreadSanitizer uses system synchronization primitives to check for
data race.  The netmgr handle->references was missing acquire memory
barrier before resetting and reusing the memory occupied by isc_nmhandle_t.

5 years agoMerge branch 'marka-dsset-refs' into 'master'
Mark Andrews [Thu, 11 Jun 2020 06:07:21 +0000 (06:07 +0000)] 
Merge branch 'marka-dsset-refs' into 'master'

The dsset returned by dns_keynode_dsset() was not thread safe

Closes #1926

See merge request isc-projects/bind9!3687

5 years agoAdd release note for [GL #1926]
Mark Andrews [Thu, 11 Jun 2020 03:10:10 +0000 (13:10 +1000)] 
Add release note for [GL #1926]

5 years agoAdd CHANGES note [GL #1926]
Mark Andrews [Thu, 11 Jun 2020 03:08:07 +0000 (13:08 +1000)] 
Add CHANGES note [GL #1926]

5 years agoval->keynode is no longer needed
Mark Andrews [Thu, 11 Jun 2020 05:01:12 +0000 (15:01 +1000)] 
val->keynode is no longer needed

5 years agoThe dsset returned by dns_keynode_dsset needs to be thread safe.
Mark Andrews [Wed, 10 Jun 2020 07:07:52 +0000 (17:07 +1000)] 
The dsset returned by dns_keynode_dsset needs to be thread safe.

- clone keynode->dsset rather than return a pointer so that thread
  use is independent of each other.
- hold a reference to the dsset (keynode) so it can't be deleted
  while in use.
- create a new keynode when removing DS records so that dangling
  pointers to the deleted records will not occur.
- use a rwlock when accessing the rdatalist to prevent instabilities
  when DS records are added.

5 years agoMerge branch '1930-tcp-race-quota' into 'master'
Evan Hunt [Wed, 10 Jun 2020 18:49:33 +0000 (18:49 +0000)] 
Merge branch '1930-tcp-race-quota' into 'master'

Fix a race in TCP accepting.

Closes #1930

See merge request isc-projects/bind9!3683

5 years agoFix a race in TCP accepting.
Witold Kręcicki [Wed, 10 Jun 2020 14:19:16 +0000 (16:19 +0200)] 
Fix a race in TCP accepting.

There's a possibility of a race in TCP accepting code:
T1 accepts a connection C1
T2 accepts a connection C2
T1 tries to accept a connection C3, but we hit a quota,
   isc_quota_cb_init() sets quota_accept_cb for the socket,
   we return from accept_connection
T2 drops C2, but we race in quota_release with accepting C3 so
   we don't see quota->waiting is > 0, we don't launch the callback
T1 accepts a connection C4, we are able to get the quota we clear
   the quota_accept_cb from sock->quotacb
T1 drops C1, tries to call the callback which is zeroed, sigsegv.

5 years agoDon't clean quota cb cb_func/data, we don't own it
Witold Kręcicki [Wed, 10 Jun 2020 15:51:27 +0000 (17:51 +0200)] 
Don't clean quota cb cb_func/data, we don't own it

5 years agoMerge branch '1867-fix-system-tests-on-windows' into 'master'
Michał Kępień [Tue, 9 Jun 2020 13:38:39 +0000 (13:38 +0000)] 
Merge branch '1867-fix-system-tests-on-windows' into 'master'

Fix system tests on Windows

Closes #1867

See merge request isc-projects/bind9!3680

5 years agoDisable temporarily unsupported tests on Windows
Michał Kępień [Tue, 9 Jun 2020 13:35:54 +0000 (15:35 +0200)] 
Disable temporarily unsupported tests on Windows

Due to the changes introduced by the Automake migration, system tests
requiring Python (chain, pipelined, qmin, tcp), dynamic loading of
shared objects (dlzexternal, dyndb, filter-aaaa), or LMDB (nzd2nzf)
currently do not work on Windows.  Temporarily disable them on that
platform by moving them from the PARALLEL_COMMON list to the
PARALLEL_UNIX list until the situation is rectified.

5 years agoFix SYSTEMTESTTOP on Windows
Michał Kępień [Tue, 9 Jun 2020 13:35:54 +0000 (15:35 +0200)] 
Fix SYSTEMTESTTOP on Windows

Without SYSTEMTESTTOP=.. lines in tests.sh scripts, SYSTEMTESTTOP is
being set to an absolute path.  On Windows, this means that an absolute
Cygwin path gets passed as a command line argument to native Windows
binaries, which cannot work and causes system tests to break.  Fix by
passing SYSTEMTESTTOP through cygpath on Windows, which causes that
variable to be set to an absolute "mixed mode" path (Windows path with
forward slashes).

5 years agoMerge branch '1921-gitlab-ci-release-process-fixes' into 'master'
Michał Kępień [Tue, 9 Jun 2020 12:51:05 +0000 (12:51 +0000)] 
Merge branch '1921-gitlab-ci-release-process-fixes' into 'master'

GitLab CI release process fixes

Closes #1921

See merge request isc-projects/bind9!3670

5 years agoRestore GitLab CI job building release tarballs
Michał Kępień [Tue, 9 Jun 2020 12:47:06 +0000 (14:47 +0200)] 
Restore GitLab CI job building release tarballs

With "make dist" producing usable source tarballs and documentation
building working again, restore the script which allows a release
tarball to be built by a GitLab CI job, only making minimal adjustments
required due to the changes in the documentation building process and
due to dropping the "version" file.

5 years agoMake Sphinx output document naming consistent
Michał Kępień [Tue, 9 Jun 2020 12:47:06 +0000 (14:47 +0200)] 
Make Sphinx output document naming consistent

Ensure the name of the EPUB file produced by Sphinx is consistent with
the name of its PDF counterpart by adjusting Sphinx configuration.

5 years agoFix respdiff job in GitLab CI
Michał Kępień [Tue, 9 Jun 2020 12:47:06 +0000 (14:47 +0200)] 
Fix respdiff job in GitLab CI

As the "configure" script is no longer stored in the Git repository, run
"autoreconf -fi" at the beginning of the respdiff job in GitLab CI in
order to enable that job to work properly.