]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
5 years agoFix assertion failure during startup when the server is under load.
Witold Kręcicki [Thu, 21 May 2020 09:18:53 +0000 (11:18 +0200)] 
Fix assertion failure during startup when the server is under load.

When we're coming back from recursion fetch_callback does not accept
DNS_R_NXDOMAIN as an rcode - query_gotanswer calls query_nxdomain in
which an assertion fails on qctx->is_zone. Yet, under some
circumstances, qname minimization will return an DNS_R_NXDOMAIN - when
root zone mirror is not yet loaded. The fix changes the DNS_R_NXDOMAIN
answer to DNS_R_SERVFAIL.

5 years agoMerge branch 'ondrej/update-rndc.conf-manpage' into 'main'
Ondřej Surý [Wed, 1 Jul 2020 10:18:55 +0000 (10:18 +0000)] 
Merge branch 'ondrej/update-rndc.conf-manpage' into 'main'

Commit the regenerated rndc.conf.5in manual page

See merge request isc-projects/bind9!3777

5 years agoCommit the regenerated rndc.conf.5in manual page
Ondřej Surý [Wed, 1 Jul 2020 09:45:03 +0000 (11:45 +0200)] 
Commit the regenerated rndc.conf.5in manual page

5 years agoMerge branch '1747-fix-race-in-rndc-when-shutting-down' into 'main'
Ondřej Surý [Wed, 1 Jul 2020 10:14:05 +0000 (10:14 +0000)] 
Merge branch '1747-fix-race-in-rndc-when-shutting-down' into 'main'

Resolve "BIND 9.16.1 does core dump when stopped"

Closes #1747

See merge request isc-projects/bind9!3740

5 years agoAdd CHANGES and release not for #1747
Ondřej Surý [Tue, 23 Jun 2020 11:30:09 +0000 (13:30 +0200)] 
Add CHANGES and release not for #1747

5 years agoAdded test for the fix
Diego Fronza [Mon, 25 May 2020 18:03:32 +0000 (15:03 -0300)] 
Added test for the fix

This test ensures that named will correctly shutdown
when receiving multiple control connections after processing
of either "rncd stop" or "kill -SIGTERM" commands.

Before the fix, named was crashing due to a race condition happening
between two threads, one running shutdown logic in named/server.c
and other handling control logic in controlconf.c.

This test tries to reproduce the above scenario by issuing multiple
queries to a target named instance, issuing either rndc stop or kill
-SIGTERM command to the same named instance, then starting multiple rndc
status connections to ensure it is not crashing anymore.

5 years agoDon't continue opening a new rndc connection if we are shutting down
Ondřej Surý [Tue, 23 Jun 2020 11:02:21 +0000 (13:02 +0200)] 
Don't continue opening a new rndc connection if we are shutting down

Due to lack of synchronization, whenever named was being requested to
stop using rndc, controlconf.c module could be trying to access an already
released pointer through named_g_server->interfacemgr in a separate
thread.

The race could only be triggered if named was being shutdown and more
rndc connections were ocurring at the same time.

This fix correctly checks if the server is shutting down before opening
a new rndc connection.

5 years agoMerge branch '1936-blackhole-fix' into 'main'
Evan Hunt [Wed, 1 Jul 2020 02:41:02 +0000 (02:41 +0000)] 
Merge branch '1936-blackhole-fix' into 'main'

Resolve "blackhole ACL broken"

Closes #1936

See merge request isc-projects/bind9!3751

5 years agoCHANGES, release note
Evan Hunt [Tue, 30 Jun 2020 05:55:13 +0000 (22:55 -0700)] 
CHANGES, release note

5 years agorestore "blackhole" functionality
Evan Hunt [Wed, 17 Jun 2020 19:09:10 +0000 (12:09 -0700)] 
restore "blackhole" functionality

the blackhole ACL was accidentally disabled with respect to client
queries during the netmgr conversion.

in order to make this work for TCP, it was necessary to add a return
code to the accept callback functions passed to isc_nm_listentcp() and
isc_nm_listentcpdns().

5 years agoupdate the acl system test to include a blackhole test case
Evan Hunt [Wed, 17 Jun 2020 22:30:59 +0000 (15:30 -0700)] 
update the acl system test to include a blackhole test case

