Commit Graph

3275 Commits

Author SHA1 Message Date
Ondřej Surý
fcd1569e2b Turn (int & flag) into (int & flag) != 0 when implicitly typed to bool
(cherry picked from commit b2b43fd235)
2018-11-08 14:37:14 +07:00
Ondřej Surý
b222783ae9 Add small tweaks to the code to fix compilation when ISC assertions are disabled
While implementing the new unit testing framework cmocka, it was found that the
BIND 9 code doesn't compile when assertions are disabled or replaced with any
function (such as mock_assert() from cmocka unit testing framework) that's not
directly recognized as assertion by the compiler.

This made the compiler to complain about blocks of code that was recognized as
unreachable before, but now it isn't.

The changes in this commit include:

* assigns default values to couple of local variables,
* moves some return statements around INSIST assertions,
* adds __builtin_unreachable(); annotations after some INSIST assertions,
* fixes one broken assertion (= instead of ==)

(cherry picked from commit fbd2e47f51)
2018-11-08 14:05:23 +07:00
Ondřej Surý
6062d370b6 Remove double result check leftover
(cherry picked from commit 065ff16e40)
2018-10-30 12:59:21 +01:00
Michał Kępień
9dc1b43f3c Display a per-view list of zones in the web interface
The XSL stylesheet used by the web interface does not currently include
any element which would cause a list of zones configured in each view to
be displayed, making the "Zones" section of the web interface empty
unless some zone has been configured with "zone-statistics full;" and
queried.  Since this can be confusing, modify the XSL stylesheet so that
a list of zones configured in each view is displayed in the web
interface.

(cherry picked from commit aeda3f389e)
2018-10-25 10:21:26 +02:00
Michał Kępień
7b9a5ed7d5 Fix the configuration type used by the "server-addresses" option
Contrary to what the documentation states, the "server-addresses"
static-stub zone option does not accept custom port numbers.  Fix the
configuration type used by the "server-addresses" option to ensure
documentation matches source code.  Remove a check_zoneconf() test which
is unnecessary with this fix in place.

(cherry picked from commit b324576858)
2018-10-25 08:58:56 +02:00
Ondřej Surý
38777de529 Add support for enabling and enforcing FIPS mode in OpenSSL:
* Add configure option --enable-fips-mode that detects and enables FIPS mode
* Add a function to enable FIPS mode and call it on crypto init
* Log an OpenSSL error when FIPS_mode_set() fails and exit
* Report FIPS mode status in a separate log message from named

(cherry picked from commit c4cee27f9b)
2018-10-22 21:28:34 +02:00
Tinderbox User
7f5e4faed8 prep 9.12.3rc1 2018-09-29 04:21:11 +00:00
Evan Hunt
990f0f8a73 add -class option to rndc nta
(cherry picked from commit cc0abf62a1)
2018-09-10 13:14:21 -07:00
Evan Hunt
3b3fc63b2e report when NTAs added to multiple views
- the text returned by "rndc nta" when adding NTAs to multiple views
  was incorrectly terminated after the first line, so users only saw
  on NTA added unless they checked the logs.

(cherry picked from commit 83dc5a704a)
2018-09-10 13:14:18 -07:00
Witold Kręcicki
90b75d94ff rndc reconfig should not stat on existing zones, just load new ones.
(cherry picked from commit 80a025d1a7)
2018-08-28 17:03:10 +02:00
Michał Kępień
e0b9bb1d2c Log a message when "ixfr-from-differences" is set for an inline-signed zone
For inline-signed zones, the value of "ixfr-from-differences" is
hardcoded to:

  - "yes" for the raw version of the zone,
  - "no" for the signed version of the zone.

In other words, any user-provided "ixfr-from-differences" setting is
effectively ignored for an inline-signed zone.  Ensure the user is aware
of that by adding a note to the ARM and logging a message when an
"ixfr-from-differences" option is found at the zone level.

