Lines Matching refs:cfg_parser

31 extern config_parser_state_type *cfg_parser;
250 struct ip_address_option *ip = cfg_parser->opt->ip_addresses;
253 cfg_parser->opt->ip_addresses = $2;
259 cfg_parser->ip = $2;
263 cfg_parser->ip = NULL;
268 cfg_parser->opt->server_count = (int)$2;
274 { cfg_parser->opt->ip_transparent = $2; }
276 { cfg_parser->opt->ip_freebind = $2; }
278 { cfg_parser->opt->send_buffer_size = (int)$2; }
280 { cfg_parser->opt->receive_buffer_size = (int)$2; }
282 { cfg_parser->opt->debug_mode = $2; }
286 { cfg_parser->opt->hide_version = $2; }
288 { cfg_parser->opt->hide_identity = $2; }
290 { cfg_parser->opt->drop_updates = $2; }
292 { if($2) { cfg_parser->opt->do_ip4 = 1; cfg_parser->opt->do_ip6 = 0; } }
294 { if($2) { cfg_parser->opt->do_ip4 = 0; cfg_parser->opt->do_ip6 = 1; } }
296 { cfg_parser->opt->do_ip4 = $2; }
298 { cfg_parser->opt->do_ip6 = $2; }
302 { cfg_parser->opt->identity = region_strdup(cfg_parser->opt->region, $2); }
304 { cfg_parser->opt->version = region_strdup(cfg_parser->opt->region, $2); }
313 cfg_parser->opt->nsid = region_alloc(cfg_parser->opt->region, nsid_len*2+1);
314 hex_ntop((uint8_t*)$2+6, nsid_len, (char*)cfg_parser->opt->nsid, nsid_len*2+1);
327 cfg_parser->opt->nsid = region_strdup(cfg_parser->opt->region, $2);
336 { cfg_parser->opt->logfile = region_strdup(cfg_parser->opt->region, $2); }
338 { cfg_parser->opt->log_only_syslog = $2; }
342 cfg_parser->opt->tcp_count = (int)$2;
348 { cfg_parser->opt->tcp_reject_overflow = $2; }
350 { cfg_parser->opt->tcp_query_count = (int)$2; }
352 { cfg_parser->opt->tcp_timeout = (int)$2; }
354 { cfg_parser->opt->tcp_mss = (int)$2; }
356 { cfg_parser->opt->outgoing_tcp_mss = (int)$2; }
358 { cfg_parser->opt->ipv4_edns_size = (size_t)$2; }
360 { cfg_parser->opt->ipv6_edns_size = (size_t)$2; }
362 { cfg_parser->opt->pidfile = region_strdup(cfg_parser->opt->region, $2); }
368 cfg_parser->opt->port = region_strdup(cfg_parser->opt->region, buf);
371 { cfg_parser->opt->reuseport = $2; }
373 { cfg_parser->opt->statistics = (int)$2; }
375 { cfg_parser->opt->chroot = region_strdup(cfg_parser->opt->region, $2); }
377 { cfg_parser->opt->username = region_strdup(cfg_parser->opt->region, $2); }
379 { cfg_parser->opt->zonesdir = region_strdup(cfg_parser->opt->region, $2); }
381 { cfg_parser->opt->zonelistfile = region_strdup(cfg_parser->opt->region, $2); }
385 { cfg_parser->opt->xfrdfile = region_strdup(cfg_parser->opt->region, $2); }
387 { cfg_parser->opt->xfrdir = region_strdup(cfg_parser->opt->region, $2); }
389 { cfg_parser->opt->xfrd_reload_timeout = (int)$2; }
391 { cfg_parser->opt->verbosity = (int)$2; }
396 cfg_parser->opt->rrl_size = (size_t)$2;
405 cfg_parser->opt->rrl_ratelimit = (size_t)$2;
411 cfg_parser->opt->rrl_slip = (size_t)$2;
420 cfg_parser->opt->rrl_ipv4_prefix_length = (size_t)$2;
430 cfg_parser->opt->rrl_ipv6_prefix_length = (size_t)$2;
437 cfg_parser->opt->rrl_whitelist_ratelimit = (size_t)$2;
441 { cfg_parser->opt->zonefiles_check = $2; }
443 { cfg_parser->opt->zonefiles_write = (int)$2; }
446 cfg_parser->opt->log_time_ascii = $2;
447 log_time_asc = cfg_parser->opt->log_time_ascii;
451 cfg_parser->opt->round_robin = $2;
452 round_robin = cfg_parser->opt->round_robin;
456 cfg_parser->opt->minimal_responses = $2;
457 minimal_responses = cfg_parser->opt->minimal_responses;
460 { cfg_parser->opt->confine_to_zone = $2; }
462 { cfg_parser->opt->refuse_any = $2; }
464 { cfg_parser->opt->tls_service_key = region_strdup(cfg_parser->opt->region, $2); }
466 { cfg_parser->opt->tls_service_ocsp = region_strdup(cfg_parser->opt->region, $2); }
468 { cfg_parser->opt->tls_service_pem = region_strdup(cfg_parser->opt->region, $2); }
474 cfg_parser->opt->tls_port = region_strdup(cfg_parser->opt->region, buf);
477 { cfg_parser->opt->tls_cert_bundle = region_strdup(cfg_parser->opt->region, $2); }
481 cfg_parser->opt->region, sizeof(*elem));
483 elem->next = cfg_parser->opt->proxy_protocol_port;
484 cfg_parser->opt->proxy_protocol_port = elem;
487 { cfg_parser->opt->answer_cookie = $2; }
489 { cfg_parser->opt->cookie_secret = region_strdup(cfg_parser->opt->region, $2); }
491 { cfg_parser->opt->cookie_secret_file = region_strdup(cfg_parser->opt->region, $2); }
493 { cfg_parser->opt->xfrd_tcp_max = (int)$2; }
495 { cfg_parser->opt->xfrd_tcp_pipeline = (int)$2; }
498 cfg_parser->opt->cpu_affinity = $2;
508 opt = cfg_parser->opt->service_cpu_affinity;
514 opt = region_alloc_zero(cfg_parser->opt->region, sizeof(*opt));
518 tail = cfg_parser->opt->service_cpu_affinity;
523 cfg_parser->opt->service_cpu_affinity = opt;
543 region_alloc(cfg_parser->opt->region, sizeof(*opt));
557 servers = cfg_parser->ip->servers = opt;
562 { cfg_parser->ip->dev = $2; }
564 { cfg_parser->ip->fib = $2; }
584 region_alloc_zero(cfg_parser->opt->region, sizeof(*opt));
623 { cfg_parser->opt->dnstap_enable = $2; }
625 { cfg_parser->opt->dnstap_socket_path = region_strdup(cfg_parser->opt->region, $2); }
627 { cfg_parser->opt->dnstap_ip = region_strdup(cfg_parser->opt->region, $2); }
629 { cfg_parser->opt->dnstap_tls = $2; }
631 { cfg_parser->opt->dnstap_tls_server_name = region_strdup(cfg_parser->opt->region, $2); }
633 { cfg_parser->opt->dnstap_tls_cert_bundle = region_strdup(cfg_parser->opt->region, $2); }
635 { cfg_parser->opt->dnstap_tls_client_key_file = region_strdup(cfg_parser->opt->region, $2); }
637 { cfg_parser->opt->dnstap_tls_client_cert_file = region_strdup(cfg_parser->opt->region, $2); }
639 { cfg_parser->opt->dnstap_send_identity = $2; }
641 { cfg_parser->opt->dnstap_send_version = $2; }
643 { cfg_parser->opt->dnstap_identity = region_strdup(cfg_parser->opt->region, $2); }
645 { cfg_parser->opt->dnstap_version = region_strdup(cfg_parser->opt->region, $2); }
647 { cfg_parser->opt->dnstap_log_auth_query_messages = $2; }
649 { cfg_parser->opt->dnstap_log_auth_response_messages = $2; }
660 { cfg_parser->opt->control_enable = $2; }
663 struct ip_address_option *ip = cfg_parser->opt->control_interface;
665 cfg_parser->opt->control_interface = $2;
676 cfg_parser->opt->control_port = (int)$2;
680 { cfg_parser->opt->server_key_file = region_strdup(cfg_parser->opt->region, $2); }
682 { cfg_parser->opt->server_cert_file = region_strdup(cfg_parser->opt->region, $2); }
684 { cfg_parser->opt->control_key_file = region_strdup(cfg_parser->opt->region, $2); }
686 { cfg_parser->opt->control_cert_file = region_strdup(cfg_parser->opt->region, $2); }
692 tls_auth_options_type *tls_auth = tls_auth_options_create(cfg_parser->opt->region);
693 assert(cfg_parser->tls_auth == NULL);
694 cfg_parser->tls_auth = tls_auth;
698 struct tls_auth_options *tls_auth = cfg_parser->tls_auth;
703 } else if(tls_auth_options_find(cfg_parser->opt, tls_auth->name)) {
706 tls_auth_options_insert(cfg_parser->opt, tls_auth);
707 cfg_parser->tls_auth = NULL;
718 dname = (dname_type *)dname_parse(cfg_parser->opt->region, $2);
719 cfg_parser->tls_auth->name = region_strdup(cfg_parser->opt->region, $2);
723 region_recycle(cfg_parser->opt->region, dname, dname_total_size(dname));
728 cfg_parser->tls_auth->auth_domain_name = region_strdup(cfg_parser->opt->region, $2);
732 cfg_parser->tls_auth->client_cert = region_strdup(cfg_parser->opt->region, $2);
736 cfg_parser->tls_auth->client_key = region_strdup(cfg_parser->opt->region, $2);
740 cfg_parser->tls_auth->client_key_pw = region_strdup(cfg_parser->opt->region, $2);
747 key_options_type *key = key_options_create(cfg_parser->opt->region);
748 key->algorithm = region_strdup(cfg_parser->opt->region, "sha256");
749 assert(cfg_parser->key == NULL);
750 cfg_parser->key = key;
754 struct key_options *key = cfg_parser->key;
761 } else if(key_options_find(cfg_parser->opt, key->name)) {
764 key_options_insert(cfg_parser->opt, key);
765 cfg_parser->key = NULL;
777 dname = (dname_type *)dname_parse(cfg_parser->opt->region, $2);
778 cfg_parser->key->name = region_strdup(cfg_parser->opt->region, $2);
782 region_recycle(cfg_parser->opt->region, dname, dname_total_size(dname));
790 cfg_parser->key->algorithm = region_strdup(cfg_parser->opt->region, $2);
798 cfg_parser->key->secret = region_strdup(cfg_parser->opt->region, $2);
802 cfg_parser->key->name?
803 cfg_parser->key->name:"");
813 assert(cfg_parser->pattern == NULL);
814 assert(cfg_parser->zone == NULL);
815 cfg_parser->zone = zone_options_create(cfg_parser->opt->region);
816 cfg_parser->zone->part_of_config = 1;
817 cfg_parser->zone->pattern = cfg_parser->pattern =
818 pattern_options_create(cfg_parser->opt->region);
819 cfg_parser->zone->pattern->implicit = 1;
823 assert(cfg_parser->zone != NULL);
824 if(cfg_parser->zone->name == NULL) {
826 } else if(!nsd_options_insert_zone(cfg_parser->opt, cfg_parser->zone)) {
827 yyerror("duplicate zone %s", cfg_parser->zone->name);
828 } else if(!nsd_options_insert_pattern(cfg_parser->opt, cfg_parser->zone->pattern)) {
829 yyerror("duplicate pattern %s", cfg_parser->zone->pattern->pname);
831 cfg_parser->pattern = NULL;
832 cfg_parser->zone = NULL;
842 char *pname = region_alloc(cfg_parser->opt->region, strlen($2) + strlen(marker) + 1);
845 cfg_parser->zone->pattern->pname = pname;
846 cfg_parser->zone->name = region_strdup(cfg_parser->opt->region, $2);
847 if(pattern_options_find(cfg_parser->opt, pname)) {
857 assert(cfg_parser->pattern == NULL);
858 cfg_parser->pattern = pattern_options_create(cfg_parser->opt->region);
862 pattern_options_type *pattern = cfg_parser->pattern;
865 } else if(!nsd_options_insert_pattern(cfg_parser->opt, pattern)) {
868 cfg_parser->pattern = NULL;
880 cfg_parser->pattern->pname = region_strdup(cfg_parser->opt->region, $2);
888 cfg_parser->pattern->rrl_whitelist |= rrlstr2type($2);
892 { cfg_parser->pattern->zonefile = region_strdup(cfg_parser->opt->region, $2); }
894 { cfg_parser->pattern->zonestats = region_strdup(cfg_parser->opt->region, $2); }
898 cfg_parser->pattern->size_limit_xfr = (int)$2;
904 { cfg_parser->pattern->multi_master_check = (int)$2; }
906 { config_apply_pattern(cfg_parser->pattern, $2); }
909 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, $3);
914 append_acl(&cfg_parser->pattern->request_xfr, acl);
920 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $3, $4);
926 append_acl(&cfg_parser->pattern->request_xfr, acl);
932 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $3, $4);
938 append_acl(&cfg_parser->pattern->request_xfr, acl);
942 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, $3);
943 append_acl(&cfg_parser->pattern->allow_notify, acl);
947 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, $3);
952 append_acl(&cfg_parser->pattern->notify, acl);
956 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, $3);
957 append_acl(&cfg_parser->pattern->provide_xfr, acl);
961 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, $3);
962 append_acl(&cfg_parser->pattern->allow_query, acl);
966 acl_options_type *acl = parse_acl_info(cfg_parser->opt->region, $2, "NOKEY");
967 append_acl(&cfg_parser->pattern->outgoing_interface, acl);
971 cfg_parser->pattern->allow_axfr_fallback = $2;
972 cfg_parser->pattern->allow_axfr_fallback_is_default = 0;
976 cfg_parser->pattern->notify_retry = $2;
977 cfg_parser->pattern->notify_retry_is_default = 0;
981 cfg_parser->pattern->max_refresh_time = $2;
982 cfg_parser->pattern->max_refresh_time_is_default = 0;
986 cfg_parser->pattern->min_refresh_time = $2;
987 cfg_parser->pattern->min_refresh_time_is_default = 0;
991 cfg_parser->pattern->max_retry_time = $2;
992 cfg_parser->pattern->max_retry_time_is_default = 0;
996 cfg_parser->pattern->min_retry_time = $2;
997 cfg_parser->pattern->min_retry_time_is_default = 0;
1008 cfg_parser->pattern->min_expire_time = num;
1009 cfg_parser->pattern->min_expire_time_expr = expr;
1013 cfg_parser->pattern->store_ixfr = $2;
1014 cfg_parser->pattern->store_ixfr_is_default = 0;
1018 cfg_parser->pattern->ixfr_size = $2;
1019 cfg_parser->pattern->ixfr_size_is_default = 0;
1023 cfg_parser->pattern->ixfr_number = $2;
1024 cfg_parser->pattern->ixfr_number_is_default = 0;
1028 cfg_parser->pattern->create_ixfr = $2;
1029 cfg_parser->pattern->create_ixfr_is_default = 0;
1032 { cfg_parser->pattern->verify_zone = $2; }
1034 { cfg_parser->pattern->verifier = $2; }
1036 { cfg_parser->pattern->verifier_feed_zone = $2; }
1038 { cfg_parser->pattern->verifier_timeout = $2; } ;
1048 { cfg_parser->opt->verify_enable = $2; }
1051 struct ip_address_option *ip = cfg_parser->opt->verify_ip_addresses;
1053 cfg_parser->opt->verify_ip_addresses = $2;
1064 cfg_parser->opt->verify_port = region_strdup(cfg_parser->opt->region, buf);
1067 { cfg_parser->opt->verify_zones = $2; }
1069 { cfg_parser->opt->verifier = $2; }
1071 { cfg_parser->opt->verifier_count = (int)$2; }
1073 { cfg_parser->opt->verifier_timeout = (int)$2; }
1075 { cfg_parser->opt->verifier_feed_zone = $2; } ;
1086 cfg_parser->opt->region, (argc + 1) * sizeof(char *));
1092 region_recycle(cfg_parser->opt->region, i, sizeof(*i));
1102 cfg_parser->opt->region, sizeof(*comp));
1103 comp->str = region_strdup(cfg_parser->opt->region, $2);
1120 cfg_parser->opt->region, sizeof(*ip));
1121 ip->address = region_strdup(cfg_parser->opt->region, $1);
1146 { char *tls_auth_name = region_strdup(cfg_parser->opt->region, $1);
1147 add_to_last_acl(&cfg_parser->pattern->request_xfr, tls_auth_name);} ;