this ACL was previously untested, which allowed a regression to
go undetected.

5 years agoMerge branch '1612-rndc-dnssec-status' into 'main'
Matthijs Mekking [Tue, 30 Jun 2020 09:12:48 +0000 (09:12 +0000)] 
Merge branch '1612-rndc-dnssec-status' into 'main'

Resolve "Get current state of DNSSEC keys (kasp) via rndc"

Closes #1612

See merge request isc-projects/bind9!3717

5 years agoUpdate notes, changes for #1612
Matthijs Mekking [Thu, 18 Jun 2020 15:10:34 +0000 (17:10 +0200)] 
Update notes, changes for #1612

5 years agoOutput rndc dnssec -status
Matthijs Mekking [Thu, 18 Jun 2020 15:07:52 +0000 (17:07 +0200)] 
Output rndc dnssec -status

Implement the 'rndc dnssec -status' command that will output
some information about the key states, such as which policy is
used for the zone, what keys are in use, and when rollover is
scheduled.

Add loose testing in the kasp system test, the actual times are
already tested via key file inspection.

5 years agoImplement dummy 'rndc dnssec -status' command
Matthijs Mekking [Wed, 17 Jun 2020 12:58:57 +0000 (14:58 +0200)] 
Implement dummy 'rndc dnssec -status' command

Add the code and documentation required to provide DNSSEC signing
status through rndc.  This does not yet show any useful information,
just provide the command that will output some dummy string.

5 years agoMove dst key printtime in separate function
Matthijs Mekking [Wed, 17 Jun 2020 12:00:09 +0000 (14:00 +0200)] 
Move dst key printtime in separate function

I'd like to use the same functionality (pretty print the datetime
of keytime metadata) in the 'rndc dnssec -status' command.  So it is
better that this logic is done in a separate function.

Since the stdtime.c code have differernt files for unix and win32,
I think the "#ifdef WIN32" define can be dropped.

5 years agoMerge branch 'matthijs-one-more-rfc4592-test' into 'main'
Matthijs Mekking [Tue, 30 Jun 2020 07:01:47 +0000 (07:01 +0000)] 
Merge branch 'matthijs-one-more-rfc4592-test' into 'main'

Add one more RFC 4592 test

See merge request isc-projects/bind9!3764

5 years agoAdd one more RFC 4592 test
Matthijs Mekking [Tue, 16 Jun 2020 06:26:39 +0000 (08:26 +0200)] 
Add one more RFC 4592 test

This deals with the SRV example.

5 years agoMerge branch 'marka-fixup-dnstap-test' into 'main'
Mark Andrews [Mon, 29 Jun 2020 22:28:46 +0000 (22:28 +0000)] 
Merge branch 'marka-fixup-dnstap-test' into 'main'

Fix the dnstap roll test

See merge request isc-projects/bind9!3756

5 years agoFix the dnstap roll test by:
Mark Andrews [Fri, 26 Jun 2020 06:08:18 +0000 (16:08 +1000)] 
Fix the dnstap roll test by:

* fixing the find call.
* checking that we rolled a file.

5 years agoMerge branch 'placeholder' into 'main'
Evan Hunt [Mon, 29 Jun 2020 20:23:30 +0000 (20:23 +0000)] 
Merge branch 'placeholder' into 'main'

placeholder

See merge request isc-projects/bind9!3767

5 years agoplaceholder
Evan Hunt [Mon, 29 Jun 2020 20:22:42 +0000 (13:22 -0700)] 
placeholder

5 years agoMerge branch 'ondrej/fix-manpages-in-rtd' into 'main'
Ondřej Surý [Mon, 29 Jun 2020 17:40:37 +0000 (17:40 +0000)] 
Merge branch 'ondrej/fix-manpages-in-rtd' into 'main'

Fix the manpages TOC in the BIND 9 ARM

See merge request isc-projects/bind9!3765

5 years agoFix miscellaneous little bugs in RST formatting
Ondřej Surý [Mon, 29 Jun 2020 17:39:03 +0000 (19:39 +0200)] 
Fix miscellaneous little bugs in RST formatting

5 years agoAdd missing rndc.conf header that was breaking manpages section
Ondřej Surý [Mon, 29 Jun 2020 17:37:18 +0000 (19:37 +0200)] 
Add missing rndc.conf header that was breaking manpages section