(cherry picked from commit 087157d14f)
2018-08-24 10:21:27 +02:00
Ondřej Surý
884929400c Replace custom isc_boolean_t with C standard bool type
(cherry picked from commit 994e656977)
2018-08-10 11:17:51 +02:00
Ondřej Surý
d61e6a3111 Replace custom isc_u?intNN_t types with C99 u?intNN_t types
(cherry picked from commit cb6a185c69)
2018-08-09 18:30:20 +02:00
Ondřej Surý
c863a076ae Replace ISC_PRINT_QUADFORMAT with inttypes.h format constants
(cherry picked from commit 64fe6bbaf2)
2018-08-09 18:30:20 +02:00
Ondřej Surý
e552ea1275 Revert "Use make automatic variables to install updated manuals"
This reverts commit 85deed805b.
2018-08-06 12:51:07 +02:00
Mark Andrews
3f12f4d4ec turn off ixfr-from-differences on signed instance of in-line zone
(cherry picked from commit cfccd8d246)
2018-08-02 14:27:21 +10:00
Mark Andrews
252aa79fe4 rename zone to mayberaw
(cherry picked from commit 3ea9861e7a)
2018-08-02 14:27:20 +10:00
Petr Menšík
85deed805b Use make automatic variables to install updated manuals
Make will choose modified manual from build directory or original from source
directory automagically. Take advantage of install tool feature.
Install all files in single command instead of iterating on each of them.

(cherry picked from commit 88f913ac81)
2018-08-01 16:22:01 +10:00
Mark Andrews
ab5c03c507 named_server_servestale could leave the server in exclusive mode if a error occurs.
(cherry picked from commit c8b07932e4)
2018-07-26 22:58:03 -07:00
Michał Kępień
f4b403e8b2 Fix handling of TAT sending failures
dns_view_zonecut() may associate the dns_rdataset_t structure passed to
it even if it returns a result different then ISC_R_SUCCESS.  Not
handling this properly may cause a reference leak.  Fix by ensuring
'nameservers' is cleaned up in all relevant failure modes.

(cherry picked from commit 8666f8d28f)
2018-07-19 18:04:01 +02:00
Michał Kępień
873c091408 Send upstream TAT queries for locally served zones
Trying to resolve a trust anchor telemetry query for a locally served
zone does not cause upstream queries to be sent as the response is
determined just by consulting local data.  Work around this issue by
calling dns_view_findzonecut() first in order to determine the NS RRset
for a given domain name and then passing the zone cut found to
dns_resolver_createfetch().

Note that this change only applies to TAT queries generated by the
resolver itself, not to ones received from downstream resolvers.

(cherry picked from commit a7657dc150)
2018-07-11 08:59:29 +02:00
Michał Kępień
2e7dd0d61f Extract TAT QNAME preparation to a separate function
Extract the part of dotat() reponsible for preparing the QNAME for a TAT
query to a separate function in order to limit the number of local
variables used by each function and improve code readability.

Rename 'name' to 'origin' to better convey the purpose of that variable.
Also mark it with the const qualifier.

