Commit Graph
29143 Commits
Author SHA1 Message Date
Mark Andrews a241c69920 Lock read of refs when atomics are not available.
WARNING: ThreadSanitizer: data race
    Read of size 4 at 0x000000000001 by thread T1 (mutexes: write M1):
    #0 zone_iattach lib/dns/zone.c:5412:2
    #1 soa_query lib/dns/zone.c:12725:2
    #2 dispatch lib/isc/task.c:1157:7
    #3 run lib/isc/task.c:1331:2

    Previous write of size 4 at 0x000000000001 by thread T2 (mutexes: write M2):
    #0 dns_zone_detach lib/dns/zone.c:5346:2
    #1 ns_server_refreshcommand bin/named/./server.c:9880:3
    #2 ns_control_docommand bin/named/control.c:247:12
    #3 control_recvmessage bin/named/controlconf.c:469:13
    #4 dispatch lib/isc/task.c:1157:7
    #5 run lib/isc/task.c:1331:2
2020-12-10 06:31:19 +00:00
Mark Andrews 1caef804d5 Ignore thread sanitizer warnings in stats counters
set ISC_NO_SANITIZE_THREAD for incrementcounter and decrementcounter

    WARNING: ThreadSanitizer: data race
    Write of size 8 at 0x000000000001 by thread T1:
    #0 decrementcounter lib/isc/stats.c:258:26
    #1 isc_stats_decrement lib/isc/stats.c:350:2
    #2 dec_stats lib/isc/unix/socket.c:934:3
    #3 socketclose lib/isc/unix/socket.c:2270:3
    #4 destroy lib/isc/unix/socket.c:2323:3
    #5 isc__socket_detach lib/isc/unix/socket.c:3275:3
    #6 isc_socket_detach lib/isc/unix/./../socket_api.c:128:3
    #7 exit_check bin/named/client.c:593:4
    #8 ns_client_next bin/named/client.c:947:8
    #9 client_request bin/named/client.c
    #10 dispatch lib/isc/task.c:1157:7
    #11 run lib/isc/task.c:1331:2

    Previous write of size 8 at 0x000000000001 by thread T2:
    #0 incrementcounter lib/isc/stats.c:239:26
    #1 isc_stats_increment lib/isc/stats.c:340:2
    #2 inc_stats lib/isc/unix/socket.c:923:3
    #3 internal_accept lib/isc/unix/socket.c:3741:4
    #4 dispatch lib/isc/task.c:1157:7
    #5 run lib/isc/task.c:1331:2
2020-12-10 06:31:19 +00:00
Mark Andrews 0e5a076cc1 Prevent inlining of code with thread sanitiser disabled 2020-12-10 06:31:19 +00:00
Mark Andrews c2676bccc5 Add TSAN builds and tests with --disable-atomics specified 2020-12-10 06:31:19 +00:00
Mark Andrews 1b47fbab11 Merge branch '2324-key_mutex-undeclared-in-geoip2-c-with-threads-disabled' into 'v9_11'
Resolve "'key_mutex' undeclared in geoip2.c with threads disabled"

See merge request isc-projects/bind9!4454
2020-12-10 03:10:04 +00:00
Mark Andrews d8047eeb94 Add CHANGES 2020-12-10 13:47:07 +11:00
Mark Andrews f3c402baed Only lock access to epoll_ctl when using watcher thread 2020-12-10 02:34:36 +00:00
Mark Andrews 7466b505b3 check result 2020-12-10 02:34:36 +00:00
Mark Andrews 136804b1a0 #ifdef protect key_mutex 2020-12-10 02:34:36 +00:00
Ondřej Surý 89a74d0b01 Merge branch 'ondrej/clang-format-11-v9_11' into 'v9_11'
Bump the clang version to 11 (v9.11)

See merge request isc-projects/bind9!4481
2020-12-08 19:09:22 +00:00
Ondřej Surý e39899a718 Bump the clang version to 11 (stable) 2020-12-08 19:41:48 +01:00
Ondřej Surý 171e3ac2c9 Merge branch '2250-dns-flag-day-2020-revert-nocookie-udp-size-v9_11' into 'v9_11'
Resolve "DNS Flag Day 2020 - EDNS buffer size configuring does not work anymore"

See merge request isc-projects/bind9!4457
2020-12-02 15:33:25 +00:00
Ondřej SurýandOndřej Surý 8aa8e521a9 Add CHANGES and release not for GL #2250
(cherry picked from commit c7d81f12f8)
2020-12-02 12:06:22 +01:00
Ondřej SurýandOndřej Surý 6425dfa9cb Change the default value for nocookie-udp-size back to 4096
The DNS Flag Day 2020 reduced all the EDNS buffer sizes to 1232.  In
this commit, we revert the default value for nocookie-udp-size back to
4096 because the option is too obscure and most people don't realize
that they also need to change this configuration option in addition to
max-udp-size.