The rndc.conf main header was missing the header markup and that was
breaking the TOC for all manpages in the ARM because sphinx-build
incorrectly remembered the markup for subheader to be ~~~~ instead of
----.

5 years agoMerge branch 'mnowak/add-new-releases' into 'main'
Michał Kępień [Mon, 29 Jun 2020 10:42:22 +0000 (10:42 +0000)] 
Merge branch 'mnowak/add-new-releases' into 'main'

Add Ubuntu 20.04, Fedora 32, Alpine 3.12, OpenBSD 6.7, and FreeBSD 11.4

See merge request isc-projects/bind9!3503

5 years agoFix build-time GSSAPI detection on Tumbleweed
Michał Kępień [Thu, 23 Apr 2020 10:32:35 +0000 (12:32 +0200)] 
Fix build-time GSSAPI detection on Tumbleweed

The "krb5-devel" package on openSUSE Tumbleweed installs the
"krb5-config" binary into a custom prefix, which prevents BIND's
"configure" script from autodetecting it.  Fix by specifying the path to
the "krb5-config" binary using --with-gssapi.

5 years agoUpdate FreeBSD 11 to 11.4
Michal Nowak [Wed, 17 Jun 2020 07:28:26 +0000 (09:28 +0200)] 
Update FreeBSD 11 to 11.4

5 years agoUpdate to Alpine Linux 3.12
Michal Nowak [Mon, 1 Jun 2020 06:18:24 +0000 (08:18 +0200)] 
Update to Alpine Linux 3.12

5 years agoUpdate to OpenBSD 6.7
Michal Nowak [Mon, 1 Jun 2020 06:15:58 +0000 (08:15 +0200)] 
Update to OpenBSD 6.7

5 years agoDrop Bionic
Michal Nowak [Fri, 15 May 2020 09:02:18 +0000 (11:02 +0200)] 
Drop Bionic

5 years agoAdd Ubuntu 20.04 Focal Fossa, update Fedora to 32
Michal Nowak [Tue, 5 May 2020 07:48:11 +0000 (09:48 +0200)] 
Add Ubuntu 20.04 Focal Fossa, update Fedora to 32

5 years agoMerge branch 'michal/fix-libdns-cflags' into 'main'
Michał Kępień [Mon, 29 Jun 2020 08:29:19 +0000 (08:29 +0000)] 
Merge branch 'michal/fix-libdns-cflags' into 'main'

Fix libdns CFLAGS

See merge request isc-projects/bind9!3759

5 years agoFix libdns CFLAGS
Michał Kępień [Mon, 29 Jun 2020 08:23:23 +0000 (10:23 +0200)] 
Fix libdns CFLAGS

Since lib/dns/include/dns/view.h unconditionally defines dnstap-related
fields in struct dns_view (and includes <dns/dnstap.h>), care must be
taken to ensure that any source file which includes <dns/view.h> gets
built with a set of CFLAGS which allows <dns/dnstap.h> to be properly
processed (particularly its <fstrm.h> and <protobuf-c/protobuf-c.h>
conditional dependencies which are only included for dnstap-enabled
builds).  Ensure that by making LIBDNS_CFLAGS include DNSTAP_CFLAGS when
building with dnstap support.

The same reasoning applies for LMDB_CFLAGS.

5 years agoFix restoring CFLAGS and LIBS in AX_LIB_LMDB()
Michał Kępień [Mon, 29 Jun 2020 08:23:23 +0000 (10:23 +0200)] 
Fix restoring CFLAGS and LIBS in AX_LIB_LMDB()

The AX_LIB_LMDB() macro attempts to test the potential LMDB installation
path provided to it by temporarily updating CFLAGS and LIBS, calling
AC_SEARCH_LIBS(), and then restoring CFLAGS and LIBS to their original
values.  However, including certain statements (e.g. "break") in the
arguments provided to the AX_LIB_LMDB() macro may cause an early exit
from it, in which case CFLAGS and LIBS will be left polluted.  Fix by
resetting CFLAGS and LIBS to their original values before executing the
commands provided as AX_LIB_LMDB() arguments.

