Commit graph

32812 commits

Author SHA1 Message Date
Mark Andrews
4e192d2fe7 Address theoretical resource leak in dns_dt_open()
dns_dt_open() is not currently called with mode dns_dtmode_unix.

    *** CID 281489:  Resource leaks  (RESOURCE_LEAK)
    /lib/dns/dnstap.c: 983 in dns_dt_open()
    977
    978     		if (!dnstap_file(handle->reader)) {
    979     			CHECK(DNS_R_BADDNSTAP);
    980     		}
    981     		break;
    982     	case dns_dtmode_unix:
       CID 281489:  Resource leaks  (RESOURCE_LEAK)
       Variable "handle" going out of scope leaks the storage it points to.
    983     		return (ISC_R_NOTIMPLEMENTED);
    984     	default:
    985     		INSIST(0);
    986     		ISC_UNREACHABLE();
    987     	}
    988

(cherry picked from commit 003dd8cc70)
2021-02-23 09:41:15 +11:00
Mark Andrews
31da81d82b Merge branch '2499-a-loc-record-with-a-invalid-direction-field-triggers-an-insist-v9_16' into 'v9_16'
Resolve "A LOC record with a invalid direction field triggers an INSIST"

See merge request isc-projects/bind9!4711
2021-02-19 01:14:00 +00:00
Mark Andrews
65013e5c32 Add release note for [GL #2499]
(cherry picked from commit 3d340ecfd2)
2021-02-19 11:39:47 +11:00
Mark Andrews
c4f1b8762b Add CHANGES for [GL #2499]
(cherry picked from commit 6f47e0956c)
2021-02-19 11:39:43 +11:00
Mark Andrews
d68b85e555 Correctly detect when get_direction failed
(cherry picked from commit 009358d77d)
2021-02-19 11:39:12 +11:00
Mark Andrews
0cea486327 Test a LOC record with an invalid direction field
(cherry picked from commit 07902d9f9d)
2021-02-19 11:39:12 +11:00
Michal Nowak
6b35244573 Merge branch 'mnowak/fix-feature-test-tool-location-v9_16' into 'v9_16'
[v9_16] Use FEATURETEST variable instead of a path

See merge request isc-projects/bind9!4707
2021-02-18 14:56:58 +00:00
Michal Nowak
5ded078daa
Use FEATURETEST variable instead of a path
feature-test tool location needs to be determined by its associated
variable; otherwise, the tool is not found on Windows:

    setup.sh: line 22: ../feature-test: No such file or directory

(cherry picked from commit 102f012631)
2021-02-18 15:47:57 +01:00
Michal Nowak
e68b63c813 Merge branch 'mnowak/make-kyua-report-html-less-verbose' into 'v9_16'
Make "kyua report-html" less verbose on stdout

See merge request isc-projects/bind9!4688
2021-02-18 14:47:39 +00:00
Michal Nowak
74fa196286
Make "kyua report-html" less verbose on stdout
"kyua report-html" command in CI generates more than two pages of output
to stdout, which is nothing but which HTML pages Kyua generated, e.g.:

  Generating kyua_html/context.html
  Generating kyua_html/lib_dns_tests_acl_test_main.html
  ...
  Generating kyua_html/lib_ns_tests_query_test_main.html
  Generating kyua_html/report.css
  Generating kyua_html/index.html

This is seldomly useful and requires the user to scroll three pages
upwards to get to unit test results.
2021-02-18 15:39:04 +01:00
Matthijs Mekking
ad1e9c3709 Merge branch '1810-followup-9_16' into 'v9_16'
Fix backport "Refactor ecdsa and eddsa tests after testcrypto.sh changes" (9.16)

See merge request isc-projects/bind9!4695
2021-02-18 09:40:59 +00:00
Matthijs Mekking
1ffe0accf5 Fix eddsa system test
Use the correct conf.sh setup commands in ns3/sign.sh
2021-02-18 08:37:48 +00:00
Michal Nowak
61acd2a664 Merge branch 'mnowak/system-test-check-for-file-not-removed-v9_16' into 'v9_16'
[v9_16] Check for "file not removed" in system test output

See merge request isc-projects/bind9!4698
2021-02-18 08:04:17 +00:00
Michal Nowak
c65c3d5153
Prevent Git to expand $systest
CentOS 8 "git status" unexpectedly expands search directory "tsig" to
also search in the "tsiggss" directory, thus incorrectly identifying
files as "not removed" in the "tsig" directory:

$ git status -su --ignored tsig
$ touch tsiggss/ns1/{named.run,named.memstats}
$ git status -su --ignored tsig
!! tsiggss/ns1/named.memstats
!! tsiggss/ns1/named.run

(cherry picked from commit f310b75250)
2021-02-18 08:20:54 +01:00
Michal Nowak
78c5a80817
Clean omitted files from system tests
Any CI job:
- I:dnssec:file dnssec/ns1/trusted.keys not removed
- I:rpzrecurse:file rpzrecurse/ns3/named.run.prev not removed

system:gcc:sid:amd64:
- I🪞file mirror/ns3/_default.nzf not removed

system:gcc:xenial:amd64:
- I:shutdown:file shutdown/.cache/v/cache/lastfailed not removed

(cherry picked from commit 14a104d121)
2021-02-18 08:20:54 +01:00
Michal Nowak
f3f77fa4fc
Check for "file not removed" in system test output
Run this check only when in Git repository, because run.sh produces the
"file not removed" warnings only when in Git repository.

(cherry picked from commit 4a2778abdf)
2021-02-18 08:20:54 +01:00
Michal Nowak
382ace6db6
Add system test name to "file not removed" info
(cherry picked from commit 10bf725ee2)
2021-02-18 08:20:54 +01:00
Michał Kępień
e7cdb6eb9b Merge branch 'v9_16_12-release' into 'v9_16'
Merge 9.16.12 release branch

See merge request isc-projects/bind9!4700
2021-02-17 21:48:47 +00:00
Michał Kępień
f08646ea4d Set up release notes for BIND 9.16.13 2021-02-17 22:39:53 +01:00
Tinderbox User
9148895f56 Merge branch 'prep-release' into security-v9_16 2021-02-17 22:36:08 +01:00
Michał Kępień
eafb2ae202 Merge branch 'michal/prepare-documentation-for-bind-9.16.12' into 'security-v9_16'
Prepare documentation for BIND 9.16.12

See merge request isc-private/bind9!240
2021-02-17 22:36:08 +01:00
Tinderbox User
2ffb627d30 prep 9.16.12 2021-02-17 22:36:08 +01:00
Michał Kępień
4f5c5c67ee Merge branch '2354-security-off-by-one-error-in-spnego-v9_16' into 'security-v9_16'
[v9_16] [CVE-2020-8625] Fix off-by-one bug in ISC SPNEGO implementation

See merge request isc-private/bind9!235
2021-02-17 22:36:08 +01:00
Michał Kępień
84708ad977 Prepare release notes for BIND 9.16.12 2021-02-17 22:36:08 +01:00
Ondřej Surý
55e103dfe0 Add CHANGES and release note for GL #2354 2021-02-17 22:36:08 +01:00
Michał Kępień
996c9135ca Add release note for GL #2073 2021-02-17 22:36:08 +01:00
Ondřej Surý
b04cb88462 Fix off-by-one bug in ISC SPNEGO implementation
The ISC SPNEGO implementation is based on mod_auth_kerb code.  When
CVE-2006-5989 was disclosed, the relevant fix was not applied to the
BIND 9 codebase, making the latter vulnerable to the aforementioned flaw
when "tkey-gssapi-keytab" or "tkey-gssapi-credential" is set in
named.conf.

The original description of CVE-2006-5989 was:

    Off-by-one error in the der_get_oid function in mod_auth_kerb 5.0
    allows remote attackers to cause a denial of service (crash) via a
    crafted Kerberos message that triggers a heap-based buffer overflow
    in the component array.

Later research revealed that this flaw also theoretically enables remote
code execution, though achieving the latter in real-world conditions is
currently deemed very difficult.

This vulnerability was responsibly reported as ZDI-CAN-12302 ("ISC BIND
TKEY Query Heap-based Buffer Overflow Remote Code Execution
Vulnerability") by Trend Micro Zero Day Initiative.
2021-02-17 22:36:08 +01:00
Michał Kępień
3bfc7756e4 Reorder release notes 2021-02-17 22:36:08 +01:00
Michał Kępień
70d8f9182c Tweak and reword release notes 2021-02-17 22:36:08 +01:00
Michał Kępień
6141505a72 Tweak and reword recent CHANGES entries 2021-02-17 22:36:08 +01:00
Michał Kępień
dcf5204f7a Use :rfc:<number> references in release notes 2021-02-17 22:36:08 +01:00
Ondřej Surý
9c90c95774 Merge branch '2487-rollback-setting-dontfrag-option-v9_16' into 'v9_16'
Rollback setting IP_DONTFRAG option on the UDP sockets (v9.16)

See merge request isc-projects/bind9!4697
2021-02-17 14:25:38 +00:00
Ondřej Surý
c1292e126f Add CHANGES and release notes for GL #2487
(cherry picked from commit 6d442e9c04)
2021-02-17 14:42:53 +01:00
Ondřej Surý
d7b3a6a016 Rollback setting IP_DONTFRAG option on the UDP sockets
In DNS Flag Day 2020, the development branch started setting the
IP_DONTFRAG option on the UDP sockets.  It turned out, that this
code was incomplete leading to dropping the outgoing UDP packets.
Henceforth this commit rolls back this setting until we have a
proper fix that would send back empty response with TC flag set.

(cherry picked from commit 66eefac78c)
2021-02-17 14:41:56 +01:00
Michal Nowak
d997a5f1f2 Merge branch 'mnowak/enable-dh-unit-test-to-run-under-pkcs11-v9_16' into 'v9_16'
[v9_16] Drop USE_OPENSSL constraint from dh_test

See merge request isc-projects/bind9!4696
2021-02-17 11:54:23 +00:00
Michal Nowak
f483b102dd
Drop USE_OPENSSL constraint from dh_test
The USE_OPENSSL constraint in dh_test does not seems to be necessary
anymore, the test runs with PKCS#11 as well.

(cherry picked from commit c341e7f740)
2021-02-17 12:46:25 +01:00
Michal Nowak
1378c88784 Merge branch 'mnowak/consistent-use-of-SKIPPED_TEST_EXIT_CODE-v9_16' into 'v9_16'
[v9_16] Ensure dnstap_test returns SKIPPED_TEST_EXIT_CODE

See merge request isc-projects/bind9!4686
2021-02-17 11:21:04 +00:00
Michal Nowak
ed38e32b69
Ensure dnstap_test returns SKIPPED_TEST_EXIT_CODE
Make sure lib/dns/tests/dnstap_test returns an exit code that indicates
a skipped test when dnstap is not enabled.

(cherry picked from commit c286341703)
2021-02-17 12:15:18 +01:00
Michal Nowak
4e00019644 Merge branch 'mnowak/merge-skipped-and-untested-system-test-results-v9_16' into 'v9_16'
[v9_16] Merge UNTESTED and SKIPPED system test results

See merge request isc-projects/bind9!4681
2021-02-17 11:15:05 +00:00
Michal Nowak
4d57587528
Add CHANGES note for [GL !4517]
(cherry picked from commit 3cc3f1712b)
2021-02-17 12:09:25 +01:00
Michal Nowak
04aff208fb
Use BIND 9.17 preprocessor macro to skip unit test
BIND 9.17 changed exit code of skipped test to meet Automake
expectations in fa505bfb0e. BIND 9.16 was
not rewritten to Automake, but for consistency reasons, the same
SKIPPED_TEST_EXIT_CODE preprocessor macro is used (though the actual
exit code differs from the one in BIND 9.17).

(cherry picked from commit fa505bfb0e)
2021-02-17 12:09:25 +01:00
Michal Nowak
59499ecc3a
Merge UNTESTED and SKIPPED system test results
Descriptions of UNTESTED and SKIPPED system test results are very
similar to one another and it may be confusing when to pick one and
when the other. Merging these two system test results removes the
confusion.

(cherry picked from commit 29d7c6e449)
2021-02-17 12:06:33 +01:00
Evan Hunt
3f7959b1d5 Merge branch 'each-note-cleanup-v9_16' into 'v9_16'
some release note corrections

See merge request isc-projects/bind9!4692
2021-02-17 01:04:18 +00:00
Evan Hunt
df541c63c6 some release note corrections
(cherry picked from commit 3126eb652d)
2021-02-16 17:00:21 -08:00
Mark Andrews
aba3053409 Merge branch '2402-bind-9-16-11-build-fails-with-static-openssl-library-v9_16' into 'v9_16'
Resolve "BIND 9.16.11 build fails with static OpenSSL library"

See merge request isc-projects/bind9!4691
2021-02-17 00:27:12 +00:00
Mark Andrews
21de92f2cd Add CHANGES for [GL #2402]
(cherry picked from commit 98dc47d351)
2021-02-17 10:38:26 +11:00
Mark Andrews
0bcf09fe45 Fix linking order for OpenSSL libraries
As libssl depends on libcrypto, -lssl needs to precede -lcrypto in
linker invocations or else the build will fail with static OpenSSL
libraries.  Adjust m4/ax_check_openssl.m4 to prevent this issue from
getting triggered when pkg-config files for OpenSSL are not available.

(cherry picked from commit 9223c7d599)
2021-02-17 10:38:25 +11:00
Ondřej Surý
24ed8d78e2 Merge branch '2357-cannot-compile-current-versions-on-macos-catalina' into 'v9_16'
Resolve "Cannot compile current versions on macOS "Catalina""

See merge request isc-projects/bind9!4508
2021-02-16 12:21:07 +00:00
Mark Andrews
d51b78c85b Stop including <gssapi.h> from <dst/gssapi.h> header
The only reason for including the gssapi.h from the dst/gssapi.h header
was to get the typedefs of gss_cred_id_t and gss_ctx_id_t.  Instead of
using those types directly this commit introduces dns_gss_cred_id_t and
dns_gss_ctx_id_t types that are being used in the public API and
privately retyped to their counterparts when we actually call the gss
api.

This also conceals the gssapi headers, so users of the libdns library
doesn't have to add GSSAPI_CFLAGS to the Makefile when including libdns
dst API.
2021-02-16 12:08:21 +11:00
Ondřej Surý
4bbe3e75de Stop including dnstap headers from <dns/dnstap.h>
The <fstrm.h> and <protobuf-c/protobuf-c.h> headers are only directly
included where used and we stopped exposing those headers from libdns
headers.
2021-02-16 12:08:21 +11:00