(cherry picked from commit 127810e512)
2018-07-11 08:59:29 +02:00
Mark Andrews
22327b4cdf free rbuf
(cherry picked from commit ecb2f20324)
2018-07-10 14:37:52 +10:00
Tinderbox User
bbf35634c0 prep 9.12.2rc2 2018-06-28 04:42:37 +00:00
Mark Andrews
7f31e67c16 CHANGES, copyright
(cherry picked from commit f7d346357e)
2018-06-26 09:04:48 -07:00
Michał Kępień
8c66f32e53 Only request permitted capabilities in non-libcap builds
While libcap-enabled builds check whether any capability named requests
is within the permitted capability set, non-libcap builds just try
requesting them, which potentially causes a misleading error message to
be output ("Operation not permitted: please ensure that the capset
kernel module is loaded").  Ensure non-libcap builds also check whether
any requested capability is within the permitted capability set.
2018-06-26 13:18:00 +02:00
Mark Andrews
74bfd11a5f log the remaining -V info at startup
(cherry picked from commit 33ff03db58)
2018-06-25 15:02:31 -07:00
Evan Hunt
87344e3493 prepare 9.12.1rc1 2018-06-21 18:46:32 +02:00
Mark Andrews
4f332dc936 Restore default rrset-order to random.
(cherry picked from commit e8154b50d4)
2018-06-19 11:18:19 +10:00
Evan Hunt
be02bf6571 allow-recursion could incorrectly inherit from the default allow-query 2018-06-14 14:45:56 +02:00
Evan Hunt
74c3b9d3b2 complete strtok fix 2018-06-09 23:03:38 -07:00
Evan Hunt
1734f1b3b9 use strtok() instead of strtok_r() in command line processing 2018-06-09 22:29:31 -07:00
Mukund Sivaraman
2930507357 Add a answer-cookie named config option 2018-06-08 16:34:29 +10:00
Mark Andrews
60a703550e Add support for marking a option as deprecated.
(cherry picked from commit befff9452c)
2018-06-08 15:55:56 +10:00
Mark Andrews
69340b5ac5 add support -T sigvalinsecs
(cherry picked from commit 87a3dc8ab9)
2018-06-06 17:05:43 +10:00
Mark Andrews
475bb0e332 move -T parsing to its own function
(cherry picked from commit b491ceeb50)
2018-06-06 14:47:54 +10:00
Evan Hunt
3d2de8e776 clarify serve-stale documentation, and add a floor for max-stale-ttl
- added a 1-second floor to max-stale-ttl similar to stale-answer-ttl;
  if set to 0, it will be silently updated to 1.
- fixed the ARM entry on max-stale-ttl, which incorrectly suggested that
  the default was 0 instead of 1 week.
- clarified rndc serve-stale documentation.

(cherry picked from commit d1ca21d50a)
2018-05-28 17:25:37 -07:00
Mark Andrews
8ad96c7a76 add HOME.ARPA to the list of empty zones
(cherry picked from commit 10dd0b3efe)
2018-05-23 11:13:10 +10:00
Mukund Sivaraman
84640d2e04 Fix ARM about min-update-interval default for RPZ zones
Also, use variable names consistent with catz for rpz configuration functions

(cherry picked from commit 975afc508d)
2018-05-17 20:23:08 -07:00
Ondřej Surý
c35de9b383 Remove $Id markers, Principal Author and Reviewed tags from the full source tree
(cherry picked from commit 55a10b7acd)
2018-05-11 14:19:35 +02:00
Michał Kępień
6e26fab6b8 Address GCC 8 -Wformat-truncation warnings
(cherry picked from commit 172d0c401e)
2018-05-10 10:52:00 +02:00
Mark Andrews
ee763ef281 add named.conf option root-key-sentinel
(cherry picked from commit 68e9315c7d)
2018-04-22 12:46:03 -07:00
Mark Andrews
53e39ca0ea remove dead code
(cherry picked from commit 686edad5c5)
2018-04-20 15:13:12 -07:00
Michał Kępień
0041aeb751 Use dns_fixedname_initname() where possible
Replace dns_fixedname_init() calls followed by dns_fixedname_name()
calls with calls to dns_fixedname_initname() where it is possible
without affecting current behavior and/or performance.

This patch was mostly prepared using Coccinelle and the following
semantic patch:

    @@
    expression fixedname, name;
    @@
    -	dns_fixedname_init(&fixedname);
    	...
    -	name = dns_fixedname_name(&fixedname);
    +	name = dns_fixedname_initname(&fixedname);

The resulting set of changes was then manually reviewed to exclude false
positives and apply minor tweaks.

It is likely that more occurrences of this pattern can be refactored in
an identical way.  This commit only takes care of the low-hanging fruit.

(cherry picked from commit 4df4a8e731)
2018-04-10 13:09:24 -07:00
Ondřej Surý
2301f0562e Remove redundant named_g_conffile initialization from bin/named/win32/os.c
(cherry picked from commit c727f0797b)
2018-04-04 12:33:09 +02:00
Mark Andrews
9354d3443b fix log message about 'dnsrps-enable yes;' when not configured (this will only ever be emitted if the parser is incorrectly updated as the error is normally caught there)
(cherry picked from commit d24fb6b032)
2018-03-07 12:56:07 -08:00
Evan Hunt
84ec07999f temporarily revert change #4859 2018-03-02 12:01:55 -08:00
Evan Hunt
26b1e37f87 minor cleanup and addressed a sprintf format warning
(cherry picked from commit ab0fe63f07)
2018-02-26 10:39:44 +11:00
Ondřej Surý
557a5c3f78 Update license headers to not include years in copyright in all applicable files
(cherry picked from commit 843d389661)
2018-02-23 10:38:02 +01:00
Michał Kępień
2c1307f061 Make dns_dt_reopen() request task-exclusive mode on its own
Instead of relying on the caller to set up task-exclusive mode, make
dns_dt_reopen() enforce task-exclusive mode itself, using the task
specified at dnstap environment creation time.
2018-02-16 09:37:23 +01:00