5 years agoMerge branch '1876-kasp-test-wait-for-reconfig' into 'main'
Matthijs Mekking [Mon, 29 Jun 2020 06:01:54 +0000 (06:01 +0000)] 
Merge branch '1876-kasp-test-wait-for-reconfig' into 'main'

Resolve "kasp: algnum migration test does not wait long enough."

Closes #1876

See merge request isc-projects/bind9!3588

5 years agokasp tests: fix wait for reconfig done
Matthijs Mekking [Tue, 26 May 2020 11:28:29 +0000 (13:28 +0200)] 
kasp tests: fix wait for reconfig done

The wait until zones are signed after rndc reconfig is broken
because the zones are already signed before the reconfig.  Fix
by having a different way to ensure the signing of the zone is
complete.  This does require a call to the "wait_for_done_signing"
function after each "check_keys" call after the ns6 reconfig.

The "wait_for_done_signing" looks for a (newly added) debug log
message that named will output if it is done signing with a certain
key.

5 years agokasp tests: Replace while loops with retry_quiet
Matthijs Mekking [Tue, 26 May 2020 07:14:15 +0000 (09:14 +0200)] 
kasp tests: Replace while loops with retry_quiet

5 years agoMerge branch 'each-changes' into 'main'
Evan Hunt [Fri, 26 Jun 2020 08:16:03 +0000 (08:16 +0000)] 
Merge branch 'each-changes' into 'main'

add missing CHANGES notes

See merge request isc-projects/bind9!3757

5 years agoadd missing CHANGES notes
Evan Hunt [Fri, 26 Jun 2020 08:14:30 +0000 (01:14 -0700)] 
add missing CHANGES notes

CHANGES notes were accidentally omitted from the previous merge.

5 years agoMerge branch 'each-netmgr-fix-shutdown-crash' into 'main'
Evan Hunt [Fri, 26 Jun 2020 07:49:46 +0000 (07:49 +0000)] 
Merge branch 'each-netmgr-fix-shutdown-crash' into 'main'

clean up outerhandle when a tcpdns socket is disconnected

See merge request isc-projects/bind9!3726

5 years agoMake netmgr tcpdns send calls asynchronous
Evan Hunt [Mon, 22 Jun 2020 23:45:47 +0000 (16:45 -0700)] 
Make netmgr tcpdns send calls asynchronous

isc__nm_tcpdns_send() was not asynchronous and accessed socket
internal fields in an unsafe manner, which could lead to a race
condition and subsequent crash. Fix it by moving tcpdns processing
to a proper netmgr thread.

5 years agoFix a shutdown race in netmgr udp
Witold Kręcicki [Mon, 22 Jun 2020 22:46:11 +0000 (15:46 -0700)] 
Fix a shutdown race in netmgr udp

We need to mark the socket as inactive early (and synchronously)
in the stoplistening process; otherwise we might destroy the
callback argument before we actually stop listening, and call
the callback on bad memory.

5 years agoclean up outerhandle when a tcpdns socket is disconnected
Evan Hunt [Sat, 20 Jun 2020 22:03:05 +0000 (15:03 -0700)] 
clean up outerhandle when a tcpdns socket is disconnected

this prevents a crash when some non-netmgr thread, such as a
recursive lookup, times out after the TCP socket is already
disconnected.

5 years agoMerge branch '1952-yaml-ipv6' into 'main'
Evan Hunt [Fri, 26 Jun 2020 01:56:29 +0000 (01:56 +0000)] 
Merge branch '1952-yaml-ipv6' into 'main'

append "0" to IPv6 addresses ending in "::" when printing YAML

Closes #1952

See merge request isc-projects/bind9!3714

5 years agoappend "0" to IPv6 addresses ending in "::" when printing YAML
Evan Hunt [Thu, 18 Jun 2020 00:53:07 +0000 (17:53 -0700)] 
append "0" to IPv6 addresses ending in "::" when printing YAML

such addresses broke some YAML parsers.

5 years agoMerge branch '1689-bind-stops-dnskey-lookup-in-get_dst_key-when-a-key-with-unsupporte...
Mark Andrews [Thu, 25 Jun 2020 12:40:45 +0000 (12:40 +0000)] 
Merge branch '1689-bind-stops-dnskey-lookup-in-get_dst_key-when-a-key-with-unsupported-algorithm-is-found-first' into 'main'

