summaryrefslogtreecommitdiffstats
path: root/usr.sbin/nsd/configparser.y
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/nsd/configparser.y')
-rw-r--r--usr.sbin/nsd/configparser.y14
1 files changed, 12 insertions, 2 deletions
diff --git a/usr.sbin/nsd/configparser.y b/usr.sbin/nsd/configparser.y
index 36c87c44d19..b9bf8200f99 100644
--- a/usr.sbin/nsd/configparser.y
+++ b/usr.sbin/nsd/configparser.y
@@ -71,7 +71,7 @@ extern config_parser_state_type* cfg_parser;
%token VAR_ROUND_ROBIN VAR_ZONESTATS VAR_REUSEPORT VAR_VERSION
%token VAR_MAX_REFRESH_TIME VAR_MIN_REFRESH_TIME
%token VAR_MAX_RETRY_TIME VAR_MIN_RETRY_TIME
-%token VAR_MULTI_MASTER_CHECK VAR_MINIMAL_RESPONSES
+%token VAR_MULTI_MASTER_CHECK VAR_MINIMAL_RESPONSES VAR_REFUSE_ANY
%%
toplevelvars: /* empty */ | toplevelvars toplevelvar ;
@@ -103,7 +103,7 @@ content_server: server_ip_address | server_ip_transparent | server_debug_mode |
server_zonefiles_check | server_do_ip4 | server_do_ip6 |
server_zonefiles_write | server_log_time_ascii | server_round_robin |
server_reuseport | server_version | server_ip_freebind |
- server_minimal_responses;
+ server_minimal_responses | server_refuse_any;
server_ip_address: VAR_IP_ADDRESS STRING
{
OUTYY(("P(server_ip_address:%s)\n", $2));
@@ -304,6 +304,16 @@ server_minimal_responses: VAR_MINIMAL_RESPONSES STRING
}
}
;
+server_refuse_any: VAR_REFUSE_ANY STRING
+ {
+ OUTYY(("P(server_refuse_any:%s)\n", $2));
+ if(strcmp($2, "yes") != 0 && strcmp($2, "no") != 0)
+ yyerror("expected yes or no.");
+ else {
+ cfg_parser->opt->refuse_any = (strcmp($2, "yes")==0);
+ }
+ }
+ ;
server_server_count: VAR_SERVER_COUNT STRING
{
OUTYY(("P(server_server_count:%s)\n", $2));