BIND issueshttps://gitlab.isc.org/isc-projects/bind9/-/issues2020-07-01T21:47:50Zhttps://gitlab.isc.org/isc-projects/bind9/-/issues/1987Fix formatting error in man pages section of BIND ARM2020-07-01T21:47:50ZSuzanne GoldlustFix formatting error in man pages section of BIND ARMOne formatting error was missed the first time around.One formatting error was missed the first time around.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Suzanne GoldlustSuzanne Goldlusthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1977BIND 9.16 triggers build warnings on FreeBSD 11.42020-06-30T10:19:31ZMichał KępieńBIND 9.16 triggers build warnings on FreeBSD 11.4With Clang 10.0.0 on FreeBSD 11.4, compiling `lib/dns/spnego.c` triggers
the following warnings:
spnego.c:361:11: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
...With Clang 10.0.0 on FreeBSD 11.4, compiling `lib/dns/spnego.c` triggers
the following warnings:
spnego.c:361:11: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
return (GSS_S_DEFECTIVE_TOKEN);
^
/usr/include/gssapi/gssapi.h:423:41: note: expanded from macro 'GSS_S_DEFECTIVE_TOKEN'
#define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
^
spnego.c:366:11: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
return (GSS_S_DEFECTIVE_TOKEN);
^
/usr/include/gssapi/gssapi.h:423:41: note: expanded from macro 'GSS_S_DEFECTIVE_TOKEN'
#define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
^
spnego.c:371:12: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
return (GSS_S_DEFECTIVE_TOKEN);
^
/usr/include/gssapi/gssapi.h:423:41: note: expanded from macro 'GSS_S_DEFECTIVE_TOKEN'
#define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
^
spnego.c:376:11: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
return (GSS_S_DEFECTIVE_TOKEN);
^
/usr/include/gssapi/gssapi.h:423:41: note: expanded from macro 'GSS_S_DEFECTIVE_TOKEN'
#define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
^
spnego.c:380:11: error: converting the result of '<<' to a boolean always evaluates to true [-Werror,-Wtautological-constant-compare]
return (GSS_S_DEFECTIVE_TOKEN);
^
/usr/include/gssapi/gssapi.h:423:41: note: expanded from macro 'GSS_S_DEFECTIVE_TOKEN'
#define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
^
5 errors generated.
For some reason, the `buster` build (which uses Clang 10.0.1) is happy
with this code as it is :shrug:
The prototype of `lib/dns/spnego.c:cmp_gss_type()` was changed back in
b105ccee68ccc3c18e6ea530063b3c8e5a42571c. `v9_11` is not affected
because !546 was not backported. `main` is not affected, either,
because 978c7b2e89aa37a7ddfe2f6b6ba12ce73dd04528 dropped
`lib/dns/spnego.c` altogether.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1969Silence CPPCHECK warnings2020-12-17T13:20:36ZMark AndrewsSilence CPPCHECK warningsJob [#972939](https://gitlab.isc.org/isc-projects/bind9/-/jobs/972939) failed for e82527727c42f9bb3e3a6c4f5b2dfd7a13a67c4c:
https://isc-projects.isc-pag.es/-/bind9/-/jobs/972939/artifacts/cppcheck_html/index.html
These appear to be fal...Job [#972939](https://gitlab.isc.org/isc-projects/bind9/-/jobs/972939) failed for e82527727c42f9bb3e3a6c4f5b2dfd7a13a67c4c:
https://isc-projects.isc-pag.es/-/bind9/-/jobs/972939/artifacts/cppcheck_html/index.html
These appear to be false positives with the exception of a now redundant NULL check in update.cJuly 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Mark AndrewsMark Andrewshttps://gitlab.isc.org/isc-projects/bind9/-/issues/1968Again: BIND | rbtdb.c:2162: INSIST with bind with 9.11.20 (see #1718)2020-07-02T09:33:14ZHolger WirtzAgain: BIND | rbtdb.c:2162: INSIST with bind with 9.11.20 (see #1718)<!--
If the bug you are reporting is potentially security-related - for example,
if it involves an assertion failure or other crash in `named` that can be
triggered repeatedly - then please do *NOT* report it here, but send an
email to [...<!--
If the bug you are reporting is potentially security-related - for example,
if it involves an assertion failure or other crash in `named` that can be
triggered repeatedly - then please do *NOT* report it here, but send an
email to [security-officer@isc.org](security-officer@isc.org).
-->
### Summary
Same problem as #1718, but this time after several hours on two of our three slave servers at the same time:
Sudden crash of the named process.
### BIND version used
```
BIND 9.11.20 (Extended Support Version) <id:f3d1d66>
running on Linux x86_64 3.16.0-10-amd64 #1 SMP Debian 3.16.81-1 (2020-01-17)
built by make with '--prefix=/usr' '--mandir=/usr/share/man' '--libdir=/usr/lib/x86_64-linux-gnu' '--infodir=/usr/share/info' '--sysconfdir=/etc/bind' '--with-python=python3' '--localstatedir=/' '--enable-threads' '--enable-largefile' '--with-libtool' '--enable-shared' '--enable-static' '--with-openssl=/usr' '--with-gssapi=/usr' '--with-gnu-ld' '--enable-ipv6' '--enable-filter-aaaa' '--with-make-clean'
compiled by GCC 4.9.2
compiled with OpenSSL version: OpenSSL 1.0.1t 3 May 2016
linked to OpenSSL version: OpenSSL 1.0.1t 3 May 2016
compiled with libxml2 version: 2.9.1
linked to libxml2 version: 20901
compiled with libjson-c version: 0.11.99
linked to libjson-c version: 0.11.99
compiled with zlib version: 1.2.8
linked to zlib version: 1.2.8
threads support is enabled
default paths:
named configuration: /etc/bind/named.conf
rndc configuration: /etc/bind/rndc.conf
DNSSEC root key: /etc/bind/bind.keys
nsupdate session key: //run/named/session.key
named PID file: //run/named/named.pid
named lock file: //run/named/named.lock
```
### Steps to reproduce
```
# Created bind as usual:
VERSION=9.11.20
wget -O bind-$(VERSION).tar.gz https://downloads.isc.org/isc/bind9/$(VERSION)/bind-$(VERSION).tar.gz
wget -O bind-$(VERSION).tar.gz.sha512.asc https://downloads.isc.org/isc/bind9/$(VERSION) /bind-$(VERSION).tar.gz.sha512.asc
gpg --verify bind-$(VERSION).tar.gz.sha512.asc bind-$(VERSION).tar.gz
tar -zxf bind-$(VERSION).tar.gz
bind-$(VERSION)
./configure --prefix=/usr \
--mandir=\$${prefix}/share/man \
--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
--infodir=\$${prefix}/share/info \
--sysconfdir=/etc/bind \
--with-python=python3 \
--localstatedir=/ \
--enable-threads \
--enable-largefile \
--with-libtool \
--enable-shared \
--enable-static \
--with-openssl=/usr \
--with-gssapi=/usr \
--with-gnu-ld \
--enable-ipv6 \
--enable-filter-aaaa
make && make install
```
### What is the current *bug* behavior?
After several hours, bind crashes with the following message in general.log:
```
23-Jun-2020 14:25:01.251 general: rbtdb.c:2162: INSIST(((unsigned int)(isc_atomic_xadd(&(&(node)->references)->refs, 0))) == 0 && node->data == ((void *)0)) failed, back trace
23-Jun-2020 14:25:01.251 general: #0 0x43fe6d in ??
23-Jun-2020 14:25:01.251 general: #1 0x7f382e8ffcfa in ??
23-Jun-2020 14:25:01.251 general: #2 0x7f382fbc73ed in ??
23-Jun-2020 14:25:01.251 general: #3 0x7f382fbc776c in ??
23-Jun-2020 14:25:01.251 general: #4 0x7f382e929a17 in ??
23-Jun-2020 14:25:01.251 general: #5 0x7f382daaa064 in ??
23-Jun-2020 14:25:01.251 general: #6 0x7f382d47862d in ??
23-Jun-2020 14:25:01.251 general: exiting (due to assertion failure)
```
The same (at the same time!) happens on the other dns-slave server:
```
23-Jun-2020 14:25:01.594 general: rbtdb.c:2162: INSIST(((unsigned int)(isc_atomic_xadd(&(&(node)->references)->refs, 0))) == 0 && node->data == ((void *)0)) failed, back trace
23-Jun-2020 14:25:01.594 general: #0 0x43fe6d in ??
23-Jun-2020 14:25:01.594 general: #1 0x7f19743eacfa in ??
23-Jun-2020 14:25:01.594 general: #2 0x7f19756b23ed in ??
23-Jun-2020 14:25:01.594 general: #3 0x7f19756b276c in ??
23-Jun-2020 14:25:01.594 general: #4 0x7f1974414a17 in ??
23-Jun-2020 14:25:01.594 general: #5 0x7f1973595064 in ??
23-Jun-2020 14:25:01.594 general: #6 0x7f1972f6362d in ??
23-Jun-2020 14:25:01.594 general: exiting (due to assertion failure)
```
### What is the expected *correct* behavior?
No crash.
### Relevant configuration files
named.conf:
```
include "/etc/bind/named.conf.local"; // only ACLs, logging and statistic channels
include "/etc/bind/named.conf.options"; // look down
include "/etc/bind/bind.keys";
include "/etc/bind/named.conf.namedboot";
include "/etc/bind/tsig.key";
```
named.options:
```
options {
directory "/var/cache/bind";
pid-file "/var/run/named/named.pid";
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { ::1; ********; };
listen-on { 127.0.0.1; *********; };
allow-query { any; };
allow-transfer { ******; };
recursion no;
version "0";
dnssec-enable yes;
dnssec-validation yes;
tcp-clients 1500;
rate-limit {
responses-per-second 50;
};
};
controls {
inet 127.0.0.1 allow { 127.0.0.1; ::1; };
};
```
### Relevant logs and/or screenshots
general.log:
```
23-Jun-2020 14:25:01.251 general: rbtdb.c:2162: INSIST(((unsigned int)(isc_atomic_xadd(&(&(node)->references)->refs, 0))) == 0 && node->data == ((void *)0)) failed, back trace
23-Jun-2020 14:25:01.251 general: #0 0x43fe6d in ??
23-Jun-2020 14:25:01.251 general: #1 0x7f382e8ffcfa in ??
23-Jun-2020 14:25:01.251 general: #2 0x7f382fbc73ed in ??
23-Jun-2020 14:25:01.251 general: #3 0x7f382fbc776c in ??
23-Jun-2020 14:25:01.251 general: #4 0x7f382e929a17 in ??
23-Jun-2020 14:25:01.251 general: #5 0x7f382daaa064 in ??
23-Jun-2020 14:25:01.251 general: #6 0x7f382d47862d in ??
23-Jun-2020 14:25:01.251 general: exiting (due to assertion failure)
```
### Possible fixes
-July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Ondřej SurýOndřej Surýhttps://gitlab.isc.org/isc-projects/bind9/-/issues/1965bin/named/unix/os.c warning: '%s' directive output may be truncated on OpenIn...2020-06-29T13:40:19ZMichal Nowakbin/named/unix/os.c warning: '%s' directive output may be truncated on OpenIndianaBIND 9.16.4 compilation with GCC 7.5 on OpenIndiana 2020.04 (`illumos-6682e4c38c`) emitted warning in `bin/named/unix/os.c`:
```
libtool: compile: /usr/gcc/7/bin/gcc -include /export/home/newman/oi-userland/components/network/bind/build...BIND 9.16.4 compilation with GCC 7.5 on OpenIndiana 2020.04 (`illumos-6682e4c38c`) emitted warning in `bin/named/unix/os.c`:
```
libtool: compile: /usr/gcc/7/bin/gcc -include /export/home/newman/oi-userland/components/network/bind/build/amd64/config.h -I/export/home/newman/oi-userland/components/network/bind/build/amd64 -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4 -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/bin/named/unix/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/bin/named/unix/../include -I/export/home/newman/oi-userland/components/network/bind/build/amd64/lib/isccfg/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isccfg/include -I/export/home/newman/oi-userland/components/network/bind/build/amd64/lib/isccc/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isccc/include -I/export/home/newman/oi-userland/components/network/bind/build/amd64/lib/dns/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/dns/include -I/export/home/newman/oi-userland/components/network/bind/build/amd64/lib/isc/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isc -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isc/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isc/unix/include -I/export/home/newman/oi-userland/components/network/bind/bind-9.16.4/lib/isc/pthreads/include -m64 -O3 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__=1 -D_XPG6 -D_POSIX_PTHREAD_SEMANTICS -pthread -fPIC -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith -Wno-missing-field-initializers -fno-strict-aliasing -c os.c -fPIC -DPIC -o .libs/os.o
os.c: In function 'getuname':
os.c:920:49: warning: '%s' directive output may be truncated writing up to 256 bytes into a region of size between 253 and 1021 [-Wformat-truncation=]
snprintf(unamebuf, sizeof(unamebuf), "%s %s %s %s", uts.sysname,
^~
uts.machine, uts.release, uts.version);
~~~
os.c:920:2: note: 'snprintf' output between 4 and 1028 bytes into a destination of size 1024
snprintf(unamebuf, sizeof(unamebuf), "%s %s %s %s", uts.sysname,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uts.machine, uts.release, uts.version);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
illumos [snprintf(3c)](https://illumos.org/man/3c/snprintf).July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1958support outgoing TCP connections2022-01-26T11:33:41ZEvan Huntsupport outgoing TCP connectionsThe adaptation of `rndc` and other tools to use the netmgr requires it to be able to establish outgoing TCP connections. This will be needed for multiple features in 9.17 and also 9.16 when DoT and DoH are backported.The adaptation of `rndc` and other tools to use the netmgr requires it to be able to establish outgoing TCP connections. This will be needed for multiple features in 9.17 and also 9.16 when DoT and DoH are backported.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Evan HuntEvan Hunthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1955${LMDB_CFLAGS} missing from DNS_INCLUDES in make/includes.in2020-06-29T13:19:54ZMark Andrews${LMDB_CFLAGS} missing from DNS_INCLUDES in make/includes.inIn 9.16.4 named doesn't compile as lmdb.h is not found when lmdb is installed in a non standard place.In 9.16.4 named doesn't compile as lmdb.h is not found when lmdb is installed in a non standard place.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Mark AndrewsMark Andrewshttps://gitlab.isc.org/isc-projects/bind9/-/issues/1952IPv6 addresses can be unparsable in yaml2020-06-29T13:43:53ZEvan HuntIPv6 addresses can be unparsable in yamlIPv6 addresses sometimes end in two trailing colons. For example, in the current output of `dig +yaml ns by` there's a name server with address "2a05:4800:1:100::". This breaks YAML parsing.
To fix this we need to append "0". I think i...IPv6 addresses sometimes end in two trailing colons. For example, in the current output of `dig +yaml ns by` there's a name server with address "2a05:4800:1:100::". This breaks YAML parsing.
To fix this we need to append "0". I think it would be harmless in all IPv6 address expansions everywhere, but in any case we should always do it when using `dns_masterstyle_yaml`.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Evan HuntEvan Hunthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1951Add BIND version number to introduction.rst file2020-07-03T07:16:29ZSuzanne GoldlustAdd BIND version number to introduction.rst fileAt the moment, there's no way to tell which version of the BIND ARM you're looking at, just from looking at the content. If we add the following text to the introduction.rst:
```
This guide covers BIND version |release|.
```
that should ...At the moment, there's no way to tell which version of the BIND ARM you're looking at, just from looking at the content. If we add the following text to the introduction.rst:
```
This guide covers BIND version |release|.
```
that should include it in the generated files.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Suzanne GoldlustSuzanne Goldlusthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1950Build option for no unittest2020-06-29T13:12:31ZPeter DaviesBuild option for no unittestBuild option for no unittest
To ability to build without unittests.
To enable testing to be performed without error on system where necessary unittest tools cannot be installed
RT [#16737](https://support.isc.org/Ticket/Display.html?i...Build option for no unittest
To ability to build without unittests.
To enable testing to be performed without error on system where necessary unittest tools cannot be installed
RT [#16737](https://support.isc.org/Ticket/Display.html?id=16737)July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1949check-names doesn't use 'primary' and 'secondary'2020-06-30T07:19:07ZEvan Huntcheck-names doesn't use 'primary' and 'secondary'`primary` and `secondary` are valid parameters for the `check-names` option in the parser, but they were never hooked in to `named_zone_configure()` correctly and are currently being ignored.`primary` and `secondary` are valid parameters for the `check-names` option in the parser, but they were never hooked in to `named_zone_configure()` correctly and are currently being ignored.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Evan HuntEvan Hunthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1948add synonym for "masters"2021-01-12T14:24:13ZEvan Huntadd synonym for "masters"When I made `primary` and `secondary` valid zone types, I didn't add `primaries` as a synonym for `masters` because I didn't want to deal with the added complexity of both terms being used in the same context. Time to finish it though.When I made `primary` and `secondary` valid zone types, I didn't add `primaries` as a synonym for `masters` because I didn't want to deal with the added complexity of both terms being used in the same context. Time to finish it though.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Evan HuntEvan Hunthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1946dnstap-read.1 man page installed when dnstap-read binary is missing2021-03-18T12:36:04ZAnand Buddhdevdnstap-read.1 man page installed when dnstap-read binary is missing### Summary
When BIND 9.16.4 is built without --enable-dnstap, it still installs the man page for dnstap-read. Earlier versions of BIND did not do this.
### BIND version used
9.16.4
### Steps to reproduce
When building BIND, do *not...### Summary
When BIND 9.16.4 is built without --enable-dnstap, it still installs the man page for dnstap-read. Earlier versions of BIND did not do this.
### BIND version used
9.16.4
### Steps to reproduce
When building BIND, do *not* pass the --enable-dnstap option to configure. Then "make install".
### What is the current *bug* behavior?
A man page for dnstap-read is installed in the PREFIX/share/man/man1 directory.
### What is the expected *correct* behavior?
The man page should not be installed.
### Relevant configuration files
n/a
### Relevant logs and/or screenshots
n/a
### Possible fixes
I don't have a fix.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Michał KępieńMichał Kępieńhttps://gitlab.isc.org/isc-projects/bind9/-/issues/1945system:clang:tsan has bad $SYMBOLIZER2020-06-29T13:04:21ZMark Andrewssystem:clang:tsan has bad $SYMBOLIZERJob [#954307](https://gitlab.isc.org/isc-projects/bind9/-/jobs/954307) failed for 183e1ace67a889b6b7a5bb146c0bba1e13755d28:
==named==1843==ERROR: External symbolizer path is set to '$SYMBOLIZER' which isn't a known symbolizer. Please se...Job [#954307](https://gitlab.isc.org/isc-projects/bind9/-/jobs/954307) failed for 183e1ace67a889b6b7a5bb146c0bba1e13755d28:
==named==1843==ERROR: External symbolizer path is set to '$SYMBOLIZER' which isn't a known symbolizer. Please set the path to the llvm-symbolizer binary or other known tool.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Ondřej SurýOndřej Surýhttps://gitlab.isc.org/isc-projects/bind9/-/issues/1943Remove references to "blacklist" and "whitelist" in BIND ARM2020-06-29T13:08:25ZSuzanne GoldlustRemove references to "blacklist" and "whitelist" in BIND ARMSince these are not actual commands, this terminology is unnecessary and could be considered offensive.Since these are not actual commands, this terminology is unnecessary and could be considered offensive.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Suzanne GoldlustSuzanne Goldlusthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1940Removing more references to "master" and "slave" in BIND ARM2021-01-12T14:33:07ZSuzanne GoldlustRemoving more references to "master" and "slave" in BIND ARMContinued cleanup of ARM files to remove offensive terminology where possible.Continued cleanup of ARM files to remove offensive terminology where possible.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Suzanne GoldlustSuzanne Goldlusthttps://gitlab.isc.org/isc-projects/bind9/-/issues/1938Repeated bind 9.16.3 assert error in libuv (attempting restart after an earli...2020-07-20T13:58:01ZCathy AlmondRepeated bind 9.16.3 assert error in libuv (attempting restart after an earlier/different crash)From [Support ticket #16728](https://support.isc.org/Ticket/Display.html?id=16728):
After a crash (see [Support ticket #16727](https://support.isc.org/Ticket/Display.html?id=16727) and also #1937 )
named repeatedly crashing during resta...From [Support ticket #16728](https://support.isc.org/Ticket/Display.html?id=16728):
After a crash (see [Support ticket #16727](https://support.isc.org/Ticket/Display.html?id=16727) and also #1937 )
named repeatedly crashing during restart from systemd.
At least 14 crashes before filesystem full of core files.
```
(gdb) core /var/log/splunk/core/core.10047
(gdb) bt
#0 0x00007fa36e777207 in raise () from /lib64/libc.so.6
#1 0x00007fa36e7788f8 in abort () from /lib64/libc.so.6
#2 0x00007fa36e770026 in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007fa36e7700d2 in __assert_fail () from /lib64/libc.so.6
#4 0x00007fa36f36fed1 in uv__udp_finish_close () from /lib64/libuv.so.1
#5 0x00007fa36f361c68 in uv_run () from /lib64/libuv.so.1
#6 0x0000000000633c4a in nm_thread (worker0=0x1f35ac8) at netmgr.c:481
#7 0x00007fa36ef33dd5 in start_thread () from /lib64/libpthread.so.0
#8 0x00007fa36e83eead in clone () from /lib64/libc.so.6
(gdb) frame 4
#4 0x00007fa36f36fed1 in uv__udp_finish_close () from /lib64/libuv.so.1
(gdb) info frame 4
Stack frame at 0x7fa36a81ed30:
rip = 0x7fa36f36fed1 in uv__udp_finish_close; saved rip 0x7fa36f361c68
called by frame at 0x7fa36a81eda0, caller of frame at 0x7fa36a81ed20
Arglist at 0x7fa36a81ed18, args:
Locals at 0x7fa36a81ed18, Previous frame's sp is 0x7fa36a81ed30
Saved registers:
rbx at 0x7fa36a81ed20, rip at 0x7fa36a81ed28
ti0016o823(root) named 1329# /local/sbin/named -V
BIND 9.16.3 (Stable Release) <id:5ea41c1>
running on Linux x86_64 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019
built by make with 'CFLAGS=-m64 -g -O2' '--prefix=/local' '--localstatedir=/var' '--with-openssl=yes' '--with-libtool' '--enable-static=yes' '--disable-shared' '--enable-largefile' '--sysconfdir=/etc/named' '--with-libxml2=no' '--with-tuning=large' '--with-python=/usr/bin/python3' '--with-libjson'
compiled by GCC 4.8.5 20150623 (Red Hat 4.8.5-39)
compiled with OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017
linked to OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017
compiled with json-c version: 0.11
linked to json-c version: 0.11
compiled with zlib version: 1.2.7
linked to zlib version: 1.2.7
threads support is enabled
default paths:
named configuration: /etc/named/named.conf
rndc configuration: /etc/named/rndc.conf
DNSSEC root key: /etc/named/bind.keys
nsupdate session key: /var/run/named/session.key
named PID file: /var/run/named/named.pid
named lock file: /var/run/named/named.lock
```
They think they've run libuv 1.37 for a time.
It seems there is a 1.38 that they could upgrade to (under sysadmin discussion...)
```
Available Packages
Name : libuv
Arch : x86_64
Epoch : 1
Version : 1.38.0
Release : 2.el7
Size : 148 k
Repo : epel/x86_64
Summary : Platform layer for node.js
URL : http://libuv.org/
License : MIT and BSD and ISC
Description : libuv is a new platform layer for Node. Its purpose is to abstract
: IOCP on Windows and libev on Unix systems. We intend to eventually
: contain all platform differences in this library.
```July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1937BIND 9.16.3 segfault in isc__nm_tcpdns_send2020-07-20T13:58:01ZCathy AlmondBIND 9.16.3 segfault in isc__nm_tcpdns_sendFrom [Support ticket #16727](https://support.isc.org/Ticket/Display.html?id=16727) (details of core dump etcetera can be found there).
Crash on a BIND 9.16.3 (Stable Release) <id:5ea41c1>
(with no rehash patch - that is the one to make ...From [Support ticket #16727](https://support.isc.org/Ticket/Display.html?id=16727) (details of core dump etcetera can be found there).
Crash on a BIND 9.16.3 (Stable Release) <id:5ea41c1>
(with no rehash patch - that is the one to make it possible to start named with larger hash tables so that there is no hash table resizing as cache expands)
```
core /var/log/splunk/core/core.19901
Core was generated by `/local/sbin/named -f -c /etc/named/named.conf -u named -n 12'.
Program terminated with signal 11, Segmentation fault.
#0 0x0000000000637859 in isc__nm_tcpdns_send (handle=0x7f01eb0cdcf0, region=0x7f01ff3c2700, cb=0x478fc0 <client_senddone>, cbarg=0x7f01eb0cde60)
at tcpdns.c:483
483 tcpdns.c: No such file or directory.
Missing separate debuginfos, use: debuginfo-install glibc-2.17-260.el7_6.5.x86_64 json-c-0.11-4.el7_0.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-37.el7_6.x86_64 libattr-2.4.46-13.el7.x86_64 libcap-2.22-9.el7.x86_64 libcom_err-1.42.9-13.el7.x86_64 libselinux-2.5-14.1.el7.x86_64 libuv-1.37.0-1.el7.x86_64 openssl-libs-1.0.2k-16.el7_6.1.x86_64 pcre-8.32-17.el7.x86_64 sssd-client-1.16.2-13.el7_6.8.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) bt
#0 0x0000000000637859 in isc__nm_tcpdns_send (handle=0x7f01eb0cdcf0, region=0x7f01ff3c2700, cb=0x478fc0 <client_senddone>, cbarg=0x7f01eb0cde60)
at tcpdns.c:483
#1 0x000000000063231d in isc_nm_send (handle=<optimized out>, region=<optimized out>, cb=<optimized out>, cbarg=<optimized out>) at netmgr.c:1309
#2 0x00000000004770d7 in client_sendpkg (client=client@entry=0x7f01eb0cde60, buffer=0x7f01ff3c2780, buffer=0x7f01ff3c2780) at client.c:366
#3 0x0000000000478064 in ns_client_send (client=client@entry=0x7f01eb0cde60) at client.c:634
#4 0x0000000000485a6c in query_send (client=0x7f01eb0cde60) at query.c:552
#5 0x000000000048dd13 in ns_query_done (qctx=qctx@entry=0x7f01ff3c4830) at query.c:10921
#6 0x000000000048f65d in query_respond (qctx=0x7f01ff3c4830) at query.c:7414
#7 query_prepresponse (qctx=qctx@entry=0x7f01ff3c4830) at query.c:9913
#8 0x000000000049170c in query_gotanswer (qctx=qctx@entry=0x7f01ff3c4830, res=res@entry=0) at query.c:6836
#9 0x0000000000496760 in query_resume (qctx=0x7f01ff3c4830) at query.c:6134
#10 fetch_callback (task=<optimized out>, event=0x7f0157df1490) at query.c:5716
#11 0x000000000064168a in dispatch (threadid=<optimized out>, manager=<optimized out>) at task.c:1152
#12 run (queuep=<optimized out>) at task.c:1344
#13 0x00007f020a26bdd5 in start_thread () from /lib64/libpthread.so.0
#14 0x00007f0209b76ead in clone () from /lib64/libc.so.6
(gdb) info frame 0
(gdb) info locals
t = 0x7f01a3fc7f28
sock = 0x7f015c8c9e10
(gdb) print *t
$1 = {mctx = 0x7f0193bfdd78, handle = 0x7f01eff53560, region = {base = 0x0, length = 215}, orighandle = 0x7f00f447c4a0, cb = 0x478fc0 <client_senddone>,
cbarg = 0x7f00f447c610}
(gdb) print *t->mtx
There is no member named mtx.
(gdb) print *(t->mctx)
$2 = {impmagic = 1337724176, magic = 32513, methods = 0x7f01dffd1690}
(gdb) print *(t->handle)
$3 = {magic = 0, references = 0, sock = 0x0, ah_pos = 0, inflight = false, peer = {type = {sa = {sa_family = 0, sa_data = '\000' <repeats 13 times>}, sin = {
sin_family = 0, sin_port = 0, sin_addr = {s_addr = 0}, sin_zero = "\000\000\000\000\000\000\000"}, sin6 = {sin6_family = 0, sin6_port = 0,
sin6_flowinfo = 0, sin6_addr = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0,
0}}}, sin6_scope_id = 0}, ss = {ss_family = 0, __ss_padding = '\000' <repeats 117 times>, __ss_align = 0}, sunix = {sun_family = 0,
sun_path = '\000' <repeats 107 times>}}, length = 0, link = {prev = 0x0, next = 0x0}}, local = {type = {sa = {sa_family = 0,
sa_data = '\000' <repeats 13 times>}, sin = {sin_family = 0, sin_port = 0, sin_addr = {s_addr = 0}, sin_zero = "\000\000\000\000\000\000\000"},
sin6 = {sin6_family = 0, sin6_port = 0, sin6_flowinfo = 0, sin6_addr = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0,
0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, sin6_scope_id = 0}, ss = {ss_family = 0, __ss_padding = '\000' <repeats 117 times>, __ss_align = 0},
sunix = {sun_family = 0, sun_path = '\000' <repeats 107 times>}}, length = 0, link = {prev = 0x0, next = 0x0}}, doreset = 0x0, dofree = 0x0,
opaque = 0x0, extra = 0x7f01eff536d0 ""}
(gdb) print *(t->cbarg)
Attempt to dereference a generic pointer.
```
```
# ls -lst --full-time /var/log/splunk/core/core.19901
3243708 -rw------- 1 named named 3637059584 2020-06-13 21:42:52.861692911 +0200 /var/log/splunk/core/core.19901
```
Last syslog messages were:
```
2020-06-13T21:42:42.464+02:00 dispatch: dispatch 0x7f01b2a57550: shutting down due to TCP receive error: 172.105.106.137#53: connection reset
2020-06-13T21:42:42.558+02:00 dispatch: dispatch 0x7f01b3b48cc0: shutting down due to TCP receive error: 172.105.106.137#53: connection reset
```
And just before (as in, the logging is a bit out of sequence):
```
2020-06-13T21:42:42.000+02:00 2020-06-13T21:42:42+02:00 ti0016o823.ti.telenor.net kernel:
[30703183.144337] isc-worker0005[19921]: segfault at 118 ip 0000000000637859 sp 00007f01ff3c26c0
error 4 in named[400000+2f9000]
```
There is a full gdb backtrace of all the threads on the support ticket. Binaries and libs are on another support ticket [#16728](https://support.isc.org/Ticket/Display.html?id=16728)
====
Note that this server then had trouble restarting - repeated instances of another crash on startup.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1936blackhole ACL broken2020-07-03T07:16:21ZMichael McNallyblackhole ACL broken<!--
If the bug you are reporting is potentially security-related - for example,
if it involves an assertion failure or other crash in `named` that can be
triggered repeatedly - then please do *NOT* report it here, but send an
email to [...<!--
If the bug you are reporting is potentially security-related - for example,
if it involves an assertion failure or other crash in `named` that can be
triggered repeatedly - then please do *NOT* report it here, but send an
email to [security-officer@isc.org](security-officer@isc.org).
-->
### Summary
A submitter who prefers to remain private sent this report to security-officer:
> Two weeks ago I upgraded my FreeBSD 11.4 BIND installs to 9.16.3 from a 2017 private build off 7fcd72f (right before your major query.c restructure). I was working with Cisco CSIRT this past week trying to trackdown DNS spoofers using Cisco address space and entered six addresses into my blackhole list, reloaded, and the spoofed packets kept coming in. So I reinstalled my 2017 private build and the blackhole ACL worked fine.
>
> For testing, I stripped my blackhole ACL down to a single IP address to test from and tested it against both my 2017 build and the 9.16.3 and same thing: works with my 2017 build but silently fails with 9.16.3. I tried with both the FreeBSD pkg version of BIND 9.16.3 and with the FreeBSD ports version of BIND 9.16.3 I built on the machine locally and both the pkg and ports versions fail.
### BIND version used
9.16.3, but we **suspect** probably introduced with netmgr in late 9.15.x and present in stable releases from 9.16.0
```
BIND 9.16.3 ports build named -V:
BIND 9.16.3 (Stable Release) <id:5ea41c1>
running on FreeBSD amd64 11.4-STABLE FreeBSD 11.4-STABLE #26 r361994: Wed Jun 10 00:36:44 UTC 2020 root@s203.sgt.com:/usr/obj/usr/src/sys/SGT11AMD64ZFS
built by make with '--disable-linux-caps' '--localstatedir=/var' '--sysconfdir=/usr/local/etc/namedb' '--with-dlopen=yes' '--with-libxml2' '--with-openssl=/usr/local' '--with-readline=-L/usr/local/lib -ledit' '--with-dlz-filesystem=yes' '--disable-dnstap' '--disable-fixed-rrset' '--disable-geoip' '--without-maxminddb' '--without-gssapi' '--with-libidn2=/usr/local' '--with-json-c' '--disable-largefile' '--with-lmdb=/usr/local' '--disable-native-pkcs11' '--without-python' '--disable-querytrace' 'STD_CDEFINES=-DDIG_SIGCHASE=1' '--enable-tcp-fastopen' '--with-tuning=default' '--disable-symtable' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/share/info/' '--build=amd64-portbld-freebsd11.4' 'build_alias=amd64-portbld-freebsd11.4' 'CC=cc' 'CFLAGS=-O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing ' 'LDFLAGS= -L/usr/local/lib -ljson-c -Wl,-rpath,/usr/local/lib -fstack-protector-strong ' 'LIBS=-L/usr/local/lib' 'CPPFLAGS=-DLIBICONV_PLUG -isystem /usr/local/include' 'CPP=cpp' 'PKG_CONFIG=pkgconf'
compiled by CLANG FreeBSD Clang 10.0.0 (git@github.com:llvm/llvm-project.git llvmorg-10.0.0-0-gd32170dbd5b)
compiled with OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020
linked to OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020
compiled with libxml2 version: 2.9.10
linked to libxml2 version: 20910
compiled with json-c version: 0.14
linked to json-c version: 0.14
compiled with zlib version: 1.2.11
linked to zlib version: 1.2.11
threads support is enabled
default paths:
named configuration: /usr/local/etc/namedb/named.conf
rndc configuration: /usr/local/etc/namedb/rndc.conf
DNSSEC root key: /usr/local/etc/namedb/bind.keys
nsupdate session key: /var/run/named/session.key
named PID file: /var/run/named/pid
named lock file: /var/run/named/named.lock
```
### What is the current *bug* behavior?
Blackhole ACL does not appear to be appliedJuly 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)https://gitlab.isc.org/isc-projects/bind9/-/issues/1931Fix out-of-order RFCs in general.rst file of BIND ARM2020-06-29T13:06:45ZSuzanne GoldlustFix out-of-order RFCs in general.rst file of BIND ARMA couple of the RFCs are out of numerical order.A couple of the RFCs are out of numerical order.July 2020 (9.11.21, 9.11.21-S1, 9.16.5, 9.17.3)Suzanne GoldlustSuzanne Goldlust