Resolve "BIND stops DNSKEY lookup in get_dst_key() when a key with unsupported algorithm is found first"

Closes #1689

See merge request isc-projects/bind9!3736

5 years agoAdd todo in dnssec system test for [GL #1689]
Matthijs Mekking [Thu, 25 Jun 2020 11:39:24 +0000 (13:39 +0200)] 
Add todo in dnssec system test for [GL #1689]

Add a note why we don't have a test case for the issue.

It is tricky to write a good test case for this if our tools are
not allowed to create signatures for unsupported algorithms.

5 years agoAdd Release Note for [GL #1689]
Mark Andrews [Tue, 23 Jun 2020 00:56:07 +0000 (10:56 +1000)] 
Add Release Note for [GL #1689]

5 years agoAdd CHANGES for [GL #1689]
Mark Andrews [Tue, 23 Jun 2020 00:52:09 +0000 (10:52 +1000)] 
Add CHANGES for [GL #1689]

5 years agoThe validator could fail when select_signing_key/get_dst_key failed
Mark Andrews [Tue, 23 Jun 2020 00:26:01 +0000 (10:26 +1000)] 
The validator could fail when select_signing_key/get_dst_key failed

to select the signing key because the algorithm was not supported
and the loop was prematurely aborted.

5 years agoMerge branch '1969-silence-cppcheck-warnings' into 'main'
Mark Andrews [Thu, 25 Jun 2020 07:01:05 +0000 (07:01 +0000)] 
Merge branch '1969-silence-cppcheck-warnings' into 'main'

Resolve "Silence CPPCHECK warnings"

Closes #1969

See merge request isc-projects/bind9!3741

5 years agoSuppress cppcheck warnings:
Mark Andrews [Wed, 24 Jun 2020 04:31:00 +0000 (14:31 +1000)] 
Suppress cppcheck warnings:

cppcheck-suppress objectIndex
cppcheck-suppress nullPointerRedundantCheck

5 years agoAdd INSIST's to silence cppcheck warnings
Mark Andrews [Thu, 25 Jun 2020 00:45:02 +0000 (10:45 +1000)] 
Add INSIST's to silence cppcheck warnings

5 years agoRemove now redundant check for state != NULL
Mark Andrews [Wed, 24 Jun 2020 03:43:50 +0000 (13:43 +1000)] 
Remove now redundant check for state != NULL

5 years agoAddress potential thread issues:
Mark Andrews [Wed, 24 Jun 2020 03:42:30 +0000 (13:42 +1000)] 
Address potential thread issues:

Assign and then check node for NULL to address another thread
changing radix->head in the meantime.

Move 'node != NULL' check into while loop test to silence cppcheck
false positive.

Fix pointer != NULL style.

6 years agoMerge branch '1965-bin-named-unix-os-c-warning-s-directive-output-may-be-truncated...
Mark Andrews [Wed, 24 Jun 2020 23:22:08 +0000 (23:22 +0000)] 
Merge branch '1965-bin-named-unix-os-c-warning-s-directive-output-may-be-truncated-on-openindiana' into 'main'

Resolve "bin/named/unix/os.c warning: '%s' directive output may be truncated on OpenIndiana"

Closes #1965

See merge request isc-projects/bind9!3737

6 years agoResize unamebuf[] to avoid warnings about snprintf() not having
Mark Andrews [Tue, 23 Jun 2020 07:00:43 +0000 (17:00 +1000)] 
Resize unamebuf[] to avoid warnings about snprintf() not having
enough buffer space.  Also change named_os_uname() prototype so
that it is now returning (const char *) rather than (char *).  If
uname() is not supported on a UNIX build prepopulate unamebuf[]
with "unknown architecture".

6 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

6 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.

6 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

6 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

6 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.

6 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

6 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]

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

6 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

6 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.

6 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

6 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.

6 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

6 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.

6 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

6 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

6 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.

6 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.

6 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.

6 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

6 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.

6 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

6 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.

6 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

6 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

6 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.

6 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

6 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.

6 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

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

6 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.

6 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.

6 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.

6 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.

6 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.

6 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.

6 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.

6 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

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

6 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

6 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.

6 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