From b3245768584225fbc77d1d4aa2aab9954c02419b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Thu, 18 Oct 2018 15:48:44 +0200 Subject: [PATCH] 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. --- bin/named/named.conf.5 | 6 ++---- bin/named/named.conf.docbook | 8 +++----- bin/named/named.conf.html | 6 ++---- doc/arm/Bv9ARM.ch05.html | 2 +- doc/arm/man.named.conf.html | 6 ++---- doc/arm/static-stub.zoneopt.xml | 2 +- doc/misc/options | 6 ++---- doc/misc/static-stub.zoneopt | 2 +- lib/bind9/check.c | 7 ------- lib/isccfg/namedconf.c | 10 +++++----- 10 files changed, 19 insertions(+), 36 deletions(-) diff --git a/bin/named/named.conf.5 b/bin/named/named.conf.5 index dcea32d72e..6104832681 100644 --- a/bin/named/named.conf.5 +++ b/bin/named/named.conf.5 @@ -899,8 +899,7 @@ view \fIstring\fR [ \fIclass\fR ] { request\-expire \fIboolean\fR; request\-ixfr \fIboolean\fR; serial\-update\-method ( date | increment | unixtime ); - server\-addresses { ( \fIipv4_address\fR | \fIipv6_address\fR ) [ - port \fIinteger\fR ]; \&.\&.\&. }; + server\-addresses { ( \fIipv4_address\fR | \fIipv6_address\fR ); \&.\&.\&. }; server\-names { \fIstring\fR; \&.\&.\&. }; sig\-signing\-nodes \fIinteger\fR; sig\-signing\-signatures \fIinteger\fR; @@ -1007,8 +1006,7 @@ zone \fIstring\fR [ \fIclass\fR ] { request\-expire \fIboolean\fR; request\-ixfr \fIboolean\fR; serial\-update\-method ( date | increment | unixtime ); - server\-addresses { ( \fIipv4_address\fR | \fIipv6_address\fR ) [ port - \fIinteger\fR ]; \&.\&.\&. }; + server\-addresses { ( \fIipv4_address\fR | \fIipv6_address\fR ); \&.\&.\&. }; server\-names { \fIstring\fR; \&.\&.\&. }; sig\-signing\-nodes \fIinteger\fR; sig\-signing\-signatures \fIinteger\fR; diff --git a/bin/named/named.conf.docbook b/bin/named/named.conf.docbook index 04fc8476a8..49aa2104f9 100644 --- a/bin/named/named.conf.docbook +++ b/bin/named/named.conf.docbook @@ -13,7 +13,7 @@ - 2018-09-04 + 2018-10-23 ISC @@ -879,8 +879,7 @@ view string [ class ] { request-expire boolean; request-ixfr boolean; serial-update-method ( date | increment | unixtime ); - server-addresses { ( ipv4_address | ipv6_address ) [ - port integer ]; ... }; + server-addresses { ( ipv4_address | ipv6_address ); ... }; server-names { string; ... }; sig-signing-nodes integer; sig-signing-signatures integer; @@ -983,8 +982,7 @@ zone string [ class ] { request-expire boolean; request-ixfr boolean; serial-update-method ( date | increment | unixtime ); - server-addresses { ( ipv4_address | ipv6_address ) [ port - integer ]; ... }; + server-addresses { ( ipv4_address | ipv6_address ); ... }; server-names { string; ... }; sig-signing-nodes integer; sig-signing-signatures integer; diff --git a/bin/named/named.conf.html b/bin/named/named.conf.html index 2e4bff72bc..7169f14ceb 100644 --- a/bin/named/named.conf.html +++ b/bin/named/named.conf.html @@ -868,8 +868,7 @@ view request-expire boolean;
request-ixfr boolean;
serial-update-method ( date | increment | unixtime );
- server-addresses { ( ipv4_address | ipv6_address ) [
-     port integer ]; ... };
+ server-addresses { ( ipv4_address | ipv6_address ); ... };
server-names { string; ... };
sig-signing-nodes integer;
sig-signing-signatures integer;
@@ -973,8 +972,7 @@ zone request-expire boolean;
request-ixfr boolean;
serial-update-method ( date | increment | unixtime );
- server-addresses { ( ipv4_address | ipv6_address ) [ port
-     integer ]; ... };
+ server-addresses { ( ipv4_address | ipv6_address ); ... };
server-names { string; ... };
sig-signing-nodes integer;
sig-signing-signatures integer;
diff --git a/doc/arm/Bv9ARM.ch05.html b/doc/arm/Bv9ARM.ch05.html index 6c08c0a494..36939a6ea3 100644 --- a/doc/arm/Bv9ARM.ch05.html +++ b/doc/arm/Bv9ARM.ch05.html @@ -9465,7 +9465,7 @@ view "external" { forward ( first | only ); forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... }; max-records integer; - server-addresses { ( ipv4_address | ipv6_address ) [ port integer ]; ... }; + server-addresses { ( ipv4_address | ipv6_address ); ... }; server-names { string; ... }; zone-statistics ( full | terse | none | boolean ); }; diff --git a/doc/arm/man.named.conf.html b/doc/arm/man.named.conf.html index 8dab2cff4f..3c91638ea3 100644 --- a/doc/arm/man.named.conf.html +++ b/doc/arm/man.named.conf.html @@ -886,8 +886,7 @@ view request-expire boolean;
request-ixfr boolean;
serial-update-method ( date | increment | unixtime );
- server-addresses { ( ipv4_address | ipv6_address ) [
-     port integer ]; ... };
+ server-addresses { ( ipv4_address | ipv6_address ); ... };
server-names { string; ... };
sig-signing-nodes integer;
sig-signing-signatures integer;
@@ -991,8 +990,7 @@ zone request-expire boolean;
request-ixfr boolean;
serial-update-method ( date | increment | unixtime );
- server-addresses { ( ipv4_address | ipv6_address ) [ port
-     integer ]; ... };
+ server-addresses { ( ipv4_address | ipv6_address ); ... };
server-names { string; ... };
sig-signing-nodes integer;
sig-signing-signatures integer;
diff --git a/doc/arm/static-stub.zoneopt.xml b/doc/arm/static-stub.zoneopt.xml index 4aadf68936..beb1f10562 100644 --- a/doc/arm/static-stub.zoneopt.xml +++ b/doc/arm/static-stub.zoneopt.xml @@ -18,7 +18,7 @@ forward ( first | only ); forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... }; max-records integer; - server-addresses { ( ipv4_address | ipv6_address ) [ port integer ]; ... }; + server-addresses { ( ipv4_address | ipv6_address ); ... }; server-names { string; ... }; zone-statistics ( full | terse | none | boolean ); }; diff --git a/doc/misc/options b/doc/misc/options index 546e5144d4..e845e3e52f 100644 --- a/doc/misc/options +++ b/doc/misc/options @@ -803,8 +803,7 @@ view [ ] { request-expire ; request-ixfr ; serial-update-method ( date | increment | unixtime ); - server-addresses { ( | ) [ - port ]; ... }; + server-addresses { ( | ); ... }; server-names { ; ... }; sig-signing-nodes ; sig-signing-signatures ; @@ -908,8 +907,7 @@ zone [ ] { request-expire ; request-ixfr ; serial-update-method ( date | increment | unixtime ); - server-addresses { ( | ) [ port - ]; ... }; + server-addresses { ( | ); ... }; server-names { ; ... }; sig-signing-nodes ; sig-signing-signatures ; diff --git a/doc/misc/static-stub.zoneopt b/doc/misc/static-stub.zoneopt index 809daf38e7..f89d46248a 100644 --- a/doc/misc/static-stub.zoneopt +++ b/doc/misc/static-stub.zoneopt @@ -5,7 +5,7 @@ zone [ ] { forward ( first | only ); forwarders [ port ] [ dscp ] { ( | ) [ port ] [ dscp ]; ... }; max-records ; - server-addresses { ( | ) [ port ]; ... }; + server-addresses { ( | ); ... }; server-names { ; ... }; zone-statistics ( full | terse | none | ); }; diff --git a/lib/bind9/check.c b/lib/bind9/check.c index 451bfbeeac..4060851888 100644 --- a/lib/bind9/check.c +++ b/lib/bind9/check.c @@ -2461,13 +2461,6 @@ check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions, obj = cfg_listelt_value(element); sa = *cfg_obj_assockaddr(obj); - if (isc_sockaddr_getport(&sa) != 0) { - result = ISC_R_FAILURE; - cfg_obj_log(obj, logctx, ISC_LOG_ERROR, - "port is not configurable for " - "static stub server-addresses"); - } - isc_netaddr_fromsockaddr(&na, &sa); if (isc_netaddr_getzone(&na) != 0) { result = ISC_R_FAILURE; diff --git a/lib/isccfg/namedconf.c b/lib/isccfg/namedconf.c index d6881de77f..3b51a080ba 100644 --- a/lib/isccfg/namedconf.c +++ b/lib/isccfg/namedconf.c @@ -98,7 +98,7 @@ static cfg_type_t cfg_type_addrmatchelt; static cfg_type_t cfg_type_bracketed_aml; static cfg_type_t cfg_type_bracketed_dscpsockaddrlist; static cfg_type_t cfg_type_bracketed_namesockaddrkeylist; -static cfg_type_t cfg_type_bracketed_sockaddrlist; +static cfg_type_t cfg_type_bracketed_netaddrlist; static cfg_type_t cfg_type_bracketed_sockaddrnameportlist; static cfg_type_t cfg_type_controls; static cfg_type_t cfg_type_controls_sockaddr; @@ -566,10 +566,10 @@ static cfg_type_t cfg_type_bracketed_dscpsockaddrlist = { &cfg_type_sockaddrdscp }; -static cfg_type_t cfg_type_bracketed_sockaddrlist = { - "bracketed_sockaddrlist", cfg_parse_bracketed_list, +static cfg_type_t cfg_type_bracketed_netaddrlist = { + "bracketed_netaddrlist", cfg_parse_bracketed_list, cfg_print_bracketed_list, cfg_doc_bracketed_list, &cfg_rep_list, - &cfg_type_sockaddr + &cfg_type_netaddr }; static const char *autodnssec_enums[] = { @@ -2281,7 +2281,7 @@ zone_only_clauses[] = { { "pubkey", &cfg_type_pubkey, CFG_CLAUSEFLAG_MULTI | CFG_CLAUSEFLAG_OBSOLETE }, - { "server-addresses", &cfg_type_bracketed_sockaddrlist, + { "server-addresses", &cfg_type_bracketed_netaddrlist, CFG_ZONE_STATICSTUB }, { "server-names", &cfg_type_namelist,