(cherry picked from commit 79c196fc77)
2020-12-02 12:04:28 +01:00
Mark Andrews 867649907c Merge branch 'nothread-tast_test' into 'v9_11'
Pass task_test also with threads disabled

See merge request isc-projects/bind9!4442
2020-12-01 23:28:13 +00:00
Petr MensikandMark Andrews 839350f5f6 Pass task_test also with threads disabled
Condition cv is declared only when threads are used. Use it only in that
case. Test compiles and passes without thread support also.
2020-12-01 23:06:19 +00:00
Mark Andrews 0563ccd25d Merge branch '2305-adjust-recursion-limits-v9_11' into 'v9_11'
Adjust default value of "max-recursion-queries"

See merge request isc-projects/bind9!4448
2020-12-01 22:29:48 +00:00
Mark Andrews d09991e4e9 Adjust default value of "max-recursion-queries"
Since the queries sent towards root and TLD servers are now included in
the count (as a result of the fix for CVE-2020-8616),
"max-recursion-queries" has a higher chance of being exceeded by
non-attack queries.  Increase its default value from 75 to 100.

(cherry picked from commit ab0bf49203)
2020-12-01 22:13:05 +00:00
Mark Andrews 53203b8f04 Merge branch '2280-check-dname-handling-when-qtype-is-cname-any-2' into 'v9_11'
Resolve "Check DNAME handling when QTYPE is CNAME/ANY"

See merge request isc-projects/bind9!4394
2020-12-01 22:12:35 +00:00
Mark AndrewsandEvan Hunt ca9dc40634 Fix DNAME when QTYPE is CNAME or ANY
The synthesised CNAME is not supposed to be followed when the
QTYPE is CNAME or ANY as the lookup is satisfied by the CNAME
record.
2020-12-01 11:46:32 -08:00
Mark Andrews 0720c50351 Merge branch '2315-bind-9-11-22-9-11-25-fails-to-build-for-aep-hsm-native-pkcs11-v9_11' into 'v9_11'
Resolve "BIND 9.11.22 - 9.11.25 fails to build for AEP HSM native pkcs11"

See merge request isc-projects/bind9!4446
2020-12-01 13:51:40 +00:00
Mark Andrews b578dd70d9 Add release note for [GL #2315]
(cherry picked from commit 356243aaec)
2020-12-01 23:31:16 +11:00
Mark Andrews f9f8dc24e0 Add CHANGES
(cherry picked from commit 11a3545e32)
2020-12-01 23:19:46 +11:00
Mark Andrews 0e7a4169bd Fix misplaced declaration
(cherry picked from commit 49b9219bb3)
2020-12-01 23:19:46 +11:00
Michał Kępień 319b718638 Merge branch '2310-make-docbook-sources-namespaced-again' into 'v9_11'
Make DocBook sources namespaced again

See merge request isc-projects/bind9!4440
2020-11-30 08:35:49 +00:00
Michał Kępień dfdd3a8a2f Make DocBook sources namespaced again
Every DocBook source document can be namespaced (DocBook 5) or
non-namespaced (DocBook 4).  The set of XSL stylesheets used for
producing an output document can also be namespaced or non-namespaced.
Namespaced source documents should be used with namespaced stylesheets
and non-namespaced source documents should be used with non-namespaced
stylesheets.  However, both stylesheet flavors contain processing rules
which allow them to be used interchangeably for any type of source
document.

Unfortunately, these processing rules became broken in version 1.79.1 of
the stylesheets, which means that non-namespaced source documents can no
longer be correctly transformed into man pages using namespaced
stylesheets and vice versa.  This problem was fixed upstream [1], but no
released version of the XSL stylesheets contains that fix yet.

Back in 2016, this problem was reported as RT #43831 and allegedly fixed
in commit 1b8ce3b330.  However, that fix
only helped for the non-namespaced version of the stylesheets - while
also breaking man page generation for the namespaced flavor.

Since using namespaced DocBook sources is the current best practice
(DocBook 5), make BIND DocBook sources namespaced again.  When using
version 1.79.1 or 1.79.2 of the XSL stylesheets, care must be taken to
ensure namespaced stylesheets are used for generating BIND
documentation.

[1] https://github.com/docbook/xslt10-stylesheets/issues/109
2020-11-30 09:33:32 +01:00
Mark Andrews 31a35b9364 Merge branch '2275-tighten-dns-cookie-response-handling-v9_11' into 'v9_11'
Resolve "Tighten DNS COOKIE response handling"

See merge request isc-projects/bind9!4439
2020-11-26 23:35:55 +00:00
Mark Andrews 21caa1bd21 Add release note for [GL #2275]
(cherry picked from commit d0dd71380b)
2020-11-27 10:20:40 +11:00
Mark Andrews f9de8808a2 Add CHANGES note for [GL #2275]
(cherry picked from commit 15e7a4b047)
2020-11-27 10:20:40 +11:00
Mark Andrews 28f1cbb007 Add comment about cookie sizes
(cherry picked from commit 304df53991)
2020-11-27 10:20:40 +11:00
Mark Andrews 81e5877520 Check that missing cookies are handled
(cherry picked from commit bd9155590e)
2020-11-27 10:20:40 +11:00
Mark Andrews cdf73095ab Tighten DNS COOKIE response handling
Fallback to TCP when we have already seen a DNS COOKIE response
from the given address and don't have one in this UDP response. This
could be a server that has turned off DNS COOKIE support, a
misconfigured anycast server with partial DNS COOKIE support, or a
spoofed response. Falling back to TCP is the correct behaviour in
all 3 cases.

(cherry picked from commit 0e3b1f5a25)
2020-11-27 09:28:09 +11:00
Michal Nowak d50cc1d81a Merge branch '2224-fixup-core-back-traces-v9_11' into 'v9_11'
[v9_11] Resolve "Fixup core back traces."

See merge request isc-projects/bind9!4436
2020-11-26 17:41:39 +00:00
Michal Nowak 76d1c90ef7 Write traceback file to the same directory as core file
The traceback files could overwrite each other on systems which do not
use different core dump file names for different processes.  Prevent
that by writing the traceback file to the same directory as the core
dump file.

These changes still do not prevent the operating system from overwriting
a core dump file if the same binary crashes multiple times in the same
directory and core dump files are named identically for different
processes.

(cherry picked from commit 6428fc26af)
2020-11-26 18:25:44 +01:00
Mark AndrewsandMichal Nowak 43c1e5be46 Unify whitespace in bin/tests/system/run.sh
Replace tabs with spaces to make whitespace consistent across the entire
bin/tests/system/run.sh script.

(cherry picked from commit 0f0a006c)
2020-11-26 18:21:05 +01:00
Michal Nowak 0a5cf72042 Merge branch '1770-review-how-we-use-sys-un-h-v9_11' into 'v9_11'
[v9_11] Fix typo in ISC_PLAFORM_HAVESYSUNH

See merge request isc-projects/bind9!4433
2020-11-26 14:40:45 +00:00
Michal Nowak bbed152e5d Fix typo in ISC_PLAFORM_HAVESYSUNH
(cherry picked from commit 8885f4a6f7)
2020-11-26 15:09:36 +01:00
Michał Kępień bbec074db6 Merge branch 'michal/use-centos-6-instead-of-debian-sid-in-i386-ci-jobs' into 'v9_11'
Use CentOS 6 instead of Debian sid in i386 CI jobs

See merge request isc-projects/bind9!4431
2020-11-26 13:49:03 +00:00
Michał Kępień 95eec2b5a7 Use CentOS 6 instead of Debian sid in i386 CI jobs
Due to seccomp issues with 32-bit Debian sid Docker containers that
prevent us from easily updating the contents of the 32-bit Debian sid
Docker image, switch to CentOS 6 for building and testing 32-bit
versions of BIND in GitLab CI.
2020-11-26 13:27:08 +01:00
Michał Kępień 72ecd8803f Merge branch 'michal/use-proper-cmocka-macros-for-pointer-checks-v9_11' into 'v9_11'
[v9_11] Use proper cmocka macros for pointer checks

See merge request isc-projects/bind9!4430
2020-11-26 12:25:35 +00:00
Michał Kępień fa989e4236 Use proper cmocka macros for pointer checks
Make sure pointer checks in unit tests use cmocka assertion macros
dedicated for use with pointers instead of those dedicated for use with
integers or booleans.

(cherry picked from commit f440600126)
2020-11-26 13:15:28 +01:00
Michał Kępień 5da3f59953 Merge branch 'v9_11_25-release' into 'v9_11'
[v9_11] Merge 9.11.25 release branch

See merge request isc-projects/bind9!4428
2020-11-26 11:39:33 +00:00
Michał Kępień 43bc51d502 Set up release notes for BIND 9.11.26 2020-11-26 12:37:08 +01:00
Michał Kępień 4776e3b27c Bump BIND_BASELINE_VERSION for ABI checks 2020-11-26 12:37:08 +01:00
Tinderbox UserandMichał Kępień 855c2689cb Merge branch 'prep-release' into v9_11_25-release 2020-11-26 12:33:58 +01:00
Michał Kępień 694c355ed6 Merge branch 'michal/prepare-release-notes-for-bind-9.11.25' into 'v9_11_25-release'
Prepare release notes for BIND 9.11.25

See merge request isc-private/bind9!222
2020-11-26 12:33:58 +01:00
Tinderbox UserandMichał Kępień 66faf3215c prep 9.11.25 2020-11-26 12:33:58 +01:00
Michał Kępień 588579f172 Prepare release notes for BIND 9.11.25 2020-11-26 12:33:58 +01:00
Michał Kępień 913a469182 Add release note for GL #2244 2020-11-26 12:33:58 +01:00
Michał Kępień cbcc61cf22 Add release note for GL #2236 2020-11-26 12:33:58 +01:00