From: Wouter Wijngaards Date: Mon, 2 Feb 2015 08:46:22 +0000 (+0000) Subject: - infra-cache-min-rtt patch from Florian Riehm, for expected long X-Git-Tag: release-1.5.2rc1~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3ef33154e5500c616b133d1b1a5df41db728b52c;p=thirdparty%2Funbound.git - infra-cache-min-rtt patch from Florian Riehm, for expected long uplink roundtrip times. git-svn-id: file:///svn/unbound/trunk@3328 be551aaa-1e26-0410-a405-d3ace91eadb9 --- diff --git a/Makefile.in b/Makefile.in index f89ceb397..e35db2dc8 100644 --- a/Makefile.in +++ b/Makefile.in @@ -689,13 +689,14 @@ iter_utils.lo iter_utils.o: $(srcdir)/iterator/iter_utils.c config.h $(srcdir)/i $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_sigcrypt.h $(srcdir)/ldns/sbuffer.h listen_dnsport.lo listen_dnsport.o: $(srcdir)/services/listen_dnsport.c config.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/util/netevent.h $(srcdir)/services/outside_network.h \ - $(srcdir)/util/rbtree.h $(srcdir)/util/log.h $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h \ - $(srcdir)/ldns/sbuffer.h + $(srcdir)/util/rbtree.h $(srcdir)/dnstap/dnstap_config.h $(srcdir)/util/log.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/net_help.h $(srcdir)/ldns/sbuffer.h localzone.lo localzone.o: $(srcdir)/services/localzone.c config.h $(srcdir)/services/localzone.h \ $(srcdir)/util/rbtree.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h \ $(srcdir)/ldns/sbuffer.h $(srcdir)/util/regional.h $(srcdir)/util/config_file.h $(srcdir)/util/data/dname.h \ $(srcdir)/util/storage/lruhash.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h \ - $(srcdir)/util/net_help.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h + $(srcdir)/util/net_help.h $(srcdir)/util/netevent.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h mesh.lo mesh.o: $(srcdir)/services/mesh.c config.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/netevent.h $(srcdir)/util/data/msgparse.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ $(srcdir)/util/log.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ @@ -711,15 +712,16 @@ modstack.lo modstack.o: $(srcdir)/services/modstack.c config.h $(srcdir)/service $(srcdir)/services/outbound_list.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h outbound_list.lo outbound_list.o: $(srcdir)/services/outbound_list.c config.h \ $(srcdir)/services/outbound_list.h $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h \ - $(srcdir)/util/netevent.h + $(srcdir)/util/netevent.h $(srcdir)/dnstap/dnstap_config.h outside_network.lo outside_network.o: $(srcdir)/services/outside_network.c config.h \ $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h $(srcdir)/util/netevent.h \ - $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/infra.h $(srcdir)/util/storage/lruhash.h \ - $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/rtt.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ - $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ - $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/util/random.h \ - $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h \ - $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/rtt.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/random.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h \ + $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/dnstap/dnstap.h \ alloc.lo alloc.o: $(srcdir)/util/alloc.c config.h $(srcdir)/util/alloc.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ $(srcdir)/util/regional.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ @@ -732,8 +734,8 @@ config_file.lo config_file.o: $(srcdir)/util/config_file.c config.h $(srcdir)/ut $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/regional.h $(srcdir)/util/fptr_wlist.h \ $(srcdir)/util/netevent.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ - $(srcdir)/services/modstack.h $(srcdir)/util/data/dname.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/parseutil.h \ - $(srcdir)/util/iana_ports.inc + $(srcdir)/services/modstack.h $(srcdir)/util/data/dname.h $(srcdir)/util/rtt.h $(srcdir)/ldns/wire2str.h \ + $(srcdir)/ldns/parseutil.h $(srcdir)/util/iana_ports.inc configlexer.lo configlexer.o: util/configlexer.c config.h $(srcdir)/util/configyyrename.h \ $(srcdir)/util/config_file.h util/configparser.h configparser.lo configparser.o: util/configparser.c config.h $(srcdir)/util/configyyrename.h \ @@ -743,15 +745,16 @@ fptr_wlist.lo fptr_wlist.o: $(srcdir)/util/fptr_wlist.c config.h $(srcdir)/util/ $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h $(srcdir)/util/mini_event.h \ - $(srcdir)/util/rbtree.h $(srcdir)/services/outside_network.h $(srcdir)/services/localzone.h \ - $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/services/cache/rrset.h \ - $(srcdir)/util/storage/slabhash.h $(srcdir)/dns64/dns64.h $(srcdir)/iterator/iterator.h \ - $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/validator/validator.h \ - $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_anchor.h $(srcdir)/validator/val_nsec3.h \ - $(srcdir)/validator/val_sigcrypt.h $(srcdir)/validator/val_kentry.h $(srcdir)/validator/val_neg.h \ - $(srcdir)/validator/autotrust.h $(srcdir)/util/storage/dnstree.h $(srcdir)/libunbound/libworker.h \ - $(srcdir)/libunbound/context.h $(srcdir)/util/alloc.h $(srcdir)/libunbound/unbound.h \ - $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h $(srcdir)/util/config_file.h + $(srcdir)/util/rbtree.h $(srcdir)/services/outside_network.h $(srcdir)/dnstap/dnstap_config.h \ + $(srcdir)/services/localzone.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/dns64/dns64.h \ + $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_fwd.h \ + $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_anchor.h \ + $(srcdir)/validator/val_nsec3.h $(srcdir)/validator/val_sigcrypt.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/validator/val_neg.h $(srcdir)/validator/autotrust.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/libunbound/libworker.h $(srcdir)/libunbound/context.h $(srcdir)/util/alloc.h \ + $(srcdir)/libunbound/unbound.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/config_file.h locks.lo locks.o: $(srcdir)/util/locks.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h log.lo log.o: $(srcdir)/util/log.c config.h $(srcdir)/util/log.h $(srcdir)/util/locks.h $(srcdir)/ldns/sbuffer.h mini_event.lo mini_event.o: $(srcdir)/util/mini_event.c config.h $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h \ @@ -767,6 +770,7 @@ netevent.lo netevent.o: $(srcdir)/util/netevent.c config.h $(srcdir)/util/neteve $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/dnstap/dnstap_config.h \ $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h net_help.lo net_help.o: $(srcdir)/util/net_help.c config.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h \ $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/module.h \ @@ -854,8 +858,8 @@ val_nsec.lo val_nsec.o: $(srcdir)/validator/val_nsec.c config.h $(srcdir)/valida $(srcdir)/validator/val_utils.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/dname.h \ $(srcdir)/util/net_help.h $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ $(srcdir)/ldns/rrdef.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h -val_secalgo.lo val_secalgo.o: $(srcdir)/validator/val_secalgo.c config.h $(srcdir)/validator/val_secalgo.h \ - $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ +val_secalgo.lo val_secalgo.o: $(srcdir)/validator/val_secalgo.c config.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/validator/val_secalgo.h \ $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/keyraw.h \ $(srcdir)/ldns/sbuffer.h \ @@ -884,6 +888,11 @@ dns64.lo dns64.o: $(srcdir)/dns64/dns64.c config.h $(srcdir)/dns64/dns64.h $(src $(srcdir)/util/regional.h checklocks.lo checklocks.o: $(srcdir)/testcode/checklocks.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ $(srcdir)/testcode/checklocks.h +dnstap.lo dnstap.o: $(srcdir)/dnstap/dnstap.c $(srcdir)/dnstap/dnstap_config.h config.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h $(srcdir)/util/netevent.h \ + $(srcdir)/dnstap/dnstap.h \ + $(srcdir)/dnstap/dnstap.pb-c.h +dnstap.pb-c.lo dnstap.pb-c.o: $(srcdir)/dnstap/dnstap.pb-c.c $(srcdir)/dnstap/dnstap.pb-c.h unitanchor.lo unitanchor.o: $(srcdir)/testcode/unitanchor.c config.h $(srcdir)/util/log.h $(srcdir)/util/data/dname.h \ $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/testcode/unitmain.h \ $(srcdir)/validator/val_anchor.h $(srcdir)/util/rbtree.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/rrdef.h @@ -894,7 +903,8 @@ unitlruhash.lo unitlruhash.o: $(srcdir)/testcode/unitlruhash.c config.h $(srcdir $(srcdir)/util/log.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/storage/slabhash.h unitmain.lo unitmain.o: $(srcdir)/testcode/unitmain.c config.h \ $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/keyraw.h \ - $(srcdir)/util/log.h $(srcdir)/testcode/unitmain.h $(srcdir)/util/alloc.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/log.h \ + $(srcdir)/testcode/unitmain.h $(srcdir)/util/alloc.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h \ $(srcdir)/util/config_file.h $(srcdir)/util/rtt.h $(srcdir)/services/cache/infra.h \ $(srcdir)/util/storage/lruhash.h $(srcdir)/util/random.h unitmsgparse.lo unitmsgparse.o: $(srcdir)/testcode/unitmsgparse.c config.h $(srcdir)/util/log.h \ @@ -935,19 +945,21 @@ cachedump.lo cachedump.o: $(srcdir)/daemon/cachedump.c config.h \ $(srcdir)/ldns/sbuffer.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h \ $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ - $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/services/cache/rrset.h \ - $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/util/regional.h $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h \ - $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_delegpt.h \ - $(srcdir)/iterator/iter_utils.h $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iter_fwd.h \ - $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ - $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h + $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/dnstap/dnstap.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/util/regional.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h $(srcdir)/iterator/iterator.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/iterator/iter_utils.h \ + $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/util/rbtree.h \ + $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h $(srcdir)/ldns/wire2str.h \ + $(srcdir)/ldns/str2wire.h daemon.lo daemon.o: $(srcdir)/daemon/daemon.c config.h \ $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ - $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ - $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ - $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ - $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/daemon/remote.h \ $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/storage/slabhash.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ @@ -959,11 +971,12 @@ remote.lo remote.o: $(srcdir)/daemon/remote.c config.h \ $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ - $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/cachedump.h \ - $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/services/listen_dnsport.h \ - $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/localzone.h \ - $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h $(srcdir)/util/data/dname.h $(srcdir)/validator/validator.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/services/modstack.h $(srcdir)/daemon/cachedump.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/net_help.h $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/localzone.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/tube.h $(srcdir)/util/data/dname.h $(srcdir)/validator/validator.h \ $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_kcache.h $(srcdir)/validator/val_kentry.h \ $(srcdir)/validator/val_anchor.h $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h \ $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ @@ -973,14 +986,15 @@ stats.lo stats.o: $(srcdir)/daemon/stats.c config.h $(srcdir)/daemon/stats.h $(s $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ - $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/daemon/daemon.h \ - $(srcdir)/services/modstack.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ - $(srcdir)/services/outside_network.h $(srcdir)/util/config_file.h $(srcdir)/util/tube.h \ - $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h \ - $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/dnstap/dnstap.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/outside_network.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/tube.h $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h unbound.lo unbound.o: $(srcdir)/daemon/unbound.c config.h $(srcdir)/util/log.h $(srcdir)/daemon/daemon.h \ - $(srcdir)/util/locks.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/util/locks.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h $(srcdir)/dnstap/dnstap_config.h \ + $(srcdir)/daemon/remote.h \ $(srcdir)/util/config_file.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/util/netevent.h $(srcdir)/services/cache/rrset.h \ $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h \ @@ -993,7 +1007,8 @@ worker.lo worker.o: $(srcdir)/daemon/worker.c config.h $(srcdir)/util/log.h $(sr $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ - $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/config_file.h $(srcdir)/util/regional.h $(srcdir)/util/storage/slabhash.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/services/outside_network.h \ @@ -1008,9 +1023,10 @@ testbound.lo testbound.o: $(srcdir)/testcode/testbound.c config.h $(srcdir)/test $(srcdir)/daemon/remote.h \ $(srcdir)/util/config_file.h $(srcdir)/ldns/keyraw.h $(srcdir)/daemon/unbound.c $(srcdir)/util/log.h \ $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ - $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h $(srcdir)/services/listen_dnsport.h \ - $(srcdir)/services/cache/rrset.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ $(srcdir)/services/mesh.h $(srcdir)/util/net_help.h $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h testpkts.lo testpkts.o: $(srcdir)/testcode/testpkts.c config.h $(srcdir)/testcode/testpkts.h \ @@ -1021,7 +1037,8 @@ worker.lo worker.o: $(srcdir)/daemon/worker.c config.h $(srcdir)/util/log.h $(sr $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ - $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/config_file.h $(srcdir)/util/regional.h $(srcdir)/util/storage/slabhash.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/services/outside_network.h \ @@ -1036,10 +1053,11 @@ acl_list.lo acl_list.o: $(srcdir)/daemon/acl_list.c config.h $(srcdir)/daemon/ac $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h daemon.lo daemon.o: $(srcdir)/daemon/daemon.c config.h \ $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ - $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ - $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ - $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ - $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/daemon/remote.h \ $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/storage/slabhash.h \ $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ @@ -1049,12 +1067,12 @@ stats.lo stats.o: $(srcdir)/daemon/stats.c config.h $(srcdir)/daemon/stats.h $(s $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ - $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/daemon/daemon.h \ - $(srcdir)/services/modstack.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ - $(srcdir)/services/outside_network.h $(srcdir)/util/config_file.h $(srcdir)/util/tube.h \ - $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h \ - $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/dnstap/dnstap.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/outside_network.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/tube.h $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h replay.lo replay.o: $(srcdir)/testcode/replay.c config.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ $(srcdir)/util/config_file.h $(srcdir)/testcode/replay.h $(srcdir)/util/netevent.h $(srcdir)/testcode/testpkts.h \ $(srcdir)/util/rbtree.h $(srcdir)/testcode/fake_event.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h @@ -1063,10 +1081,10 @@ fake_event.lo fake_event.o: $(srcdir)/testcode/fake_event.c config.h $(srcdir)/t $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h \ $(srcdir)/util/data/dname.h $(srcdir)/util/config_file.h $(srcdir)/services/listen_dnsport.h \ - $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h $(srcdir)/services/cache/infra.h \ - $(srcdir)/util/rtt.h $(srcdir)/testcode/replay.h $(srcdir)/testcode/testpkts.h $(srcdir)/util/fptr_wlist.h \ - $(srcdir)/util/module.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h \ - $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h + $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h $(srcdir)/dnstap/dnstap_config.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/testcode/replay.h $(srcdir)/testcode/testpkts.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h \ + $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h lock_verify.lo lock_verify.o: $(srcdir)/testcode/lock_verify.c config.h $(srcdir)/util/log.h $(srcdir)/util/rbtree.h \ $(srcdir)/util/locks.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h \ $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ @@ -1118,13 +1136,14 @@ libworker.lo libworker.o: $(srcdir)/libunbound/libworker.c config.h \ $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/libunbound/context.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h \ $(srcdir)/services/modstack.h $(srcdir)/libunbound/unbound.h $(srcdir)/libunbound/worker.h \ $(srcdir)/ldns/sbuffer.h $(srcdir)/libunbound/unbound-event.h $(srcdir)/services/outside_network.h \ - $(srcdir)/util/netevent.h $(srcdir)/services/mesh.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ - $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/services/localzone.h \ - $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/outbound_list.h \ - $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h $(srcdir)/util/regional.h $(srcdir)/util/random.h \ - $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/net_help.h \ - $(srcdir)/util/data/dname.h $(srcdir)/util/data/msgencode.h $(srcdir)/iterator/iter_fwd.h \ - $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h $(srcdir)/ldns/str2wire.h + $(srcdir)/util/netevent.h $(srcdir)/dnstap/dnstap_config.h $(srcdir)/services/mesh.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/services/localzone.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/services/outbound_list.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/tube.h $(srcdir)/util/regional.h $(srcdir)/util/random.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/storage/lookup3.h $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_hints.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/ldns/str2wire.h unbound-host.lo unbound-host.o: $(srcdir)/smallapp/unbound-host.c config.h $(srcdir)/libunbound/unbound.h \ $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/wire2str.h asynclook.lo asynclook.o: $(srcdir)/testcode/asynclook.c config.h $(srcdir)/libunbound/unbound.h \ @@ -1144,7 +1163,8 @@ perf.lo perf.o: $(srcdir)/testcode/perf.c config.h $(srcdir)/util/log.h $(srcdir delayer.lo delayer.o: $(srcdir)/testcode/delayer.c config.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h \ $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h unbound-control.lo unbound-control.o: $(srcdir)/smallapp/unbound-control.c config.h \ - $(srcdir)/util/log.h $(srcdir)/util/config_file.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h + $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h unbound-anchor.lo unbound-anchor.o: $(srcdir)/smallapp/unbound-anchor.c config.h $(srcdir)/libunbound/unbound.h \ $(srcdir)/ldns/rrdef.h \ @@ -1155,13 +1175,14 @@ pythonmod_utils.lo pythonmod_utils.o: $(srcdir)/pythonmod/pythonmod_utils.c conf $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h $(srcdir)/services/cache/dns.h \ $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/regional.h \ - $(srcdir)/ldns/sbuffer.h + $(srcdir)/iterator/iter_delegpt.h $(srcdir)/ldns/sbuffer.h win_svc.lo win_svc.o: $(srcdir)/winrc/win_svc.c config.h $(srcdir)/winrc/win_svc.h $(srcdir)/winrc/w_inst.h \ $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ - $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ - $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ - $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ - $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/dnstap/dnstap_config.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/dnstap/dnstap.h $(srcdir)/daemon/remote.h \ $(srcdir)/util/config_file.h $(srcdir)/util/winsock_event.h w_inst.lo w_inst.o: $(srcdir)/winrc/w_inst.c config.h $(srcdir)/winrc/w_inst.h $(srcdir)/winrc/win_svc.h unbound-service-install.lo unbound-service-install.o: $(srcdir)/winrc/unbound-service-install.c config.h \ diff --git a/doc/Changelog b/doc/Changelog index a2ab097b6..72a83a5b2 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,3 +1,7 @@ +2 February 2015: Wouter + - infra-cache-min-rtt patch from Florian Riehm, for expected long + uplink roundtrip times. + 30 January 2015: Wouter - Fix 0x20 capsforid fallback to omit gratuitous NS and additional section changes. diff --git a/doc/example.conf.in b/doc/example.conf.in index c6e47a279..7c10d8334 100644 --- a/doc/example.conf.in +++ b/doc/example.conf.in @@ -138,6 +138,9 @@ server: # the time to live (TTL) value for cached roundtrip times, lameness and # EDNS version information for hosts. In seconds. # infra-host-ttl: 900 + + # minimum wait time for responses, increase if uplink is long. In msec. + # infra-cache-min-rtt: 50 # the number of slabs to use for the Infrastructure cache. # the number of slabs must be a power of 2. diff --git a/doc/unbound.conf.5.in b/doc/unbound.conf.5.in index b096a760f..80d18844f 100644 --- a/doc/unbound.conf.5.in +++ b/doc/unbound.conf.5.in @@ -301,6 +301,11 @@ by threads. Must be set to a power of 2. .B infra\-cache\-numhosts: \fI Number of hosts for which information is cached. Default is 10000. .TP +.B infra\-cache\-min\-rtt: \fI +Lower limit for dynamic retransmit timeout calculation in infrastructure +cache. Default is 50 milliseconds. Increase this value if using forwarders +needing more time to do recursive name resolution. +.TP .B do\-ip4: \fI Enable or disable whether ip4 queries are answered or issued. Default is yes. .TP diff --git a/util/config_file.c b/util/config_file.c index f8f803067..f4eaccf1b 100644 --- a/util/config_file.c +++ b/util/config_file.c @@ -55,6 +55,7 @@ #include "util/regional.h" #include "util/fptr_wlist.h" #include "util/data/dname.h" +#include "util/rtt.h" #include "ldns/wire2str.h" #include "ldns/parseutil.h" #ifdef HAVE_GLOB_H @@ -129,6 +130,7 @@ config_create(void) cfg->prefetch_key = 0; cfg->infra_cache_slabs = 4; cfg->infra_cache_numhosts = 10000; + cfg->infra_cache_min_rtt = 50; cfg->delay_close = 0; if(!(cfg->outgoing_avail_ports = (int*)calloc(65536, sizeof(int)))) goto error_exit; @@ -375,6 +377,10 @@ int config_set_option(struct config_file* cfg, const char* opt, { IS_NUMBER_OR_ZERO; cfg->max_ttl = atoi(val); MAX_TTL=(time_t)cfg->max_ttl;} else if(strcmp(opt, "cache-min-ttl:") == 0) { IS_NUMBER_OR_ZERO; cfg->min_ttl = atoi(val); MIN_TTL=(time_t)cfg->min_ttl;} + else if(strcmp(opt, "infra-cache-min-rtt:") == 0) { + IS_NUMBER_OR_ZERO; cfg->infra_cache_min_rtt = atoi(val); + RTT_MIN_TIMEOUT=cfg->infra_cache_min_rtt; + } else S_NUMBER_OR_ZERO("infra-host-ttl:", host_ttl) else S_POW2("infra-cache-slabs:", infra_cache_slabs) else S_SIZET_NONZERO("infra-cache-numhosts:", infra_cache_numhosts) @@ -623,6 +629,7 @@ config_get_option(struct config_file* cfg, const char* opt, else O_DEC(opt, "cache-min-ttl", min_ttl) else O_DEC(opt, "infra-host-ttl", host_ttl) else O_DEC(opt, "infra-cache-slabs", infra_cache_slabs) + else O_DEC(opt, "infra-cache-min-rtt", infra_cache_min_rtt) else O_MEM(opt, "infra-cache-numhosts", infra_cache_numhosts) else O_UNS(opt, "delay-close", delay_close) else O_YNO(opt, "do-ip4", do_ip4) @@ -1188,6 +1195,7 @@ config_apply(struct config_file* config) { MAX_TTL = (time_t)config->max_ttl; MIN_TTL = (time_t)config->min_ttl; + RTT_MIN_TIMEOUT = config->infra_cache_min_rtt; EDNS_ADVERTISED_SIZE = (uint16_t)config->edns_buffer_size; MINIMAL_RESPONSES = config->minimal_responses; RRSET_ROUNDROBIN = config->rrset_roundrobin; diff --git a/util/config_file.h b/util/config_file.h index 327eadc76..7ffc00a02 100644 --- a/util/config_file.h +++ b/util/config_file.h @@ -119,6 +119,8 @@ struct config_file { size_t infra_cache_slabs; /** max number of hosts in the infra cache */ size_t infra_cache_numhosts; + /** min value for infra cache rtt */ + int infra_cache_min_rtt; /** delay close of udp-timeouted ports, if 0 no delayclose. in msec */ int delay_close; diff --git a/util/configlexer.c b/util/configlexer.c index b3df28154..a288aacc1 100644 --- a/util/configlexer.c +++ b/util/configlexer.c @@ -363,8 +363,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 163 -#define YY_END_OF_BUFFER 164 +#define YY_NUM_RULES 164 +#define YY_END_OF_BUFFER 165 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -372,186 +372,187 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1620] = +static yyconst flex_int16_t yy_accept[1628] = { 0, - 1, 1, 145, 145, 149, 149, 153, 153, 157, 157, - 1, 1, 164, 161, 1, 143, 143, 162, 2, 162, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 145, - 146, 146, 147, 162, 149, 150, 150, 151, 162, 156, - 153, 154, 154, 155, 162, 157, 158, 158, 159, 162, - 160, 144, 2, 148, 162, 160, 161, 0, 1, 2, - 2, 2, 2, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 145, 0, 149, 0, 156, 0, 153, 157, - 0, 160, 0, 2, 2, 160, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 160, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 160, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 65, 161, 161, 161, 161, - 161, 6, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 160, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 160, 161, 161, 161, 161, 29, 161, 161, 161, - 161, 161, 161, 161, 161, 130, 161, 12, 13, 161, - 15, 14, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 123, - 161, 161, 161, 161, 161, 3, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 160, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 152, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 32, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 33, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 80, 152, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 79, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 63, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 20, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 30, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 31, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 22, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 26, 161, 27, 161, - 161, 161, 66, 161, 67, 161, 64, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 5, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 82, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 23, - 161, 161, 161, 161, 107, 106, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 34, 161, 161, 161, 161, - 161, 161, 161, 161, 69, 68, 161, 161, 161, 161, - 161, 161, 161, 103, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 50, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 54, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 105, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 4, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 100, 161, 161, - 161, 161, 161, 161, 161, 116, 161, 101, 161, 128, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 21, 161, 161, 161, 161, 71, 161, 72, 70, 161, - 161, 161, 161, 161, 161, 78, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 102, 161, 161, 161, 161, - 127, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 62, 161, 161, 161, 161, 161, 161, 161, - - 161, 28, 161, 161, 17, 161, 161, 161, 16, 161, - 87, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 41, 42, 161, 161, 161, 161, - 161, 161, 161, 131, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 73, 161, 161, - 161, 161, 161, 77, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 81, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 122, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 91, 161, 95, - - 161, 161, 161, 161, 76, 161, 161, 114, 161, 161, - 161, 161, 129, 161, 161, 161, 161, 161, 161, 161, - 136, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 94, 161, 161, 161, 161, 43, 44, 161, 49, - 96, 161, 108, 104, 161, 161, 37, 161, 98, 161, - 161, 161, 161, 161, 7, 161, 61, 113, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 83, 135, 161, 161, 161, 161, - 161, 161, 161, 161, 124, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 97, 161, 36, - 38, 161, 161, 161, 161, 161, 60, 161, 161, 161, - 161, 118, 18, 19, 161, 161, 161, 161, 161, 161, - 161, 58, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 120, 117, 161, 161, 161, 161, 161, 161, 161, - 161, 35, 161, 161, 161, 161, 161, 161, 11, 161, - 161, 161, 161, 161, 161, 161, 10, 161, 161, 39, - 161, 126, 119, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 90, 89, 161, 121, 115, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 45, 161, 125, 161, 161, - 161, 161, 40, 161, 161, 161, 84, 86, 109, 161, - 161, 161, 88, 161, 161, 161, 161, 161, 161, 161, - 161, 132, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 24, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 134, 161, 161, 112, 161, 161, 161, 161, 161, 161, - 161, 25, 161, 9, 161, 161, 110, 51, 161, 161, - 161, 93, 161, 161, 161, 161, 161, 161, 133, 74, - 161, 161, 161, 53, 57, 52, 161, 46, 161, 8, - - 161, 161, 92, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 56, 161, 47, 161, 111, 161, 161, 85, - 161, 161, 161, 161, 161, 161, 75, 55, 48, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 59, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 99, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 139, 161, 161, 161, 161, 161, 161, - - 161, 161, 161, 161, 161, 161, 161, 137, 161, 140, - 141, 161, 161, 161, 161, 161, 138, 142, 0 + 1, 1, 146, 146, 150, 150, 154, 154, 158, 158, + 1, 1, 165, 162, 1, 144, 144, 163, 2, 163, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 146, + 147, 147, 148, 163, 150, 151, 151, 152, 163, 157, + 154, 155, 155, 156, 163, 158, 159, 159, 160, 163, + 161, 145, 2, 149, 163, 161, 162, 0, 1, 2, + 2, 2, 2, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 146, 0, 150, 0, 157, 0, 154, 158, + 0, 161, 0, 2, 2, 161, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 161, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 161, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 66, 162, 162, 162, 162, + 162, 6, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 161, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 161, 162, 162, 162, 162, 29, 162, 162, 162, + 162, 162, 162, 162, 162, 131, 162, 12, 13, 162, + 15, 14, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 124, + 162, 162, 162, 162, 162, 3, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 161, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 153, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 32, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 33, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 81, 153, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 80, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 64, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 20, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 30, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 31, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 22, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 26, 162, 27, 162, + 162, 162, 67, 162, 68, 162, 65, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 5, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 83, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 23, + 162, 162, 162, 162, 108, 107, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 34, 162, 162, 162, 162, + 162, 162, 162, 162, 70, 69, 162, 162, 162, 162, + 162, 162, 162, 104, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 51, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 55, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 106, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 4, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 101, 162, 162, + 162, 162, 162, 162, 162, 117, 162, 102, 162, 129, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 21, 162, 162, 162, 162, 72, 162, 73, 71, 162, + 162, 162, 162, 162, 162, 79, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 103, 162, 162, 162, + 162, 128, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 63, 162, 162, 162, 162, 162, 162, + + 162, 162, 28, 162, 162, 17, 162, 162, 162, 16, + 162, 88, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 41, 42, 162, 162, 162, + 162, 162, 162, 162, 132, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 74, 162, + 162, 162, 162, 162, 78, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 82, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 123, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 92, + + 162, 96, 162, 162, 162, 162, 77, 162, 162, 115, + 162, 162, 162, 162, 130, 162, 162, 162, 162, 162, + 162, 162, 137, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 95, 162, 162, 162, 162, 162, 43, + 44, 162, 50, 97, 162, 109, 105, 162, 162, 37, + 162, 99, 162, 162, 162, 162, 162, 7, 162, 62, + 114, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 84, 136, 162, + 162, 162, 162, 162, 162, 162, 162, 125, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 98, 162, 36, 38, 162, 162, 162, 162, 162, + 61, 162, 162, 162, 162, 119, 18, 19, 162, 162, + 162, 162, 162, 162, 162, 59, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 121, 118, 162, 162, 162, + 162, 162, 162, 162, 162, 35, 162, 162, 162, 162, + 162, 162, 11, 162, 162, 162, 162, 162, 162, 162, + 162, 10, 162, 162, 39, 162, 127, 120, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 91, + 90, 162, 122, 116, 162, 162, 162, 162, 162, 162, + + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 45, 162, 126, 162, 162, 162, 162, 40, 162, + 162, 162, 85, 87, 110, 162, 162, 162, 89, 162, + 162, 162, 162, 162, 162, 162, 162, 133, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 24, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 135, 162, 162, + 113, 162, 162, 162, 162, 162, 162, 48, 162, 25, + 162, 9, 162, 162, 111, 52, 162, 162, 162, 94, + 162, 162, 162, 162, 162, 162, 134, 75, 162, 162, + + 162, 54, 58, 53, 162, 46, 162, 8, 162, 162, + 93, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 57, 162, 47, 162, 112, 162, 162, 86, 162, 162, + 162, 162, 162, 162, 76, 56, 49, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 60, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 100, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + + 162, 140, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 138, 162, 141, 142, 162, + 162, 162, 162, 162, 139, 143, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -594,15 +595,15 @@ static yyconst flex_int32_t yy_meta[40] = 1, 1, 1, 1, 1, 1, 1, 1, 1 } ; -static yyconst flex_int16_t yy_base[1634] = +static yyconst flex_int16_t yy_base[1642] = { 0, 0, 0, 37, 40, 44, 51, 63, 75, 56, 68, - 87, 108, 2238, 2151, 50, 3220, 3220, 3220, 129, 94, + 87, 108, 2422, 2151, 50, 3237, 3237, 3237, 129, 94, 70, 104, 130, 90, 92, 115, 127, 95, 84, 111, 137, 148, 50, 150, 155, 157, 163, 171, 178, 1935, - 3220, 3220, 3220, 70, 1925, 3220, 3220, 3220, 42, 1776, - 1709, 3220, 3220, 3220, 195, 1559, 3220, 3220, 3220, 141, - 1156, 3220, 202, 3220, 206, 122, 1017, 212, 120, 0, + 3237, 3237, 3237, 70, 1925, 3237, 3237, 3237, 42, 1776, + 1709, 3237, 3237, 3237, 195, 1559, 3237, 3237, 3237, 141, + 1156, 3237, 202, 3237, 206, 122, 1017, 212, 120, 0, 223, 0, 0, 103, 147, 154, 158, 192, 199, 207, 208, 205, 209, 221, 218, 220, 224, 225, 229, 230, 231, 238, 251, 236, 247, 250, 237, 248, 256, 259, @@ -629,8 +630,8 @@ static yyconst flex_int16_t yy_base[1634] = 635, 637, 638, 640, 641, 644, 645, 656, 659, 648, 665, 662, 667, 664, 670, 593, 677, 673, 675, 674, - 676, 646, 682, 678, 688, 3220, 690, 679, 685, 692, - 695, 3220, 696, 697, 698, 703, 702, 709, 705, 706, + 676, 646, 682, 678, 688, 3237, 690, 679, 685, 692, + 695, 3237, 696, 697, 698, 703, 702, 709, 705, 706, 711, 714, 715, 719, 713, 720, 740, 722, 721, 731, 735, 725, 733, 727, 743, 747, 749, 750, 751, 753, 754, 755, 757, 758, 763, 774, 760, 768, 771, 778, @@ -643,13 +644,13 @@ static yyconst flex_int16_t yy_base[1634] = 892, 893, 888, 894, 897, 898, 899, 900, 901, 902, 906, 908, 909, 917, 903, 913, 919, 925, 927, 928, 910, 930, 931, 934, 933, 937, 941, 935, 945, 947, - 948, 949, 955, 957, 950, 959, 3220, 969, 963, 965, - 966, 970, 972, 951, 991, 3220, 973, 3220, 3220, 975, - 3220, 3220, 974, 979, 982, 994, 1014, 993, 981, 980, + 948, 949, 955, 957, 950, 959, 3237, 969, 963, 965, + 966, 970, 972, 951, 991, 3237, 973, 3237, 3237, 975, + 3237, 3237, 974, 979, 982, 994, 1014, 993, 981, 980, 1001, 1007, 995, 1008, 997, 1019, 1022, 1023, 1011, 1015, 1027, 1029, 1024, 1036, 1037, 1041, 1043, 1049, 1045, 1046, - 1047, 1050, 1051, 1056, 1053, 1063, 1057, 1064, 1066, 3220, - 1067, 1068, 1071, 1073, 1075, 3220, 1074, 1076, 1077, 1079, + 1047, 1050, 1051, 1056, 1053, 1063, 1057, 1064, 1066, 3237, + 1067, 1068, 1071, 1073, 1075, 3237, 1074, 1076, 1077, 1079, 1080, 1083, 1084, 1087, 1089, 1090, 1092, 1094, 1100, 1096, 1097, 1110, 1117, 1114, 1104, 1113, 1115, 1119, 1121, 1129, @@ -657,312 +658,314 @@ static yyconst flex_int16_t yy_base[1634] = 1145, 1146, 1170, 1147, 1148, 1149, 1153, 1154, 1157, 1158, 1162, 1165, 1177, 1178, 1176, 1164, 1184, 1187, 1194, 1195, 1197, 1199, 1155, 1204, 1206, 1200, 1209, 1188, 1215, 1212, - 3220, 1222, 1224, 1210, 1218, 1220, 1219, 1226, 1228, 1232, - 1230, 1234, 1233, 1241, 3220, 1239, 1243, 1240, 1244, 1246, - 1252, 1245, 1259, 1267, 3220, 1269, 1270, 1253, 1263, 1265, + 3237, 1222, 1224, 1210, 1218, 1220, 1219, 1226, 1228, 1232, + 1230, 1234, 1233, 1241, 3237, 1239, 1243, 1240, 1244, 1246, + 1252, 1245, 1259, 1267, 3237, 1269, 1270, 1253, 1263, 1265, 1272, 1266, 1276, 1277, 1273, 1280, 1283, 1291, 1284, 1286, 1292, 1288, 1294, 1297, 1298, 1300, 1302, 1301, 1309, 1299, 1303, 1321, 1323, 1314, 1325, 1308, 1320, 1326, 1332, 1322, - 1330, 1331, 1333, 3220, 239, 1335, 1336, 1337, 1346, 1347, + 1330, 1331, 1333, 3237, 239, 1335, 1336, 1337, 1346, 1347, 1343, 1345, 1352, 1355, 1353, 1344, 1354, 1356, 1362, 1364, 1365, 1367, 1372, 1374, 1370, 1376, 1378, 1380, 1383, 1384, 1385, 1386, 1388, 1393, 1394, 1395, 1396, 1400, 1399, 1401, - 1402, 1408, 1406, 1405, 1415, 3220, 1428, 1413, 1409, 1416, + 1402, 1408, 1406, 1405, 1415, 3237, 1428, 1413, 1409, 1416, 1426, 1434, 1419, 1430, 1432, 1440, 1444, 1437, 1446, 1447, 1449, 1450, 1439, 1452, 1459, 1461, 1457, 1460, 1463, 1465, - 3220, 1467, 1468, 1466, 1473, 1469, 1474, 1475, 1478, 1480, + 3237, 1467, 1468, 1466, 1473, 1469, 1474, 1475, 1478, 1480, - 1486, 1491, 1493, 3220, 1494, 1490, 1498, 1500, 1501, 1503, + 1486, 1491, 1493, 3237, 1494, 1490, 1498, 1500, 1501, 1503, 1504, 1508, 1510, 1511, 1512, 1513, 1514, 1519, 1522, 1524, - 3220, 1532, 1534, 1533, 1540, 1536, 1523, 1539, 1526, 1541, + 3237, 1532, 1534, 1533, 1540, 1536, 1523, 1539, 1526, 1541, 1543, 1549, 1547, 1548, 1546, 1551, 1553, 1554, 1556, 1555, - 1557, 1558, 3220, 1570, 1562, 1575, 1576, 1572, 1582, 1581, + 1557, 1558, 3237, 1570, 1562, 1575, 1576, 1572, 1582, 1581, 1584, 1587, 1588, 1589, 1591, 1590, 1592, 1593, 1598, 1594, 1601, 1602, 1599, 1600, 1603, 1604, 1611, 1619, 1620, 1621, - 1622, 1625, 1631, 1637, 1623, 3220, 1634, 1636, 1638, 1639, + 1622, 1625, 1631, 1637, 1623, 3237, 1634, 1636, 1638, 1639, 1645, 1647, 1642, 1648, 1649, 1650, 1651, 1659, 1653, 1655, 1660, 1662, 1656, 1663, 1665, 1676, 1666, 1664, 1673, 1678, - 1682, 1689, 1685, 1691, 1683, 1697, 3220, 1693, 3220, 1694, - 1700, 1709, 3220, 1706, 3220, 1708, 3220, 1710, 1714, 1712, + 1682, 1689, 1685, 1691, 1683, 1697, 3237, 1693, 3237, 1694, + 1700, 1709, 3237, 1706, 3237, 1708, 3237, 1710, 1714, 1712, 1696, 1716, 1717, 1718, 1720, 1723, 1724, 1726, 1728, 1731, - 1732, 1729, 3220, 1736, 1738, 1740, 1737, 1742, 1744, 1745, - 1750, 1758, 1746, 1761, 1749, 1760, 1765, 3220, 1767, 1768, + 1732, 1729, 3237, 1736, 1738, 1740, 1737, 1742, 1744, 1745, + 1750, 1758, 1746, 1761, 1749, 1760, 1765, 3237, 1767, 1768, 1770, 1772, 1775, 1779, 1780, 1777, 1783, 1773, 1784, 1794, 1795, 1790, 1797, 1799, 1800, 1801, 1802, 1804, 1806, 1809, - 1810, 1812, 1814, 1813, 1818, 1820, 1817, 1821, 1822, 3220, - 1823, 1826, 1835, 1829, 3220, 3220, 1840, 1846, 1848, 1834, + 1810, 1812, 1814, 1813, 1818, 1820, 1817, 1821, 1822, 3237, + 1823, 1826, 1835, 1829, 3237, 3237, 1840, 1846, 1848, 1834, 1842, 1836, 1852, 1854, 1862, 1859, 1856, 1860, 1865, 1866, - 1867, 1868, 1869, 1871, 1872, 3220, 1879, 1875, 1882, 1878, - 1881, 1894, 1885, 1888, 3220, 3220, 1895, 1896, 1899, 1900, - 1907, 1904, 1905, 3220, 1906, 1908, 1910, 1911, 1913, 1921, + 1867, 1868, 1869, 1871, 1872, 3237, 1879, 1875, 1882, 1878, + 1881, 1894, 1885, 1888, 3237, 3237, 1895, 1896, 1899, 1900, + 1907, 1904, 1905, 3237, 1906, 1908, 1910, 1911, 1913, 1921, 1914, 1924, 1928, 1922, 1929, 1931, 1938, 1932, 1934, 1940, - 1948, 1942, 1950, 3220, 1951, 1954, 1955, 1956, 1957, 1958, + 1948, 1942, 1950, 3237, 1951, 1954, 1955, 1956, 1957, 1958, 1959, 1963, 1962, 1965, 1964, 1973, 1980, 1969, 1976, 1977, - 1982, 1978, 1987, 1989, 1996, 1999, 3220, 2005, 1983, 2008, + 1982, 1978, 1987, 1989, 1996, 1999, 3237, 2005, 1983, 2008, 1992, 1994, 2006, 2009, 2010, 2011, 2012, 2013, 2014, 2016, - 2018, 2019, 2021, 3220, 2025, 2027, 2023, 2030, 2036, 2028, - 2039, 2042, 2043, 3220, 2046, 2052, 2049, 2048, 2057, 2053, - - 2061, 2060, 2050, 2062, 2063, 2066, 2064, 2075, 2071, 2077, - 2067, 2079, 2089, 2086, 2095, 2096, 2083, 2092, 2102, 2098, - 2099, 2100, 2101, 2111, 2105, 2113, 2107, 3220, 2114, 2116, - 2121, 2118, 2123, 2125, 2129, 3220, 2130, 3220, 2122, 3220, - 2132, 2137, 2133, 2139, 2140, 2141, 2142, 2145, 2152, 2143, - 3220, 2154, 2149, 2156, 2159, 3220, 2162, 3220, 3220, 2163, - 2169, 2170, 2171, 2173, 2179, 3220, 2174, 2176, 2182, 2180, - 2185, 2186, 2188, 2184, 2189, 3220, 2190, 2191, 2192, 2194, - 3220, 2202, 2205, 2206, 2207, 2211, 2214, 2215, 2208, 2217, - 2223, 2222, 3220, 2221, 2224, 2229, 2230, 2234, 2231, 2235, - - 2236, 3220, 2245, 2247, 3220, 2241, 2239, 2249, 3220, 2251, - 3220, 2255, 2253, 2256, 2258, 2263, 2260, 2271, 2264, 2272, - 2273, 2266, 2275, 2277, 3220, 3220, 2280, 2287, 2290, 2282, - 2284, 2288, 2296, 3220, 2292, 2298, 2297, 2299, 2300, 2301, - 2306, 2308, 2309, 2310, 2311, 2304, 2312, 3220, 2315, 2318, - 2321, 2323, 2324, 3220, 2327, 2329, 2328, 2333, 2343, 2348, - 2350, 2338, 2353, 2355, 2340, 2357, 2361, 2358, 3220, 2362, - 2364, 2365, 2369, 2370, 2366, 2371, 2375, 2379, 2373, 2381, - 3220, 2383, 2385, 2386, 2389, 2390, 2394, 2393, 2395, 2396, - 2400, 2397, 2401, 2404, 2406, 2414, 2403, 3220, 2415, 3220, - - 2416, 2421, 2424, 2427, 3220, 2423, 2429, 3220, 2430, 2426, - 2432, 2440, 3220, 2443, 2434, 2444, 2437, 2446, 2447, 2450, - 3220, 2453, 2455, 2462, 2454, 2456, 2463, 2464, 2465, 2473, - 2469, 3220, 2471, 2472, 2474, 2334, 3220, 3220, 2478, 3220, - 3220, 2481, 3220, 3220, 2483, 2486, 3220, 2490, 3220, 2496, - 2492, 2494, 2495, 2497, 3220, 2499, 3220, 3220, 2500, 2501, - 2504, 2506, 2508, 2513, 2515, 2509, 2516, 2519, 2520, 2523, - 2522, 2524, 2526, 2528, 2529, 2530, 2533, 2536, 2538, 2539, - 2540, 2542, 2549, 2554, 3220, 3220, 2541, 2551, 2543, 2556, - 2558, 2559, 2562, 2563, 3220, 2571, 2566, 2568, 2572, 2573, - - 2577, 2578, 2582, 2589, 2585, 2586, 2574, 3220, 2587, 3220, - 3220, 2588, 2592, 2599, 2596, 2601, 3220, 2603, 2604, 2610, - 2613, 3220, 3220, 3220, 2614, 2607, 2616, 2617, 2621, 2618, - 2620, 3220, 2624, 2627, 2630, 2631, 2634, 2641, 2643, 2645, - 2648, 3220, 3220, 2654, 2651, 2652, 2650, 2653, 2656, 2658, - 2660, 3220, 2662, 2661, 2666, 2667, 2669, 2671, 3220, 2673, - 2677, 2679, 2681, 2683, 2685, 2684, 3220, 2686, 2687, 3220, - 2698, 3220, 3220, 2688, 2701, 2691, 2704, 2706, 2710, 2699, - 2707, 2716, 2713, 2714, 3220, 3220, 2636, 3220, 3220, 2715, - 2719, 2720, 2722, 2723, 2726, 2727, 2728, 2729, 2730, 2734, - - 2735, 2739, 2741, 2743, 2744, 3220, 2751, 3220, 2745, 2756, - 2749, 2757, 3220, 2760, 2758, 2747, 3220, 3220, 3220, 2768, - 2761, 2765, 3220, 2771, 2775, 2777, 2778, 2779, 2785, 2781, - 2787, 3220, 2782, 2788, 2790, 2791, 2792, 2793, 2794, 2799, - 2795, 2796, 2810, 2811, 3220, 2814, 2805, 2807, 2818, 2820, - 2822, 2823, 2824, 2827, 2828, 2831, 2830, 2837, 2833, 2839, - 3220, 2843, 2834, 3220, 2845, 2847, 2855, 2857, 2861, 2858, - 2865, 3220, 2866, 3220, 2869, 2870, 3220, 3220, 2871, 2873, - 2876, 3220, 2877, 2862, 2874, 2878, 2883, 2884, 3220, 3220, - 2885, 2887, 2888, 3220, 3220, 3220, 2894, 3220, 2897, 3220, - - 2899, 2891, 3220, 2900, 2903, 2907, 2908, 2909, 2910, 2911, - 2912, 2914, 3220, 2920, 3220, 2922, 3220, 2917, 2924, 3220, - 2933, 2926, 2934, 2927, 2935, 2936, 3220, 3220, 3220, 2937, - 2938, 2942, 2943, 2945, 2944, 2947, 2949, 2951, 2948, 2954, - 2956, 2965, 2966, 2973, 2969, 3220, 2967, 2970, 2976, 2979, - 2977, 2975, 2978, 2980, 2984, 2985, 2986, 2987, 2995, 2996, - 2992, 3004, 3002, 3008, 3009, 2993, 3015, 3017, 3018, 3019, - 3020, 3026, 3022, 3023, 3220, 3024, 3027, 3028, 3030, 3031, - 3035, 3033, 3044, 3048, 3037, 3050, 3034, 3055, 3051, 3056, - 3059, 3060, 3061, 3220, 3062, 3064, 3066, 3068, 3070, 3072, - - 3073, 3074, 3077, 3079, 3082, 3084, 3088, 3220, 3089, 3220, - 3220, 3093, 3090, 3096, 3100, 3102, 3220, 3220, 3220, 3128, - 3135, 3142, 3149, 3156, 94, 3163, 3170, 3177, 3184, 3191, - 3198, 3205, 3212 + 2018, 2019, 2021, 3237, 2025, 2027, 2028, 2030, 2036, 2038, + 2039, 2042, 2046, 3237, 2047, 2053, 2049, 2050, 2055, 2051, + + 2058, 2059, 2060, 2061, 2063, 2065, 2072, 2074, 2066, 2084, + 2070, 2076, 2092, 2086, 2094, 2100, 2088, 2096, 2102, 2098, + 2099, 2101, 2104, 2111, 2105, 2112, 2109, 3237, 2115, 2117, + 2120, 2122, 2125, 2126, 2124, 3237, 2131, 3237, 2123, 3237, + 2134, 2138, 2139, 2140, 2142, 2143, 2141, 2147, 2153, 2144, + 3237, 2154, 2150, 2156, 2161, 3237, 2164, 3237, 3237, 2157, + 2172, 2169, 2173, 2175, 2179, 3237, 2176, 2180, 2181, 2184, + 2185, 2187, 2189, 2190, 2188, 2191, 3237, 2192, 2194, 2195, + 2198, 3237, 2204, 2209, 2205, 2210, 2212, 2216, 2217, 2219, + 2220, 2228, 2224, 3237, 2225, 2227, 2233, 2226, 2230, 2234, + + 2243, 2235, 3237, 2245, 2246, 3237, 2248, 2249, 2254, 3237, + 2253, 3237, 2256, 2257, 2255, 2258, 2264, 2265, 2276, 2260, + 2273, 2266, 2268, 2283, 2278, 3237, 3237, 2284, 2288, 2289, + 2285, 2291, 2294, 2296, 3237, 2292, 2298, 2300, 2301, 2302, + 2304, 2305, 2311, 2308, 2313, 2314, 2306, 2315, 3237, 2318, + 2320, 2324, 2325, 2326, 3237, 2330, 2333, 2327, 2335, 2331, + 2350, 2353, 2355, 2343, 2358, 2360, 2346, 2362, 2364, 2348, + 3237, 2366, 2369, 2370, 2373, 2374, 2375, 2338, 2377, 2380, + 2376, 2383, 3237, 2385, 2386, 2387, 2390, 2391, 2396, 2394, + 2397, 2400, 2402, 2398, 2405, 2406, 2404, 2416, 2420, 3237, + + 2408, 3237, 2417, 2422, 2430, 2431, 3237, 2427, 2429, 3237, + 2433, 2434, 2435, 2438, 3237, 2444, 2445, 2446, 2448, 2449, + 2450, 2451, 3237, 2453, 2458, 2465, 2462, 2454, 2466, 2456, + 2468, 2477, 2475, 3237, 2471, 2478, 2484, 2480, 2489, 3237, + 3237, 2485, 3237, 3237, 2493, 3237, 3237, 2490, 2497, 3237, + 2499, 3237, 2505, 2501, 2494, 2482, 2503, 3237, 2507, 3237, + 3237, 2509, 2511, 2512, 2515, 2517, 2519, 2522, 2523, 2524, + 2525, 2527, 2528, 2529, 2530, 2532, 2536, 2533, 2538, 2541, + 2543, 2546, 2544, 2547, 2548, 2556, 2564, 3237, 3237, 2549, + 2557, 2551, 2561, 2565, 2566, 2570, 2571, 3237, 2577, 2578, + + 2568, 2579, 2580, 2584, 2582, 2590, 2596, 2585, 2592, 2593, + 2594, 3237, 2599, 3237, 3237, 2595, 2602, 2609, 2604, 2606, + 3237, 2611, 2613, 2617, 2621, 3237, 3237, 3237, 2622, 2625, + 2626, 2628, 2629, 2627, 2630, 3237, 2636, 2637, 2639, 2640, + 2649, 2653, 2650, 2657, 2659, 3237, 3237, 2665, 2662, 2663, + 2661, 2654, 2664, 2671, 2631, 3237, 2674, 2667, 2673, 2675, + 2678, 2681, 3237, 2683, 2685, 2687, 2689, 2686, 2692, 2693, + 2694, 3237, 2698, 2696, 3237, 2704, 3237, 3237, 2697, 2710, + 2712, 2714, 2719, 2721, 2708, 2716, 2727, 2724, 2725, 3237, + 3237, 2728, 3237, 3237, 2731, 2732, 2733, 2735, 2736, 2739, + + 2740, 2744, 2741, 2742, 2745, 2753, 2746, 2747, 2754, 2756, + 2757, 3237, 2762, 3237, 2764, 2768, 2770, 2769, 3237, 2771, + 2772, 2775, 3237, 3237, 3237, 2781, 2787, 2783, 3237, 2785, + 2789, 2791, 2794, 2779, 2801, 2793, 2803, 3237, 2795, 2804, + 2806, 2807, 2808, 2809, 2813, 2810, 2811, 2823, 2817, 2826, + 2827, 3237, 2830, 2820, 2831, 2834, 2839, 2835, 2843, 2841, + 2845, 2846, 2842, 2848, 2856, 2852, 2850, 3237, 2860, 2857, + 3237, 2863, 2866, 2865, 2873, 2875, 2878, 3237, 2880, 3237, + 2881, 3237, 2885, 2886, 3237, 3237, 2887, 2889, 2892, 3237, + 2893, 2890, 2894, 2896, 2899, 2900, 3237, 3237, 2901, 2903, + + 2907, 3237, 3237, 3237, 2916, 3237, 2918, 3237, 2924, 2904, + 3237, 2909, 2926, 2906, 2917, 2912, 2929, 2930, 2928, 2937, + 3237, 2939, 3237, 2941, 3237, 2942, 2943, 3237, 2950, 2946, + 2948, 2949, 2951, 2955, 3237, 3237, 3237, 2952, 2957, 2959, + 2961, 2958, 2962, 2963, 2964, 2966, 2973, 2970, 2981, 2967, + 2974, 2990, 2983, 3237, 2984, 2987, 2996, 2998, 2994, 3000, + 2995, 3001, 3002, 3003, 3004, 3005, 3007, 3018, 3009, 3010, + 3020, 3022, 3026, 3019, 3034, 3033, 3030, 3035, 3036, 3044, + 3040, 3043, 3237, 3041, 3042, 3045, 3047, 3048, 3052, 3050, + 3062, 3065, 3053, 3067, 3051, 3072, 3068, 3073, 3076, 3077, + + 3078, 3237, 3079, 3081, 3083, 3085, 3087, 3089, 3090, 3091, + 3094, 3096, 3099, 3101, 3105, 3237, 3106, 3237, 3237, 3110, + 3107, 3113, 3117, 3119, 3237, 3237, 3237, 3145, 3152, 3159, + 3166, 3173, 94, 3180, 3187, 3194, 3201, 3208, 3215, 3222, + 3229 } ; -static yyconst flex_int16_t yy_def[1634] = +static yyconst flex_int16_t yy_def[1642] = { 0, - 1619, 1, 1620, 1620, 1621, 1621, 1622, 1622, 1623, 1623, - 1624, 1624, 1619, 1625, 1619, 1619, 1619, 1619, 1626, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1627, - 1619, 1619, 1619, 1627, 1628, 1619, 1619, 1619, 1628, 1629, - 1619, 1619, 1619, 1619, 1629, 1630, 1619, 1619, 1619, 1630, - 1631, 1619, 1632, 1619, 1631, 1631, 1625, 1625, 1619, 1633, - 1626, 1633, 1626, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1627, 1627, 1628, 1628, 1629, 1629, 1619, 1630, - 1630, 1631, 1631, 1632, 1632, 1631, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1631, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1631, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1631, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1631, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1619, 1625, - 1619, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1631, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1631, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1625, - 1625, 1625, 1619, 1625, 1619, 1625, 1619, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, - 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1625, 1619, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1619, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1619, 1625, 1625, 1619, 1625, 1625, 1625, 1619, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, - - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1619, 1625, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1619, - 1619, 1625, 1619, 1619, 1625, 1625, 1619, 1625, 1619, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1619, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, - 1619, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, - 1625, 1619, 1619, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1619, - 1625, 1619, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1619, 1625, 1619, 1619, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, 1625, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1619, 1619, 1619, 1625, - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1619, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1619, 1625, 1619, 1625, 1625, 1619, 1619, 1625, 1625, - 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1619, - 1625, 1625, 1625, 1619, 1619, 1619, 1625, 1619, 1625, 1619, - - 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1619, 1625, 1619, 1625, 1619, 1625, 1625, 1619, - 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1619, 1619, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, - 1625, 1625, 1625, 1619, 1625, 1625, 1625, 1625, 1625, 1625, - - 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1619, 1625, 1619, - 1619, 1625, 1625, 1625, 1625, 1625, 1619, 1619, 0, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619 + 1627, 1, 1628, 1628, 1629, 1629, 1630, 1630, 1631, 1631, + 1632, 1632, 1627, 1633, 1627, 1627, 1627, 1627, 1634, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1635, + 1627, 1627, 1627, 1635, 1636, 1627, 1627, 1627, 1636, 1637, + 1627, 1627, 1627, 1627, 1637, 1638, 1627, 1627, 1627, 1638, + 1639, 1627, 1640, 1627, 1639, 1639, 1633, 1633, 1627, 1641, + 1634, 1641, 1634, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1635, 1635, 1636, 1636, 1637, 1637, 1627, 1638, + 1638, 1639, 1639, 1640, 1640, 1639, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1639, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1639, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1639, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1639, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, 1627, 1633, + 1627, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1639, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1639, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, 1633, + 1633, 1633, 1627, 1633, 1627, 1633, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, + 1633, 1633, 1633, 1633, 1627, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1627, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, 1633, 1627, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1627, 1633, 1627, 1627, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1627, 1633, 1633, 1627, 1633, 1633, 1633, 1627, + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, + 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, + + 1633, 1627, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1627, + 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1627, + 1627, 1633, 1627, 1627, 1633, 1627, 1627, 1633, 1633, 1627, + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1627, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1627, 1633, 1627, 1627, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1627, 1627, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1627, 1633, 1633, 1627, 1633, 1627, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, + 1627, 1633, 1627, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1627, 1633, 1627, 1633, 1633, 1633, 1633, 1627, 1633, + 1633, 1633, 1627, 1627, 1627, 1633, 1633, 1633, 1627, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, + 1633, 1627, 1633, 1633, 1627, 1627, 1633, 1633, 1633, 1627, + 1633, 1633, 1633, 1633, 1633, 1633, 1627, 1627, 1633, 1633, + + 1633, 1627, 1627, 1627, 1633, 1627, 1633, 1627, 1633, 1633, + 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1627, 1633, 1627, 1633, 1627, 1633, 1633, 1627, 1633, 1633, + 1633, 1633, 1633, 1633, 1627, 1627, 1627, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + + 1633, 1627, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 1633, 1633, 1627, 1633, 1627, 1627, 1633, + 1633, 1633, 1633, 1633, 1627, 1627, 0, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627 } ; -static yyconst flex_int16_t yy_nxt[3260] = +static yyconst flex_int16_t yy_nxt[3277] = { 0, 14, 15, 16, 17, 18, 19, 18, 14, 14, 14, 14, 18, 20, 21, 14, 22, 23, 24, 25, 14, @@ -1186,145 +1189,147 @@ static yyconst flex_int16_t yy_nxt[3260] = 1059, 68, 1053, 1060, 68, 1066, 68, 1054, 68, 1055, 1057, 68, 1062, 1063, 1061, 1064, 1068, 68, 68, 1067, - 68, 68, 68, 68, 68, 68, 68, 1076, 68, 1065, - 68, 68, 1078, 68, 1069, 68, 1070, 68, 1081, 68, - 68, 1071, 68, 1072, 1073, 1074, 1080, 1075, 68, 1083, - 1082, 68, 1086, 1079, 68, 68, 1077, 1084, 68, 1090, - 68, 68, 68, 1089, 68, 68, 1085, 1092, 1093, 68, - 1094, 1088, 68, 68, 68, 68, 68, 1097, 68, 68, - 1087, 1091, 1095, 68, 1100, 1101, 1102, 68, 1105, 68, - 1099, 68, 1096, 1098, 1103, 68, 1108, 1109, 68, 1104, - - 1106, 68, 1110, 1112, 68, 1107, 1111, 68, 68, 1115, - 68, 68, 68, 68, 68, 1117, 1114, 68, 1120, 68, - 1122, 1113, 1116, 68, 1118, 68, 68, 1125, 68, 1124, - 68, 1123, 1126, 68, 68, 68, 1127, 68, 1119, 1121, - 1128, 68, 68, 1129, 68, 68, 1132, 1131, 1134, 68, - 1130, 68, 68, 68, 68, 68, 1133, 68, 1139, 1141, - 1136, 68, 1140, 68, 68, 1135, 68, 1143, 68, 1142, - 1137, 68, 1138, 1148, 68, 68, 1150, 1146, 1144, 1145, - 1147, 68, 68, 68, 1152, 68, 68, 1153, 68, 1149, - 1154, 68, 68, 1155, 68, 1157, 68, 68, 68, 1151, - - 68, 68, 68, 68, 68, 1165, 68, 1164, 1156, 1159, - 1160, 1162, 1161, 1158, 68, 1167, 1169, 68, 68, 68, - 68, 1163, 1166, 68, 1171, 1172, 68, 68, 1168, 68, - 1177, 1173, 1174, 68, 68, 68, 68, 1619, 1175, 1178, - 1181, 68, 68, 68, 1170, 1185, 68, 68, 68, 1176, - 1180, 68, 1179, 68, 1182, 1183, 1186, 68, 1184, 68, - 1187, 68, 1188, 68, 1189, 68, 1190, 68, 68, 1193, - 68, 1191, 68, 1194, 1198, 68, 68, 1192, 68, 1197, - 1195, 1199, 1200, 68, 68, 68, 1205, 68, 1202, 68, - 1203, 1204, 68, 1196, 68, 1201, 68, 1206, 1208, 68, - - 68, 1207, 68, 1209, 68, 1212, 1210, 1213, 68, 68, - 68, 68, 68, 68, 1211, 1215, 68, 1218, 68, 1221, - 68, 68, 68, 68, 68, 1222, 1217, 68, 1224, 1214, - 68, 1219, 1216, 68, 1220, 68, 68, 1223, 1232, 68, - 68, 68, 1225, 1226, 1233, 68, 68, 1230, 1306, 1228, - 68, 1227, 68, 1234, 1229, 68, 1236, 1231, 1235, 1237, - 68, 1238, 68, 1239, 1240, 68, 1241, 68, 1243, 68, - 68, 1242, 1244, 68, 68, 1247, 68, 68, 68, 1246, - 1249, 68, 68, 68, 1251, 68, 1252, 68, 1253, 1245, - 1255, 68, 1257, 68, 1258, 68, 1248, 68, 68, 1260, - - 1250, 68, 68, 1254, 1256, 68, 68, 68, 68, 68, - 1261, 1263, 68, 68, 1262, 68, 68, 1267, 68, 1273, - 1265, 1272, 1269, 1259, 1268, 1270, 68, 68, 68, 1266, - 1264, 1277, 1271, 68, 1276, 68, 68, 1275, 68, 68, - 1278, 68, 68, 1283, 68, 1282, 68, 1274, 1279, 68, - 1280, 1285, 68, 1281, 1286, 68, 68, 1288, 68, 68, - 1287, 1289, 68, 1292, 1284, 68, 68, 68, 68, 1293, - 1294, 1296, 1290, 1295, 68, 68, 68, 68, 1291, 1298, - 1301, 68, 1300, 68, 68, 68, 68, 1302, 1297, 1304, - 68, 1307, 1308, 68, 1305, 68, 1299, 1310, 68, 1303, - - 1309, 1311, 68, 1312, 68, 1313, 68, 68, 68, 68, - 1317, 68, 68, 68, 1316, 1319, 68, 1318, 68, 1322, - 68, 68, 1314, 1321, 1323, 68, 1324, 68, 68, 1315, - 1320, 68, 68, 1325, 68, 68, 68, 1332, 68, 1330, - 68, 68, 68, 1327, 1328, 68, 1326, 1329, 68, 1333, - 68, 68, 68, 68, 68, 68, 1331, 1340, 1336, 1341, - 1342, 68, 1335, 68, 1338, 1343, 68, 1334, 68, 1339, - 68, 68, 1337, 1344, 68, 68, 1351, 1346, 68, 1348, - 68, 1345, 1352, 68, 68, 68, 68, 1353, 1347, 68, - 68, 1349, 1350, 1359, 68, 1354, 1360, 68, 68, 68, - - 68, 68, 1355, 1356, 68, 1357, 1363, 1366, 68, 1358, - 1367, 68, 1361, 68, 1370, 68, 68, 1362, 1364, 68, - 1365, 1372, 68, 1368, 1373, 68, 68, 1374, 68, 68, - 68, 1369, 68, 68, 1377, 1371, 68, 1376, 1378, 68, - 1380, 1375, 68, 68, 1382, 1385, 68, 1383, 68, 1379, - 1387, 1381, 1386, 68, 1425, 68, 1388, 68, 1384, 1389, - 68, 1390, 68, 68, 68, 68, 68, 1391, 68, 1392, - 68, 1393, 68, 68, 68, 1396, 1395, 1398, 68, 68, - 1394, 68, 1402, 68, 1397, 68, 1399, 1400, 1401, 68, - 1406, 68, 1403, 68, 1408, 68, 68, 68, 68, 68, - - 68, 1410, 1407, 68, 1404, 1409, 1416, 1411, 1405, 1413, - 68, 68, 1412, 68, 1415, 1417, 68, 1418, 68, 68, - 1414, 1419, 68, 1422, 1423, 68, 68, 68, 68, 1420, - 1424, 68, 68, 1421, 68, 68, 1428, 1432, 68, 68, - 68, 68, 68, 1436, 1426, 1427, 68, 68, 1434, 1431, - 1429, 68, 1438, 68, 1430, 68, 68, 68, 1433, 68, - 1435, 68, 1437, 68, 1441, 1446, 1443, 1445, 68, 68, - 68, 1439, 68, 68, 1452, 1444, 1442, 68, 1447, 1440, - 68, 1448, 1449, 68, 1450, 1451, 1453, 68, 1454, 68, - 68, 68, 1459, 68, 68, 1457, 1455, 68, 1461, 68, - - 68, 1464, 68, 68, 68, 68, 68, 68, 68, 1458, - 1456, 68, 1465, 1462, 1468, 1463, 1469, 68, 1460, 68, - 1466, 1472, 68, 68, 1467, 1474, 68, 1471, 1473, 1477, - 68, 1478, 68, 1470, 68, 68, 68, 1475, 1482, 68, - 68, 1476, 68, 68, 1486, 68, 68, 1480, 1484, 68, - 1489, 68, 1483, 1479, 1490, 68, 1481, 68, 1619, 68, - 1619, 1485, 1487, 1488, 1493, 1491, 1494, 68, 1495, 68, - 68, 1492, 1496, 68, 68, 1497, 1498, 68, 68, 1499, - 1500, 68, 68, 68, 1503, 68, 68, 1501, 68, 68, - 68, 1502, 1506, 1504, 1505, 68, 68, 68, 1513, 68, - - 68, 1511, 1507, 68, 1514, 1515, 68, 1508, 1509, 68, - 1517, 68, 68, 1516, 1520, 68, 1510, 1512, 1518, 68, - 68, 68, 68, 68, 68, 1527, 68, 1524, 1525, 68, - 1519, 1528, 68, 1529, 68, 1522, 68, 1531, 68, 68, - 1532, 1530, 1523, 1526, 1521, 68, 68, 68, 68, 68, - 68, 1534, 1533, 1538, 68, 68, 68, 68, 1535, 68, - 68, 68, 1546, 68, 1537, 1536, 68, 1540, 68, 1547, - 1539, 1548, 1543, 1549, 1541, 1542, 1545, 68, 68, 68, - 1552, 68, 68, 1556, 1544, 68, 1557, 68, 68, 68, - 68, 68, 68, 1551, 1554, 1553, 68, 68, 68, 68, - - 1559, 1555, 1550, 1558, 68, 68, 1561, 68, 68, 1560, - 1563, 1564, 1566, 1567, 68, 1562, 68, 1569, 1565, 1570, - 68, 68, 1574, 1568, 1573, 1571, 1572, 68, 1575, 68, - 68, 68, 68, 1579, 68, 68, 68, 1576, 68, 68, - 68, 1582, 68, 68, 1586, 68, 68, 68, 1581, 68, - 1577, 1578, 1587, 1580, 1591, 1585, 68, 1589, 1583, 1584, - 68, 1590, 68, 68, 1588, 1593, 1594, 68, 68, 1592, - 1595, 68, 68, 68, 68, 1596, 68, 1598, 68, 1600, - 68, 1601, 68, 1604, 68, 68, 68, 1607, 1608, 68, - 1597, 68, 1599, 1610, 68, 1611, 68, 1602, 1609, 1603, - - 68, 68, 68, 1605, 1606, 68, 1613, 1612, 68, 1619, - 1614, 1617, 68, 1618, 68, 1619, 1619, 1619, 1619, 1619, - 1619, 1615, 1619, 1619, 1619, 1619, 1619, 1616, 40, 40, - 40, 40, 40, 40, 40, 45, 45, 45, 45, 45, - 45, 45, 50, 50, 50, 50, 50, 50, 50, 56, - 56, 56, 56, 56, 56, 56, 61, 61, 61, 61, - 61, 61, 61, 71, 71, 1619, 71, 71, 71, 71, - 123, 123, 1619, 1619, 1619, 123, 123, 125, 125, 1619, - 1619, 125, 1619, 125, 127, 1619, 1619, 1619, 1619, 1619, - 127, 130, 130, 1619, 1619, 1619, 130, 130, 132, 1619, - - 1619, 1619, 1619, 1619, 132, 134, 134, 1619, 134, 134, - 134, 134, 72, 72, 1619, 72, 72, 72, 72, 13, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619 + 68, 68, 68, 68, 68, 68, 68, 1077, 68, 1065, + 68, 68, 1079, 68, 1069, 1070, 1071, 68, 1082, 68, + 68, 1072, 68, 1073, 1074, 1075, 1081, 1076, 68, 1084, + 68, 68, 1087, 1080, 68, 1083, 1078, 1085, 68, 68, + 1091, 68, 68, 68, 1090, 68, 1094, 68, 1095, 1093, + 68, 68, 68, 68, 1089, 68, 1086, 68, 68, 1096, + 1088, 1092, 68, 1101, 68, 1103, 68, 1098, 68, 1104, + 1100, 1097, 1099, 1102, 1105, 1106, 68, 1110, 68, 1109, + + 68, 1111, 1108, 1107, 68, 1112, 68, 1113, 68, 1116, + 68, 68, 68, 68, 68, 1118, 68, 68, 1121, 1123, + 1115, 68, 1117, 68, 68, 1119, 1114, 68, 1126, 68, + 1125, 1127, 68, 1124, 68, 68, 68, 68, 68, 1122, + 1128, 1120, 1129, 68, 1130, 1131, 68, 1133, 1132, 1135, + 68, 68, 68, 68, 68, 68, 68, 1140, 1134, 68, + 1142, 1137, 68, 68, 1141, 68, 68, 1144, 68, 68, + 1143, 1136, 1138, 68, 1139, 1149, 68, 1147, 1145, 1151, + 1146, 68, 1148, 1150, 68, 68, 1153, 68, 68, 1154, + 1155, 68, 68, 68, 1158, 1156, 68, 68, 1152, 68, + + 68, 68, 68, 68, 68, 1159, 68, 68, 1167, 1166, + 68, 1161, 1157, 1162, 1163, 1164, 68, 68, 1160, 1169, + 1171, 68, 68, 1165, 68, 1168, 1174, 1173, 68, 68, + 1170, 68, 68, 1175, 1176, 1179, 68, 68, 68, 68, + 68, 1180, 68, 1172, 1183, 68, 68, 68, 1187, 1177, + 1184, 1185, 1178, 1182, 1186, 68, 1181, 68, 68, 1189, + 68, 68, 1190, 1191, 1188, 68, 68, 68, 68, 68, + 68, 1195, 68, 1192, 1196, 1200, 68, 68, 68, 1199, + 68, 1193, 1194, 1205, 1197, 68, 1201, 1202, 68, 1204, + 68, 1203, 1198, 1206, 1207, 68, 68, 68, 1208, 1210, + + 68, 68, 1211, 68, 68, 1209, 68, 1215, 68, 1212, + 68, 1214, 68, 68, 68, 1217, 68, 68, 68, 1220, + 68, 1213, 1223, 68, 1224, 68, 68, 68, 1219, 1216, + 68, 1226, 68, 1222, 1221, 1218, 68, 68, 68, 68, + 1225, 1234, 68, 68, 1227, 68, 1228, 68, 1235, 1232, + 68, 1230, 1236, 1255, 1229, 68, 1238, 1231, 68, 1233, + 68, 1237, 68, 1239, 1240, 68, 1241, 68, 1242, 1243, + 68, 1244, 68, 1246, 68, 1247, 68, 1245, 68, 1248, + 1250, 68, 68, 1249, 1252, 68, 68, 68, 68, 68, + 1256, 1258, 68, 1254, 1260, 68, 1261, 68, 68, 68, + + 1263, 1251, 68, 68, 1253, 1257, 68, 1259, 68, 68, + 68, 1264, 68, 1266, 68, 1265, 68, 68, 68, 1270, + 68, 1627, 1268, 1275, 1262, 1271, 1272, 1273, 68, 68, + 1274, 1267, 68, 1269, 68, 1279, 1276, 1280, 1278, 68, + 1277, 68, 68, 68, 1281, 68, 68, 68, 1285, 1288, + 68, 1286, 1282, 1284, 1283, 1289, 68, 68, 68, 1291, + 68, 68, 68, 68, 1295, 68, 68, 1287, 68, 1296, + 68, 1290, 1292, 1297, 68, 1293, 1298, 68, 68, 1299, + 68, 1294, 1301, 68, 1304, 1303, 1300, 68, 1302, 68, + 68, 1308, 68, 1305, 68, 1307, 68, 68, 1311, 1306, + + 1309, 68, 68, 1310, 1312, 68, 68, 1313, 1314, 68, + 1315, 68, 1316, 68, 1317, 68, 1319, 68, 1321, 68, + 1320, 68, 1318, 68, 68, 1323, 1322, 68, 1326, 68, + 1327, 68, 1325, 1328, 68, 68, 68, 68, 1324, 68, + 68, 68, 68, 1336, 68, 68, 1334, 1329, 68, 1331, + 68, 1332, 1333, 68, 1330, 68, 68, 1337, 68, 68, + 68, 68, 1335, 68, 1344, 1345, 1340, 1346, 68, 68, + 1339, 1338, 1342, 68, 1343, 1347, 68, 68, 68, 1341, + 68, 1348, 68, 68, 1355, 1350, 1352, 1349, 1356, 68, + 68, 68, 68, 1351, 68, 1358, 68, 68, 1353, 1357, + + 1354, 1363, 68, 1364, 68, 68, 68, 68, 68, 1359, + 1360, 68, 1361, 1362, 68, 1365, 68, 1371, 68, 1366, + 1372, 68, 1375, 68, 1367, 68, 1368, 1370, 1377, 68, + 1369, 1373, 1378, 68, 68, 1379, 1374, 68, 68, 68, + 68, 68, 68, 68, 1376, 1382, 1383, 1381, 68, 68, + 1385, 68, 68, 1627, 1387, 1402, 1388, 1392, 1384, 1380, + 1390, 68, 68, 1386, 1391, 68, 68, 1389, 1393, 68, + 1394, 68, 1395, 68, 68, 68, 68, 68, 1396, 68, + 1397, 1399, 1398, 68, 1400, 68, 68, 68, 1401, 1403, + 68, 1407, 1404, 68, 1405, 68, 1406, 68, 68, 68, + + 1412, 68, 1408, 1414, 68, 68, 68, 1413, 68, 68, + 68, 1416, 1627, 1415, 1409, 1419, 68, 1410, 1411, 1417, + 68, 1418, 68, 1421, 68, 1423, 68, 1422, 68, 1420, + 1424, 68, 1425, 68, 1428, 1429, 68, 68, 1426, 68, + 68, 1430, 1427, 68, 68, 68, 1431, 68, 68, 1434, + 1438, 68, 68, 68, 68, 1442, 68, 68, 68, 68, + 1432, 1433, 1437, 1435, 1440, 68, 68, 1436, 68, 68, + 1444, 1439, 1441, 1443, 68, 1447, 68, 1450, 1445, 1452, + 68, 68, 68, 68, 68, 1446, 1453, 68, 1448, 1449, + 1454, 68, 1455, 68, 1451, 68, 1456, 68, 1458, 68, + + 1459, 68, 1461, 68, 1460, 68, 68, 68, 1466, 1465, + 1462, 1464, 1457, 68, 1468, 68, 68, 1471, 68, 68, + 68, 68, 68, 68, 1463, 68, 1469, 1476, 1472, 68, + 1467, 1470, 68, 1475, 1478, 68, 1473, 1480, 68, 68, + 1474, 1482, 68, 68, 1481, 1485, 68, 68, 1479, 1477, + 1486, 68, 1483, 68, 68, 68, 1490, 68, 68, 1492, + 68, 1497, 68, 1494, 68, 1484, 1487, 1488, 68, 68, + 1491, 1498, 68, 1489, 1627, 68, 1502, 68, 68, 1493, + 1627, 1495, 1496, 1501, 1503, 68, 1504, 68, 1499, 1500, + 68, 1506, 68, 68, 1507, 1505, 1508, 68, 68, 68, + + 1511, 68, 68, 1509, 68, 68, 68, 1510, 68, 1512, + 1513, 68, 68, 68, 1521, 68, 68, 1519, 68, 68, + 1514, 68, 1515, 1522, 68, 1516, 1517, 1523, 68, 68, + 68, 1526, 1518, 1520, 1524, 1525, 68, 1528, 68, 1527, + 68, 68, 68, 1529, 1530, 1531, 1532, 1533, 1535, 68, + 1536, 68, 1537, 68, 68, 68, 1539, 1540, 68, 1534, + 68, 68, 68, 68, 68, 1542, 1538, 68, 1546, 68, + 68, 68, 1541, 68, 68, 68, 68, 1554, 68, 68, + 1543, 1544, 68, 1545, 1548, 68, 68, 1556, 1550, 1547, + 1551, 1553, 1549, 68, 1555, 68, 68, 1560, 1557, 68, + + 1552, 1559, 68, 1564, 1558, 1565, 68, 68, 68, 1561, + 68, 1562, 68, 68, 68, 68, 68, 68, 1563, 68, + 1566, 68, 68, 1577, 1574, 1567, 1568, 1569, 1571, 1572, + 68, 68, 68, 1570, 68, 1575, 1573, 1578, 68, 1579, + 1576, 1582, 68, 1580, 1583, 68, 68, 68, 68, 1584, + 1581, 1587, 68, 68, 68, 68, 68, 68, 1590, 68, + 68, 1594, 68, 68, 68, 68, 1585, 1586, 1589, 1595, + 1599, 1588, 1593, 1591, 68, 1597, 1592, 68, 1598, 68, + 68, 1596, 1601, 1602, 68, 68, 1600, 1603, 68, 68, + 68, 68, 1604, 68, 1606, 68, 1608, 68, 1609, 68, + + 1612, 68, 68, 68, 1615, 1616, 68, 1605, 68, 1607, + 1618, 68, 1619, 68, 1610, 1617, 1611, 68, 68, 68, + 1613, 1614, 68, 1621, 1620, 68, 1627, 1622, 1625, 68, + 1626, 68, 1627, 1627, 1627, 1627, 1627, 1627, 1623, 1627, + 1627, 1627, 1627, 1627, 1624, 40, 40, 40, 40, 40, + 40, 40, 45, 45, 45, 45, 45, 45, 45, 50, + 50, 50, 50, 50, 50, 50, 56, 56, 56, 56, + 56, 56, 56, 61, 61, 61, 61, 61, 61, 61, + 71, 71, 1627, 71, 71, 71, 71, 123, 123, 1627, + 1627, 1627, 123, 123, 125, 125, 1627, 1627, 125, 1627, + + 125, 127, 1627, 1627, 1627, 1627, 1627, 127, 130, 130, + 1627, 1627, 1627, 130, 130, 132, 1627, 1627, 1627, 1627, + 1627, 132, 134, 134, 1627, 134, 134, 134, 134, 72, + 72, 1627, 72, 72, 72, 72, 13, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627 } ; -static yyconst flex_int16_t yy_chk[3260] = +static yyconst flex_int16_t yy_chk[3277] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1335,7 +1340,7 @@ static yyconst flex_int16_t yy_chk[3260] = 9, 151, 33, 6, 7, 7, 7, 7, 9, 7, 10, 10, 10, 44, 44, 7, 8, 8, 8, 8, 10, 8, 21, 33, 151, 21, 21, 8, 11, 11, - 11, 11, 11, 11, 1625, 20, 29, 20, 20, 11, + 11, 11, 11, 11, 1633, 20, 29, 20, 20, 11, 20, 29, 24, 21, 25, 20, 24, 28, 11, 12, 12, 12, 12, 12, 12, 74, 22, 22, 74, 25, @@ -1549,141 +1554,143 @@ static yyconst flex_int16_t yy_chk[3260] = 964, 964, 958, 965, 971, 972, 972, 959, 965, 960, 962, 966, 968, 969, 966, 970, 974, 968, 973, 973, 970, 974, 975, 976, 977, 978, 979, 980, 980, 971, - 981, 982, 982, 983, 975, 987, 975, 985, 986, 986, - 990, 975, 988, 976, 977, 978, 985, 979, 989, 988, - 987, 991, 991, 983, 992, 993, 981, 989, 995, 996, - 998, 997, 1003, 995, 996, 1000, 990, 998, 999, 999, - 1000, 993, 1002, 1001, 1004, 1005, 1007, 1003, 1006, 1011, - 992, 997, 1001, 1009, 1006, 1007, 1008, 1008, 1010, 1010, - 1005, 1012, 1002, 1004, 1009, 1017, 1013, 1014, 1014, 1009, - - 1011, 1013, 1015, 1016, 1018, 1012, 1015, 1015, 1016, 1019, - 1020, 1021, 1022, 1023, 1019, 1021, 1018, 1025, 1024, 1027, - 1026, 1017, 1020, 1024, 1022, 1026, 1029, 1030, 1030, 1029, - 1032, 1027, 1031, 1031, 1039, 1033, 1032, 1034, 1023, 1025, - 1033, 1035, 1037, 1034, 1041, 1043, 1039, 1037, 1042, 1042, - 1035, 1044, 1045, 1046, 1047, 1050, 1041, 1048, 1047, 1049, - 1044, 1053, 1048, 14, 1049, 1043, 1052, 1052, 1054, 1050, - 1045, 1055, 1046, 1057, 1057, 1060, 1061, 1054, 1052, 1053, - 1055, 1061, 1062, 1063, 1063, 1064, 1067, 1064, 1068, 1060, - 1065, 1065, 1070, 1067, 1069, 1069, 1074, 1071, 1072, 1062, - - 1073, 1075, 1077, 1078, 1079, 1078, 1080, 1077, 1068, 1071, - 1072, 1074, 1073, 1070, 1082, 1080, 1083, 1083, 1084, 1085, - 1089, 1075, 1079, 1086, 1085, 1086, 1087, 1088, 1082, 1090, - 1091, 1087, 1088, 1094, 1092, 1091, 1095, 13, 1089, 1092, - 1096, 1096, 1097, 1099, 1084, 1099, 1098, 1100, 1101, 1090, - 1095, 1107, 1094, 1106, 1097, 1098, 1100, 1103, 1098, 1104, - 1101, 1108, 1103, 1110, 1104, 1113, 1106, 1112, 1114, 1110, - 1115, 1107, 1117, 1112, 1116, 1116, 1119, 1108, 1122, 1115, - 1113, 1117, 1118, 1118, 1120, 1121, 1123, 1123, 1120, 1124, - 1121, 1122, 1127, 1114, 1130, 1119, 1131, 1124, 1128, 1128, - - 1132, 1127, 1129, 1129, 1135, 1132, 1130, 1133, 1133, 1137, - 1136, 1138, 1139, 1140, 1131, 1136, 1146, 1139, 1141, 1142, - 1142, 1143, 1144, 1145, 1147, 1143, 1138, 1149, 1145, 1135, - 1150, 1140, 1137, 1151, 1141, 1152, 1153, 1144, 1155, 1155, - 1157, 1156, 1146, 1147, 1156, 1158, 1236, 1152, 1236, 1150, - 1162, 1149, 1165, 1157, 1151, 1159, 1159, 1153, 1158, 1160, - 1160, 1161, 1161, 1162, 1163, 1163, 1164, 1164, 1166, 1166, - 1168, 1165, 1167, 1167, 1170, 1171, 1171, 1172, 1175, 1170, - 1173, 1173, 1174, 1176, 1175, 1179, 1176, 1177, 1177, 1168, - 1178, 1178, 1180, 1180, 1182, 1182, 1172, 1183, 1184, 1184, - - 1174, 1185, 1186, 1177, 1179, 1188, 1187, 1189, 1190, 1192, - 1185, 1187, 1191, 1193, 1186, 1197, 1194, 1191, 1195, 1197, - 1189, 1196, 1193, 1183, 1192, 1194, 1196, 1199, 1201, 1190, - 1188, 1203, 1195, 1202, 1202, 1206, 1203, 1201, 1210, 1204, - 1204, 1207, 1209, 1210, 1211, 1209, 1215, 1199, 1204, 1217, - 1206, 1212, 1212, 1207, 1214, 1214, 1216, 1216, 1218, 1219, - 1215, 1217, 1220, 1220, 1211, 1222, 1225, 1223, 1226, 1222, - 1223, 1225, 1218, 1224, 1224, 1227, 1228, 1229, 1219, 1227, - 1230, 1231, 1229, 1233, 1234, 1230, 1235, 1231, 1226, 1234, - 1239, 1239, 1242, 1242, 1235, 1245, 1228, 1246, 1246, 1233, - - 1245, 1248, 1248, 1250, 1251, 1251, 1252, 1253, 1250, 1254, - 1256, 1256, 1259, 1260, 1254, 1260, 1261, 1259, 1262, 1263, - 1263, 1266, 1252, 1262, 1264, 1264, 1265, 1265, 1267, 1253, - 1261, 1268, 1269, 1266, 1271, 1270, 1272, 1273, 1273, 1271, - 1274, 1275, 1276, 1268, 1269, 1277, 1267, 1270, 1278, 1274, - 1279, 1280, 1281, 1287, 1282, 1289, 1272, 1281, 1277, 1282, - 1283, 1283, 1276, 1288, 1279, 1284, 1284, 1275, 1290, 1280, - 1291, 1292, 1278, 1287, 1293, 1294, 1294, 1289, 1297, 1291, - 1298, 1288, 1296, 1296, 1299, 1300, 1307, 1297, 1290, 1301, - 1302, 1292, 1293, 1303, 1303, 1298, 1304, 1305, 1306, 1309, - - 1312, 1304, 1299, 1300, 1313, 1301, 1307, 1313, 1315, 1302, - 1314, 1314, 1305, 1316, 1318, 1318, 1319, 1306, 1309, 1326, - 1312, 1320, 1320, 1315, 1321, 1321, 1325, 1325, 1327, 1328, - 1330, 1316, 1331, 1329, 1328, 1319, 1333, 1327, 1329, 1334, - 1331, 1326, 1335, 1336, 1334, 1337, 1337, 1335, 1387, 1330, - 1339, 1333, 1338, 1338, 1387, 1339, 1340, 1340, 1336, 1341, - 1341, 1344, 1347, 1345, 1346, 1348, 1344, 1345, 1349, 1346, - 1350, 1347, 1351, 1354, 1353, 1350, 1349, 1353, 1355, 1356, - 1348, 1357, 1357, 1358, 1351, 1360, 1354, 1355, 1356, 1361, - 1362, 1362, 1358, 1363, 1364, 1364, 1366, 1365, 1368, 1369, - - 1374, 1366, 1363, 1376, 1360, 1365, 1376, 1368, 1361, 1371, - 1371, 1380, 1369, 1375, 1375, 1377, 1377, 1378, 1378, 1381, - 1374, 1379, 1379, 1382, 1383, 1383, 1384, 1390, 1382, 1380, - 1384, 1391, 1392, 1381, 1393, 1394, 1391, 1395, 1395, 1396, - 1397, 1398, 1399, 1399, 1390, 1390, 1400, 1401, 1397, 1394, - 1392, 1402, 1401, 1403, 1393, 1404, 1405, 1409, 1396, 1416, - 1398, 1411, 1400, 1407, 1404, 1411, 1407, 1410, 1410, 1412, - 1415, 1402, 1414, 1421, 1421, 1409, 1405, 1422, 1412, 1403, - 1420, 1414, 1415, 1424, 1416, 1420, 1422, 1425, 1424, 1426, - 1427, 1428, 1429, 1430, 1433, 1427, 1425, 1429, 1431, 1431, - - 1434, 1435, 1435, 1436, 1437, 1438, 1439, 1441, 1442, 1428, - 1426, 1440, 1436, 1433, 1439, 1434, 1440, 1447, 1430, 1448, - 1437, 1443, 1443, 1444, 1438, 1446, 1446, 1442, 1444, 1449, - 1449, 1450, 1450, 1441, 1451, 1452, 1453, 1447, 1454, 1454, - 1455, 1448, 1457, 1456, 1458, 1459, 1463, 1452, 1456, 1458, - 1460, 1460, 1455, 1451, 1462, 1462, 1453, 1465, 0, 1466, - 0, 1457, 1459, 1459, 1466, 1463, 1467, 1467, 1468, 1468, - 1470, 1465, 1469, 1469, 1484, 1470, 1471, 1471, 1473, 1473, - 1475, 1475, 1476, 1479, 1480, 1480, 1485, 1476, 1481, 1483, - 1486, 1479, 1484, 1481, 1483, 1487, 1488, 1491, 1492, 1492, - - 1493, 1488, 1485, 1502, 1493, 1497, 1497, 1486, 1486, 1499, - 1501, 1501, 1504, 1499, 1505, 1505, 1487, 1491, 1502, 1506, - 1507, 1508, 1509, 1510, 1511, 1512, 1512, 1509, 1510, 1518, - 1504, 1514, 1514, 1516, 1516, 1507, 1519, 1519, 1522, 1524, - 1521, 1518, 1508, 1511, 1506, 1521, 1523, 1525, 1526, 1530, - 1531, 1523, 1522, 1530, 1532, 1533, 1535, 1534, 1524, 1536, - 1539, 1537, 1538, 1538, 1526, 1525, 1540, 1532, 1541, 1539, - 1531, 1540, 1535, 1541, 1533, 1534, 1537, 1542, 1543, 1547, - 1544, 1545, 1548, 1549, 1536, 1544, 1550, 1552, 1549, 1551, - 1553, 1550, 1554, 1543, 1547, 1545, 1555, 1556, 1557, 1558, - - 1552, 1548, 1542, 1551, 1561, 1566, 1554, 1559, 1560, 1553, - 1556, 1557, 1559, 1560, 1563, 1555, 1562, 1562, 1558, 1563, - 1564, 1565, 1567, 1561, 1566, 1564, 1565, 1567, 1568, 1568, - 1569, 1570, 1571, 1572, 1573, 1574, 1576, 1569, 1572, 1577, - 1578, 1576, 1579, 1580, 1580, 1582, 1587, 1581, 1574, 1585, - 1570, 1571, 1581, 1573, 1585, 1579, 1583, 1583, 1577, 1578, - 1584, 1584, 1586, 1589, 1582, 1587, 1588, 1588, 1590, 1586, - 1589, 1591, 1592, 1593, 1595, 1590, 1596, 1592, 1597, 1595, - 1598, 1596, 1599, 1599, 1600, 1601, 1602, 1602, 1603, 1603, - 1591, 1604, 1593, 1605, 1605, 1606, 1606, 1597, 1604, 1598, - - 1607, 1609, 1613, 1600, 1601, 1612, 1609, 1607, 1614, 0, - 1612, 1615, 1615, 1616, 1616, 0, 0, 0, 0, 0, - 0, 1613, 0, 0, 0, 0, 0, 1614, 1620, 1620, - 1620, 1620, 1620, 1620, 1620, 1621, 1621, 1621, 1621, 1621, - 1621, 1621, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1623, - 1623, 1623, 1623, 1623, 1623, 1623, 1624, 1624, 1624, 1624, - 1624, 1624, 1624, 1626, 1626, 0, 1626, 1626, 1626, 1626, - 1627, 1627, 0, 0, 0, 1627, 1627, 1628, 1628, 0, - 0, 1628, 0, 1628, 1629, 0, 0, 0, 0, 0, - 1629, 1630, 1630, 0, 0, 0, 1630, 1630, 1631, 0, - - 0, 0, 0, 0, 1631, 1632, 1632, 0, 1632, 1632, - 1632, 1632, 1633, 1633, 0, 1633, 1633, 1633, 1633, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, - 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619 + 981, 982, 982, 983, 975, 975, 975, 985, 986, 986, + 987, 975, 988, 976, 977, 978, 985, 979, 989, 988, + 990, 991, 991, 983, 992, 987, 981, 989, 993, 995, + 996, 997, 998, 1000, 995, 996, 999, 999, 1000, 998, + 1001, 1002, 1003, 1004, 993, 1005, 990, 1006, 1009, 1001, + 992, 997, 1011, 1006, 1007, 1008, 1008, 1003, 1012, 1009, + 1005, 1002, 1004, 1007, 1009, 1010, 1010, 1014, 1014, 1013, + + 1017, 1015, 1012, 1011, 1013, 1015, 1015, 1016, 1018, 1019, + 1020, 1021, 1016, 1022, 1019, 1021, 1023, 1025, 1024, 1026, + 1018, 1027, 1020, 1024, 1026, 1022, 1017, 1029, 1030, 1030, + 1029, 1031, 1031, 1027, 1032, 1039, 1035, 1033, 1034, 1025, + 1032, 1023, 1033, 1037, 1034, 1035, 1041, 1039, 1037, 1042, + 1042, 1043, 1044, 1047, 1045, 1046, 1050, 1047, 1041, 1048, + 1049, 1044, 1053, 14, 1048, 1049, 1052, 1052, 1054, 1060, + 1050, 1043, 1045, 1055, 1046, 1057, 1057, 1054, 1052, 1061, + 1053, 1062, 1055, 1060, 1061, 1063, 1063, 1064, 1067, 1064, + 1065, 1065, 1068, 1069, 1069, 1067, 1070, 1071, 1062, 1072, + + 1075, 1073, 1074, 1076, 1078, 1070, 1079, 1080, 1079, 1078, + 1081, 1072, 1068, 1073, 1074, 1075, 1083, 1085, 1071, 1081, + 1084, 1084, 1086, 1076, 1087, 1080, 1087, 1086, 1088, 1089, + 1083, 1090, 1091, 1088, 1089, 1092, 1093, 1095, 1098, 1096, + 1092, 1093, 1099, 1085, 1097, 1097, 1100, 1102, 1100, 1090, + 1098, 1099, 1091, 1096, 1099, 1101, 1095, 1104, 1105, 1102, + 1107, 1108, 1104, 1105, 1101, 1111, 1109, 1115, 1113, 1114, + 1116, 1111, 1120, 1107, 1113, 1117, 1117, 1118, 1122, 1116, + 1123, 1108, 1109, 1122, 1114, 1121, 1118, 1119, 1119, 1121, + 1125, 1120, 1115, 1123, 1124, 1124, 1128, 1131, 1125, 1129, + + 1129, 1130, 1130, 1132, 1136, 1128, 1133, 1134, 1134, 1131, + 1137, 1133, 1138, 1139, 1140, 1137, 1141, 1142, 1147, 1140, + 1144, 1132, 1143, 1143, 1144, 1145, 1146, 1148, 1139, 1136, + 1150, 1146, 1151, 1142, 1141, 1138, 1152, 1153, 1154, 1158, + 1145, 1156, 1156, 1160, 1147, 1157, 1148, 1159, 1157, 1153, + 1178, 1151, 1158, 1178, 1150, 1164, 1160, 1152, 1167, 1154, + 1170, 1159, 1161, 1161, 1162, 1162, 1163, 1163, 1164, 1165, + 1165, 1166, 1166, 1168, 1168, 1169, 1169, 1167, 1172, 1170, + 1173, 1173, 1174, 1172, 1175, 1175, 1176, 1177, 1181, 1179, + 1179, 1180, 1180, 1177, 1182, 1182, 1184, 1184, 1185, 1186, + + 1186, 1174, 1187, 1188, 1176, 1179, 1190, 1181, 1189, 1191, + 1194, 1187, 1192, 1189, 1193, 1188, 1197, 1195, 1196, 1193, + 1201, 13, 1191, 1198, 1185, 1194, 1195, 1196, 1198, 1203, + 1197, 1190, 1199, 1192, 1204, 1204, 1199, 1205, 1203, 1208, + 1201, 1209, 1205, 1206, 1206, 1211, 1212, 1213, 1211, 1214, + 1214, 1212, 1206, 1209, 1208, 1216, 1216, 1217, 1218, 1218, + 1219, 1220, 1221, 1222, 1222, 1224, 1228, 1213, 1230, 1224, + 1225, 1217, 1219, 1225, 1227, 1220, 1226, 1226, 1229, 1227, + 1231, 1221, 1229, 1235, 1232, 1231, 1228, 1233, 1230, 1232, + 1236, 1237, 1238, 1233, 1256, 1236, 1237, 1242, 1242, 1235, + + 1238, 1239, 1248, 1239, 1245, 1245, 1255, 1248, 1249, 1249, + 1251, 1251, 1253, 1254, 1254, 1257, 1256, 1253, 1259, 1259, + 1257, 1262, 1255, 1263, 1264, 1263, 1262, 1265, 1266, 1266, + 1267, 1267, 1265, 1268, 1268, 1269, 1270, 1271, 1264, 1272, + 1273, 1274, 1275, 1276, 1276, 1278, 1274, 1269, 1277, 1271, + 1279, 1272, 1273, 1280, 1270, 1281, 1283, 1277, 1282, 1284, + 1285, 1290, 1275, 1292, 1284, 1285, 1280, 1286, 1286, 1291, + 1279, 1278, 1282, 1293, 1283, 1287, 1287, 1294, 1295, 1281, + 1301, 1290, 1296, 1297, 1297, 1292, 1294, 1291, 1299, 1299, + 1300, 1302, 1303, 1293, 1305, 1301, 1304, 1308, 1295, 1300, + + 1296, 1306, 1306, 1307, 1309, 1310, 1311, 1316, 1307, 1302, + 1303, 1313, 1304, 1305, 1317, 1308, 1319, 1317, 1320, 1309, + 1318, 1318, 1322, 1322, 1310, 1323, 1311, 1316, 1324, 1324, + 1313, 1319, 1325, 1325, 1329, 1329, 1320, 1330, 1331, 1334, + 1332, 1333, 1335, 1355, 1323, 1332, 1333, 1331, 1337, 1338, + 1335, 1339, 1340, 0, 1338, 1355, 1339, 1343, 1334, 1330, + 1341, 1341, 1343, 1337, 1342, 1342, 1352, 1340, 1344, 1344, + 1345, 1345, 1348, 1351, 1349, 1350, 1353, 1348, 1349, 1358, + 1350, 1352, 1351, 1354, 1353, 1359, 1357, 1360, 1354, 1357, + 1361, 1361, 1358, 1362, 1359, 1364, 1360, 1365, 1368, 1366, + + 1367, 1367, 1362, 1369, 1369, 1370, 1371, 1368, 1374, 1379, + 1373, 1371, 0, 1370, 1364, 1376, 1376, 1365, 1366, 1373, + 1385, 1374, 1380, 1380, 1381, 1382, 1382, 1381, 1386, 1379, + 1383, 1383, 1384, 1384, 1387, 1388, 1388, 1389, 1385, 1387, + 1392, 1389, 1386, 1395, 1396, 1397, 1392, 1398, 1399, 1396, + 1400, 1400, 1401, 1403, 1404, 1404, 1402, 1405, 1407, 1408, + 1395, 1395, 1399, 1397, 1402, 1406, 1409, 1398, 1410, 1411, + 1406, 1401, 1403, 1405, 1413, 1409, 1415, 1413, 1407, 1416, + 1416, 1418, 1417, 1420, 1421, 1408, 1417, 1422, 1410, 1411, + 1418, 1434, 1420, 1426, 1415, 1428, 1421, 1430, 1426, 1427, + + 1427, 1431, 1430, 1432, 1428, 1436, 1433, 1439, 1435, 1434, + 1431, 1433, 1422, 1435, 1437, 1437, 1440, 1441, 1441, 1442, + 1443, 1444, 1446, 1447, 1432, 1445, 1439, 1446, 1442, 1449, + 1436, 1440, 1454, 1445, 1448, 1448, 1443, 1450, 1450, 1451, + 1444, 1453, 1453, 1455, 1451, 1456, 1456, 1458, 1449, 1447, + 1457, 1457, 1454, 1460, 1463, 1459, 1461, 1461, 1462, 1463, + 1464, 1467, 1467, 1465, 1466, 1455, 1458, 1459, 1465, 1470, + 1462, 1469, 1469, 1460, 0, 1472, 1474, 1474, 1473, 1464, + 0, 1466, 1466, 1473, 1475, 1475, 1476, 1476, 1470, 1472, + 1477, 1479, 1479, 1481, 1481, 1477, 1483, 1483, 1484, 1487, + + 1488, 1488, 1492, 1484, 1489, 1491, 1493, 1487, 1494, 1489, + 1491, 1495, 1496, 1499, 1500, 1500, 1510, 1496, 1514, 1501, + 1492, 1512, 1493, 1501, 1516, 1494, 1494, 1505, 1505, 1515, + 1507, 1510, 1495, 1499, 1507, 1509, 1509, 1513, 1513, 1512, + 1519, 1517, 1518, 1514, 1515, 1516, 1517, 1518, 1520, 1520, + 1522, 1522, 1524, 1524, 1526, 1527, 1527, 1529, 1530, 1519, + 1531, 1532, 1529, 1533, 1538, 1531, 1526, 1534, 1538, 1539, + 1542, 1540, 1530, 1541, 1543, 1544, 1545, 1546, 1546, 1550, + 1532, 1533, 1548, 1534, 1540, 1547, 1551, 1548, 1542, 1539, + 1543, 1545, 1541, 1549, 1547, 1553, 1555, 1552, 1549, 1556, + + 1544, 1551, 1552, 1557, 1550, 1558, 1559, 1561, 1557, 1553, + 1558, 1555, 1560, 1562, 1563, 1564, 1565, 1566, 1556, 1567, + 1559, 1569, 1570, 1570, 1567, 1560, 1561, 1562, 1564, 1565, + 1568, 1574, 1571, 1563, 1572, 1568, 1566, 1571, 1573, 1572, + 1569, 1575, 1577, 1573, 1576, 1576, 1575, 1578, 1579, 1577, + 1574, 1580, 1581, 1584, 1585, 1582, 1580, 1586, 1584, 1587, + 1588, 1588, 1590, 1595, 1589, 1593, 1578, 1579, 1582, 1589, + 1593, 1581, 1587, 1585, 1591, 1591, 1586, 1592, 1592, 1594, + 1597, 1590, 1595, 1596, 1596, 1598, 1594, 1597, 1599, 1600, + 1601, 1603, 1598, 1604, 1600, 1605, 1603, 1606, 1604, 1607, + + 1607, 1608, 1609, 1610, 1610, 1611, 1611, 1599, 1612, 1601, + 1613, 1613, 1614, 1614, 1605, 1612, 1606, 1615, 1617, 1621, + 1608, 1609, 1620, 1617, 1615, 1622, 0, 1620, 1623, 1623, + 1624, 1624, 0, 0, 0, 0, 0, 0, 1621, 0, + 0, 0, 0, 0, 1622, 1628, 1628, 1628, 1628, 1628, + 1628, 1628, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1630, + 1630, 1630, 1630, 1630, 1630, 1630, 1631, 1631, 1631, 1631, + 1631, 1631, 1631, 1632, 1632, 1632, 1632, 1632, 1632, 1632, + 1634, 1634, 0, 1634, 1634, 1634, 1634, 1635, 1635, 0, + 0, 0, 1635, 1635, 1636, 1636, 0, 0, 1636, 0, + + 1636, 1637, 0, 0, 0, 0, 0, 1637, 1638, 1638, + 0, 0, 0, 1638, 1638, 1639, 0, 0, 0, 0, + 0, 1639, 1640, 1640, 0, 1640, 1640, 1640, 1640, 1641, + 1641, 0, 1641, 1641, 1641, 1641, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, + 1627, 1627, 1627, 1627, 1627, 1627 } ; static yy_state_type yy_last_accepting_state; @@ -1884,7 +1891,7 @@ static void config_end_include(void) #define YY_NO_INPUT 1 #endif -#line 1886 "" +#line 1893 "" #define INITIAL 0 #define quotedstring 1 @@ -2071,7 +2078,7 @@ YY_DECL #line 197 "./util/configlexer.lex" -#line 2073 "" +#line 2080 "" if ( !(yy_init) ) { @@ -2130,13 +2137,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1620 ) + if ( yy_current_state >= 1628 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 3220 ); + while ( yy_base[yy_current_state] != 3237 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -2401,520 +2408,525 @@ YY_RULE_SETUP case 48: YY_RULE_SETUP #line 248 "./util/configlexer.lex" -{ YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) } +{ YDVAR(1, VAR_INFRA_CACHE_MIN_RTT) } YY_BREAK case 49: YY_RULE_SETUP #line 249 "./util/configlexer.lex" -{ YDVAR(1, VAR_JOSTLE_TIMEOUT) } +{ YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) } YY_BREAK case 50: YY_RULE_SETUP #line 250 "./util/configlexer.lex" -{ YDVAR(1, VAR_DELAY_CLOSE) } +{ YDVAR(1, VAR_JOSTLE_TIMEOUT) } YY_BREAK case 51: YY_RULE_SETUP #line 251 "./util/configlexer.lex" -{ YDVAR(1, VAR_TARGET_FETCH_POLICY) } +{ YDVAR(1, VAR_DELAY_CLOSE) } YY_BREAK case 52: YY_RULE_SETUP #line 252 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) } +{ YDVAR(1, VAR_TARGET_FETCH_POLICY) } YY_BREAK case 53: YY_RULE_SETUP #line 253 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_LARGE_QUERIES) } +{ YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) } YY_BREAK case 54: YY_RULE_SETUP #line 254 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_GLUE) } +{ YDVAR(1, VAR_HARDEN_LARGE_QUERIES) } YY_BREAK case 55: YY_RULE_SETUP #line 255 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) } +{ YDVAR(1, VAR_HARDEN_GLUE) } YY_BREAK case 56: YY_RULE_SETUP #line 256 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) } +{ YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) } YY_BREAK case 57: YY_RULE_SETUP #line 257 "./util/configlexer.lex" -{ YDVAR(1, VAR_HARDEN_REFERRAL_PATH) } +{ YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) } YY_BREAK case 58: YY_RULE_SETUP #line 258 "./util/configlexer.lex" -{ YDVAR(1, VAR_USE_CAPS_FOR_ID) } +{ YDVAR(1, VAR_HARDEN_REFERRAL_PATH) } YY_BREAK case 59: YY_RULE_SETUP #line 259 "./util/configlexer.lex" -{ YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) } +{ YDVAR(1, VAR_USE_CAPS_FOR_ID) } YY_BREAK case 60: YY_RULE_SETUP #line 260 "./util/configlexer.lex" -{ YDVAR(1, VAR_PRIVATE_ADDRESS) } +{ YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) } YY_BREAK case 61: YY_RULE_SETUP #line 261 "./util/configlexer.lex" -{ YDVAR(1, VAR_PRIVATE_DOMAIN) } +{ YDVAR(1, VAR_PRIVATE_ADDRESS) } YY_BREAK case 62: YY_RULE_SETUP #line 262 "./util/configlexer.lex" -{ YDVAR(1, VAR_PREFETCH_KEY) } +{ YDVAR(1, VAR_PRIVATE_DOMAIN) } YY_BREAK case 63: YY_RULE_SETUP #line 263 "./util/configlexer.lex" -{ YDVAR(1, VAR_PREFETCH) } +{ YDVAR(1, VAR_PREFETCH_KEY) } YY_BREAK case 64: YY_RULE_SETUP #line 264 "./util/configlexer.lex" -{ YDVAR(0, VAR_STUB_ZONE) } +{ YDVAR(1, VAR_PREFETCH) } YY_BREAK case 65: YY_RULE_SETUP #line 265 "./util/configlexer.lex" -{ YDVAR(1, VAR_NAME) } +{ YDVAR(0, VAR_STUB_ZONE) } YY_BREAK case 66: YY_RULE_SETUP #line 266 "./util/configlexer.lex" -{ YDVAR(1, VAR_STUB_ADDR) } +{ YDVAR(1, VAR_NAME) } YY_BREAK case 67: YY_RULE_SETUP #line 267 "./util/configlexer.lex" -{ YDVAR(1, VAR_STUB_HOST) } +{ YDVAR(1, VAR_STUB_ADDR) } YY_BREAK case 68: YY_RULE_SETUP #line 268 "./util/configlexer.lex" -{ YDVAR(1, VAR_STUB_PRIME) } +{ YDVAR(1, VAR_STUB_HOST) } YY_BREAK case 69: YY_RULE_SETUP #line 269 "./util/configlexer.lex" -{ YDVAR(1, VAR_STUB_FIRST) } +{ YDVAR(1, VAR_STUB_PRIME) } YY_BREAK case 70: YY_RULE_SETUP #line 270 "./util/configlexer.lex" -{ YDVAR(0, VAR_FORWARD_ZONE) } +{ YDVAR(1, VAR_STUB_FIRST) } YY_BREAK case 71: YY_RULE_SETUP #line 271 "./util/configlexer.lex" -{ YDVAR(1, VAR_FORWARD_ADDR) } +{ YDVAR(0, VAR_FORWARD_ZONE) } YY_BREAK case 72: YY_RULE_SETUP #line 272 "./util/configlexer.lex" -{ YDVAR(1, VAR_FORWARD_HOST) } +{ YDVAR(1, VAR_FORWARD_ADDR) } YY_BREAK case 73: YY_RULE_SETUP #line 273 "./util/configlexer.lex" -{ YDVAR(1, VAR_FORWARD_FIRST) } +{ YDVAR(1, VAR_FORWARD_HOST) } YY_BREAK case 74: YY_RULE_SETUP #line 274 "./util/configlexer.lex" -{ YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) } +{ YDVAR(1, VAR_FORWARD_FIRST) } YY_BREAK case 75: YY_RULE_SETUP #line 275 "./util/configlexer.lex" -{ YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) } +{ YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) } YY_BREAK case 76: YY_RULE_SETUP #line 276 "./util/configlexer.lex" -{ YDVAR(2, VAR_ACCESS_CONTROL) } +{ YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) } YY_BREAK case 77: YY_RULE_SETUP #line 277 "./util/configlexer.lex" -{ YDVAR(1, VAR_HIDE_IDENTITY) } +{ YDVAR(2, VAR_ACCESS_CONTROL) } YY_BREAK case 78: YY_RULE_SETUP #line 278 "./util/configlexer.lex" -{ YDVAR(1, VAR_HIDE_VERSION) } +{ YDVAR(1, VAR_HIDE_IDENTITY) } YY_BREAK case 79: YY_RULE_SETUP #line 279 "./util/configlexer.lex" -{ YDVAR(1, VAR_IDENTITY) } +{ YDVAR(1, VAR_HIDE_VERSION) } YY_BREAK case 80: YY_RULE_SETUP #line 280 "./util/configlexer.lex" -{ YDVAR(1, VAR_VERSION) } +{ YDVAR(1, VAR_IDENTITY) } YY_BREAK case 81: YY_RULE_SETUP #line 281 "./util/configlexer.lex" -{ YDVAR(1, VAR_MODULE_CONF) } +{ YDVAR(1, VAR_VERSION) } YY_BREAK case 82: YY_RULE_SETUP #line 282 "./util/configlexer.lex" -{ YDVAR(1, VAR_DLV_ANCHOR) } +{ YDVAR(1, VAR_MODULE_CONF) } YY_BREAK case 83: YY_RULE_SETUP #line 283 "./util/configlexer.lex" -{ YDVAR(1, VAR_DLV_ANCHOR_FILE) } +{ YDVAR(1, VAR_DLV_ANCHOR) } YY_BREAK case 84: YY_RULE_SETUP #line 284 "./util/configlexer.lex" -{ YDVAR(1, VAR_TRUST_ANCHOR_FILE) } +{ YDVAR(1, VAR_DLV_ANCHOR_FILE) } YY_BREAK case 85: YY_RULE_SETUP #line 285 "./util/configlexer.lex" -{ YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) } +{ YDVAR(1, VAR_TRUST_ANCHOR_FILE) } YY_BREAK case 86: YY_RULE_SETUP #line 286 "./util/configlexer.lex" -{ YDVAR(1, VAR_TRUSTED_KEYS_FILE) } +{ YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) } YY_BREAK case 87: YY_RULE_SETUP #line 287 "./util/configlexer.lex" -{ YDVAR(1, VAR_TRUST_ANCHOR) } +{ YDVAR(1, VAR_TRUSTED_KEYS_FILE) } YY_BREAK case 88: YY_RULE_SETUP #line 288 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_OVERRIDE_DATE) } +{ YDVAR(1, VAR_TRUST_ANCHOR) } YY_BREAK case 89: YY_RULE_SETUP #line 289 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_SIG_SKEW_MIN) } +{ YDVAR(1, VAR_VAL_OVERRIDE_DATE) } YY_BREAK case 90: YY_RULE_SETUP #line 290 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_SIG_SKEW_MAX) } +{ YDVAR(1, VAR_VAL_SIG_SKEW_MIN) } YY_BREAK case 91: YY_RULE_SETUP #line 291 "./util/configlexer.lex" -{ YDVAR(1, VAR_BOGUS_TTL) } +{ YDVAR(1, VAR_VAL_SIG_SKEW_MAX) } YY_BREAK case 92: YY_RULE_SETUP #line 292 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) } +{ YDVAR(1, VAR_BOGUS_TTL) } YY_BREAK case 93: YY_RULE_SETUP #line 293 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_PERMISSIVE_MODE) } +{ YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) } YY_BREAK case 94: YY_RULE_SETUP #line 294 "./util/configlexer.lex" -{ YDVAR(1, VAR_IGNORE_CD_FLAG) } +{ YDVAR(1, VAR_VAL_PERMISSIVE_MODE) } YY_BREAK case 95: YY_RULE_SETUP #line 295 "./util/configlexer.lex" -{ YDVAR(1, VAR_VAL_LOG_LEVEL) } +{ YDVAR(1, VAR_IGNORE_CD_FLAG) } YY_BREAK case 96: YY_RULE_SETUP #line 296 "./util/configlexer.lex" -{ YDVAR(1, VAR_KEY_CACHE_SIZE) } +{ YDVAR(1, VAR_VAL_LOG_LEVEL) } YY_BREAK case 97: YY_RULE_SETUP #line 297 "./util/configlexer.lex" -{ YDVAR(1, VAR_KEY_CACHE_SLABS) } +{ YDVAR(1, VAR_KEY_CACHE_SIZE) } YY_BREAK case 98: YY_RULE_SETUP #line 298 "./util/configlexer.lex" -{ YDVAR(1, VAR_NEG_CACHE_SIZE) } +{ YDVAR(1, VAR_KEY_CACHE_SLABS) } YY_BREAK case 99: YY_RULE_SETUP #line 299 "./util/configlexer.lex" -{ - YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) } +{ YDVAR(1, VAR_NEG_CACHE_SIZE) } YY_BREAK case 100: YY_RULE_SETUP -#line 301 "./util/configlexer.lex" -{ YDVAR(1, VAR_ADD_HOLDDOWN) } +#line 300 "./util/configlexer.lex" +{ + YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) } YY_BREAK case 101: YY_RULE_SETUP #line 302 "./util/configlexer.lex" -{ YDVAR(1, VAR_DEL_HOLDDOWN) } +{ YDVAR(1, VAR_ADD_HOLDDOWN) } YY_BREAK case 102: YY_RULE_SETUP #line 303 "./util/configlexer.lex" -{ YDVAR(1, VAR_KEEP_MISSING) } +{ YDVAR(1, VAR_DEL_HOLDDOWN) } YY_BREAK case 103: YY_RULE_SETUP #line 304 "./util/configlexer.lex" -{ YDVAR(1, VAR_USE_SYSLOG) } +{ YDVAR(1, VAR_KEEP_MISSING) } YY_BREAK case 104: YY_RULE_SETUP #line 305 "./util/configlexer.lex" -{ YDVAR(1, VAR_LOG_TIME_ASCII) } +{ YDVAR(1, VAR_USE_SYSLOG) } YY_BREAK case 105: YY_RULE_SETUP #line 306 "./util/configlexer.lex" -{ YDVAR(1, VAR_LOG_QUERIES) } +{ YDVAR(1, VAR_LOG_TIME_ASCII) } YY_BREAK case 106: YY_RULE_SETUP #line 307 "./util/configlexer.lex" -{ YDVAR(2, VAR_LOCAL_ZONE) } +{ YDVAR(1, VAR_LOG_QUERIES) } YY_BREAK case 107: YY_RULE_SETUP #line 308 "./util/configlexer.lex" -{ YDVAR(1, VAR_LOCAL_DATA) } +{ YDVAR(2, VAR_LOCAL_ZONE) } YY_BREAK case 108: YY_RULE_SETUP #line 309 "./util/configlexer.lex" -{ YDVAR(1, VAR_LOCAL_DATA_PTR) } +{ YDVAR(1, VAR_LOCAL_DATA) } YY_BREAK case 109: YY_RULE_SETUP #line 310 "./util/configlexer.lex" -{ YDVAR(1, VAR_UNBLOCK_LAN_ZONES) } +{ YDVAR(1, VAR_LOCAL_DATA_PTR) } YY_BREAK case 110: YY_RULE_SETUP #line 311 "./util/configlexer.lex" -{ YDVAR(1, VAR_STATISTICS_INTERVAL) } +{ YDVAR(1, VAR_UNBLOCK_LAN_ZONES) } YY_BREAK case 111: YY_RULE_SETUP #line 312 "./util/configlexer.lex" -{ YDVAR(1, VAR_STATISTICS_CUMULATIVE) } +{ YDVAR(1, VAR_STATISTICS_INTERVAL) } YY_BREAK case 112: YY_RULE_SETUP #line 313 "./util/configlexer.lex" -{ YDVAR(1, VAR_EXTENDED_STATISTICS) } +{ YDVAR(1, VAR_STATISTICS_CUMULATIVE) } YY_BREAK case 113: YY_RULE_SETUP #line 314 "./util/configlexer.lex" -{ YDVAR(0, VAR_REMOTE_CONTROL) } +{ YDVAR(1, VAR_EXTENDED_STATISTICS) } YY_BREAK case 114: YY_RULE_SETUP #line 315 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_ENABLE) } +{ YDVAR(0, VAR_REMOTE_CONTROL) } YY_BREAK case 115: YY_RULE_SETUP #line 316 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_INTERFACE) } +{ YDVAR(1, VAR_CONTROL_ENABLE) } YY_BREAK case 116: YY_RULE_SETUP #line 317 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_PORT) } +{ YDVAR(1, VAR_CONTROL_INTERFACE) } YY_BREAK case 117: YY_RULE_SETUP #line 318 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_USE_CERT) } +{ YDVAR(1, VAR_CONTROL_PORT) } YY_BREAK case 118: YY_RULE_SETUP #line 319 "./util/configlexer.lex" -{ YDVAR(1, VAR_SERVER_KEY_FILE) } +{ YDVAR(1, VAR_CONTROL_USE_CERT) } YY_BREAK case 119: YY_RULE_SETUP #line 320 "./util/configlexer.lex" -{ YDVAR(1, VAR_SERVER_CERT_FILE) } +{ YDVAR(1, VAR_SERVER_KEY_FILE) } YY_BREAK case 120: YY_RULE_SETUP #line 321 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_KEY_FILE) } +{ YDVAR(1, VAR_SERVER_CERT_FILE) } YY_BREAK case 121: YY_RULE_SETUP #line 322 "./util/configlexer.lex" -{ YDVAR(1, VAR_CONTROL_CERT_FILE) } +{ YDVAR(1, VAR_CONTROL_KEY_FILE) } YY_BREAK case 122: YY_RULE_SETUP #line 323 "./util/configlexer.lex" -{ YDVAR(1, VAR_PYTHON_SCRIPT) } +{ YDVAR(1, VAR_CONTROL_CERT_FILE) } YY_BREAK case 123: YY_RULE_SETUP #line 324 "./util/configlexer.lex" -{ YDVAR(0, VAR_PYTHON) } +{ YDVAR(1, VAR_PYTHON_SCRIPT) } YY_BREAK case 124: YY_RULE_SETUP #line 325 "./util/configlexer.lex" -{ YDVAR(1, VAR_DOMAIN_INSECURE) } +{ YDVAR(0, VAR_PYTHON) } YY_BREAK case 125: YY_RULE_SETUP #line 326 "./util/configlexer.lex" -{ YDVAR(1, VAR_MINIMAL_RESPONSES) } +{ YDVAR(1, VAR_DOMAIN_INSECURE) } YY_BREAK case 126: YY_RULE_SETUP #line 327 "./util/configlexer.lex" -{ YDVAR(1, VAR_RRSET_ROUNDROBIN) } +{ YDVAR(1, VAR_MINIMAL_RESPONSES) } YY_BREAK case 127: YY_RULE_SETUP #line 328 "./util/configlexer.lex" -{ YDVAR(1, VAR_MAX_UDP_SIZE) } +{ YDVAR(1, VAR_RRSET_ROUNDROBIN) } YY_BREAK case 128: YY_RULE_SETUP #line 329 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNS64_PREFIX) } +{ YDVAR(1, VAR_MAX_UDP_SIZE) } YY_BREAK case 129: YY_RULE_SETUP #line 330 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNS64_SYNTHALL) } +{ YDVAR(1, VAR_DNS64_PREFIX) } YY_BREAK case 130: YY_RULE_SETUP #line 331 "./util/configlexer.lex" -{ YDVAR(0, VAR_DNSTAP) } +{ YDVAR(1, VAR_DNS64_SYNTHALL) } YY_BREAK case 131: YY_RULE_SETUP #line 332 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_ENABLE) } +{ YDVAR(0, VAR_DNSTAP) } YY_BREAK case 132: YY_RULE_SETUP #line 333 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_SOCKET_PATH) } +{ YDVAR(1, VAR_DNSTAP_ENABLE) } YY_BREAK case 133: YY_RULE_SETUP #line 334 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_SEND_IDENTITY) } +{ YDVAR(1, VAR_DNSTAP_SOCKET_PATH) } YY_BREAK case 134: YY_RULE_SETUP #line 335 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_SEND_VERSION) } +{ YDVAR(1, VAR_DNSTAP_SEND_IDENTITY) } YY_BREAK case 135: YY_RULE_SETUP #line 336 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_IDENTITY) } +{ YDVAR(1, VAR_DNSTAP_SEND_VERSION) } YY_BREAK case 136: YY_RULE_SETUP #line 337 "./util/configlexer.lex" -{ YDVAR(1, VAR_DNSTAP_VERSION) } +{ YDVAR(1, VAR_DNSTAP_IDENTITY) } YY_BREAK case 137: YY_RULE_SETUP #line 338 "./util/configlexer.lex" +{ YDVAR(1, VAR_DNSTAP_VERSION) } + YY_BREAK +case 138: +YY_RULE_SETUP +#line 339 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES) } YY_BREAK -case 138: +case 139: YY_RULE_SETUP -#line 340 "./util/configlexer.lex" +#line 341 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES) } YY_BREAK -case 139: +case 140: YY_RULE_SETUP -#line 342 "./util/configlexer.lex" +#line 343 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES) } YY_BREAK -case 140: +case 141: YY_RULE_SETUP -#line 344 "./util/configlexer.lex" +#line 345 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES) } YY_BREAK -case 141: +case 142: YY_RULE_SETUP -#line 346 "./util/configlexer.lex" +#line 347 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES) } YY_BREAK -case 142: +case 143: YY_RULE_SETUP -#line 348 "./util/configlexer.lex" +#line 349 "./util/configlexer.lex" { YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES) } YY_BREAK -case 143: -/* rule 143 can match eol */ +case 144: +/* rule 144 can match eol */ YY_RULE_SETUP -#line 350 "./util/configlexer.lex" +#line 351 "./util/configlexer.lex" { LEXOUT(("NL\n")); cfg_parser->line++; } YY_BREAK /* Quoted strings. Strip leading and ending quotes */ -case 144: +case 145: YY_RULE_SETUP -#line 353 "./util/configlexer.lex" +#line 354 "./util/configlexer.lex" { BEGIN(quotedstring); LEXOUT(("QS ")); } YY_BREAK case YY_STATE_EOF(quotedstring): -#line 354 "./util/configlexer.lex" +#line 355 "./util/configlexer.lex" { yyerror("EOF inside quoted string"); if(--num_args == 0) { BEGIN(INITIAL); } else { BEGIN(val); } } YY_BREAK -case 145: +case 146: YY_RULE_SETUP -#line 359 "./util/configlexer.lex" +#line 360 "./util/configlexer.lex" { LEXOUT(("STR(%s) ", yytext)); yymore(); } YY_BREAK -case 146: -/* rule 146 can match eol */ +case 147: +/* rule 147 can match eol */ YY_RULE_SETUP -#line 360 "./util/configlexer.lex" +#line 361 "./util/configlexer.lex" { yyerror("newline inside quoted string, no end \""); cfg_parser->line++; BEGIN(INITIAL); } YY_BREAK -case 147: +case 148: YY_RULE_SETUP -#line 362 "./util/configlexer.lex" +#line 363 "./util/configlexer.lex" { LEXOUT(("QE ")); if(--num_args == 0) { BEGIN(INITIAL); } @@ -2927,34 +2939,34 @@ YY_RULE_SETUP } YY_BREAK /* Single Quoted strings. Strip leading and ending quotes */ -case 148: +case 149: YY_RULE_SETUP -#line 374 "./util/configlexer.lex" +#line 375 "./util/configlexer.lex" { BEGIN(singlequotedstr); LEXOUT(("SQS ")); } YY_BREAK case YY_STATE_EOF(singlequotedstr): -#line 375 "./util/configlexer.lex" +#line 376 "./util/configlexer.lex" { yyerror("EOF inside quoted string"); if(--num_args == 0) { BEGIN(INITIAL); } else { BEGIN(val); } } YY_BREAK -case 149: +case 150: YY_RULE_SETUP -#line 380 "./util/configlexer.lex" +#line 381 "./util/configlexer.lex" { LEXOUT(("STR(%s) ", yytext)); yymore(); } YY_BREAK -case 150: -/* rule 150 can match eol */ +case 151: +/* rule 151 can match eol */ YY_RULE_SETUP -#line 381 "./util/configlexer.lex" +#line 382 "./util/configlexer.lex" { yyerror("newline inside quoted string, no end '"); cfg_parser->line++; BEGIN(INITIAL); } YY_BREAK -case 151: +case 152: YY_RULE_SETUP -#line 383 "./util/configlexer.lex" +#line 384 "./util/configlexer.lex" { LEXOUT(("SQE ")); if(--num_args == 0) { BEGIN(INITIAL); } @@ -2967,38 +2979,38 @@ YY_RULE_SETUP } YY_BREAK /* include: directive */ -case 152: +case 153: YY_RULE_SETUP -#line 395 "./util/configlexer.lex" +#line 396 "./util/configlexer.lex" { LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include); } YY_BREAK case YY_STATE_EOF(include): -#line 397 "./util/configlexer.lex" +#line 398 "./util/configlexer.lex" { yyerror("EOF inside include directive"); BEGIN(inc_prev); } YY_BREAK -case 153: -YY_RULE_SETUP -#line 401 "./util/configlexer.lex" -{ LEXOUT(("ISP ")); /* ignore */ } - YY_BREAK case 154: -/* rule 154 can match eol */ YY_RULE_SETUP #line 402 "./util/configlexer.lex" -{ LEXOUT(("NL\n")); cfg_parser->line++;} +{ LEXOUT(("ISP ")); /* ignore */ } YY_BREAK case 155: +/* rule 155 can match eol */ YY_RULE_SETUP #line 403 "./util/configlexer.lex" -{ LEXOUT(("IQS ")); BEGIN(include_quoted); } +{ LEXOUT(("NL\n")); cfg_parser->line++;} YY_BREAK case 156: YY_RULE_SETUP #line 404 "./util/configlexer.lex" +{ LEXOUT(("IQS ")); BEGIN(include_quoted); } + YY_BREAK +case 157: +YY_RULE_SETUP +#line 405 "./util/configlexer.lex" { LEXOUT(("Iunquotedstr(%s) ", yytext)); config_start_include_glob(yytext); @@ -3006,27 +3018,27 @@ YY_RULE_SETUP } YY_BREAK case YY_STATE_EOF(include_quoted): -#line 409 "./util/configlexer.lex" +#line 410 "./util/configlexer.lex" { yyerror("EOF inside quoted string"); BEGIN(inc_prev); } YY_BREAK -case 157: +case 158: YY_RULE_SETUP -#line 413 "./util/configlexer.lex" +#line 414 "./util/configlexer.lex" { LEXOUT(("ISTR(%s) ", yytext)); yymore(); } YY_BREAK -case 158: -/* rule 158 can match eol */ +case 159: +/* rule 159 can match eol */ YY_RULE_SETUP -#line 414 "./util/configlexer.lex" +#line 415 "./util/configlexer.lex" { yyerror("newline before \" in include name"); cfg_parser->line++; BEGIN(inc_prev); } YY_BREAK -case 159: +case 160: YY_RULE_SETUP -#line 416 "./util/configlexer.lex" +#line 417 "./util/configlexer.lex" { LEXOUT(("IQE ")); yytext[yyleng - 1] = '\0'; @@ -3036,7 +3048,7 @@ YY_RULE_SETUP YY_BREAK case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(val): -#line 422 "./util/configlexer.lex" +#line 423 "./util/configlexer.lex" { LEXOUT(("LEXEOF ")); yy_set_bol(1); /* Set beginning of line, so "^" rules match. */ @@ -3048,33 +3060,33 @@ case YY_STATE_EOF(val): } } YY_BREAK -case 160: +case 161: YY_RULE_SETUP -#line 433 "./util/configlexer.lex" +#line 434 "./util/configlexer.lex" { LEXOUT(("unquotedstr(%s) ", yytext)); if(--num_args == 0) { BEGIN(INITIAL); } yylval.str = strdup(yytext); return STRING_ARG; } YY_BREAK -case 161: +case 162: YY_RULE_SETUP -#line 437 "./util/configlexer.lex" +#line 438 "./util/configlexer.lex" { ub_c_error_msg("unknown keyword '%s'", yytext); } YY_BREAK -case 162: +case 163: YY_RULE_SETUP -#line 441 "./util/configlexer.lex" +#line 442 "./util/configlexer.lex" { ub_c_error_msg("stray '%s'", yytext); } YY_BREAK -case 163: +case 164: YY_RULE_SETUP -#line 445 "./util/configlexer.lex" +#line 446 "./util/configlexer.lex" ECHO; YY_BREAK -#line 3076 "" +#line 3088 "" case YY_END_OF_BUFFER: { @@ -3364,7 +3376,7 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1620 ) + if ( yy_current_state >= 1628 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -3392,11 +3404,11 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1620 ) + if ( yy_current_state >= 1628 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1619); + yy_is_jam = (yy_current_state == 1627); return yy_is_jam ? 0 : yy_current_state; } @@ -4029,7 +4041,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 445 "./util/configlexer.lex" +#line 446 "./util/configlexer.lex" diff --git a/util/configlexer.lex b/util/configlexer.lex index eea1b8584..dbde8113c 100644 --- a/util/configlexer.lex +++ b/util/configlexer.lex @@ -245,6 +245,7 @@ infra-lame-ttl{COLON} { YDVAR(1, VAR_INFRA_LAME_TTL) } infra-cache-slabs{COLON} { YDVAR(1, VAR_INFRA_CACHE_SLABS) } infra-cache-numhosts{COLON} { YDVAR(1, VAR_INFRA_CACHE_NUMHOSTS) } infra-cache-lame-size{COLON} { YDVAR(1, VAR_INFRA_CACHE_LAME_SIZE) } +infra-cache-min-rtt{COLON} { YDVAR(1, VAR_INFRA_CACHE_MIN_RTT) } num-queries-per-thread{COLON} { YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) } jostle-timeout{COLON} { YDVAR(1, VAR_JOSTLE_TIMEOUT) } delay-close{COLON} { YDVAR(1, VAR_DELAY_CLOSE) } diff --git a/util/configparser.c b/util/configparser.c index c411b40cb..09df3f345 100644 --- a/util/configparser.c +++ b/util/configparser.c @@ -259,21 +259,22 @@ extern int yydebug; VAR_MAX_UDP_SIZE = 387, VAR_DELAY_CLOSE = 388, VAR_UNBLOCK_LAN_ZONES = 389, - VAR_DNS64_PREFIX = 390, - VAR_DNS64_SYNTHALL = 391, - VAR_DNSTAP = 392, - VAR_DNSTAP_ENABLE = 393, - VAR_DNSTAP_SOCKET_PATH = 394, - VAR_DNSTAP_SEND_IDENTITY = 395, - VAR_DNSTAP_SEND_VERSION = 396, - VAR_DNSTAP_IDENTITY = 397, - VAR_DNSTAP_VERSION = 398, - VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES = 399, - VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES = 400, - VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES = 401, - VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES = 402, - VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES = 403, - VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES = 404 + VAR_INFRA_CACHE_MIN_RTT = 390, + VAR_DNS64_PREFIX = 391, + VAR_DNS64_SYNTHALL = 392, + VAR_DNSTAP = 393, + VAR_DNSTAP_ENABLE = 394, + VAR_DNSTAP_SOCKET_PATH = 395, + VAR_DNSTAP_SEND_IDENTITY = 396, + VAR_DNSTAP_SEND_VERSION = 397, + VAR_DNSTAP_IDENTITY = 398, + VAR_DNSTAP_VERSION = 399, + VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES = 400, + VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES = 401, + VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES = 402, + VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES = 403, + VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES = 404, + VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES = 405 }; #endif /* Tokens. */ @@ -409,21 +410,22 @@ extern int yydebug; #define VAR_MAX_UDP_SIZE 387 #define VAR_DELAY_CLOSE 388 #define VAR_UNBLOCK_LAN_ZONES 389 -#define VAR_DNS64_PREFIX 390 -#define VAR_DNS64_SYNTHALL 391 -#define VAR_DNSTAP 392 -#define VAR_DNSTAP_ENABLE 393 -#define VAR_DNSTAP_SOCKET_PATH 394 -#define VAR_DNSTAP_SEND_IDENTITY 395 -#define VAR_DNSTAP_SEND_VERSION 396 -#define VAR_DNSTAP_IDENTITY 397 -#define VAR_DNSTAP_VERSION 398 -#define VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES 399 -#define VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES 400 -#define VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES 401 -#define VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES 402 -#define VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES 403 -#define VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES 404 +#define VAR_INFRA_CACHE_MIN_RTT 390 +#define VAR_DNS64_PREFIX 391 +#define VAR_DNS64_SYNTHALL 392 +#define VAR_DNSTAP 393 +#define VAR_DNSTAP_ENABLE 394 +#define VAR_DNSTAP_SOCKET_PATH 395 +#define VAR_DNSTAP_SEND_IDENTITY 396 +#define VAR_DNSTAP_SEND_VERSION 397 +#define VAR_DNSTAP_IDENTITY 398 +#define VAR_DNSTAP_VERSION 399 +#define VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES 400 +#define VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES 401 +#define VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES 402 +#define VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES 403 +#define VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES 404 +#define VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES 405 @@ -437,7 +439,7 @@ typedef union YYSTYPE /* Line 387 of yacc.c */ -#line 441 "util/configparser.c" +#line 443 "util/configparser.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -465,7 +467,7 @@ int yyparse (); /* Copy the second part of user declarations. */ /* Line 390 of yacc.c */ -#line 469 "util/configparser.c" +#line 471 "util/configparser.c" #ifdef short # undef short @@ -685,20 +687,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 278 +#define YYLAST 280 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 150 +#define YYNTOKENS 151 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 155 +#define YYNNTS 156 /* YYNRULES -- Number of rules. */ -#define YYNRULES 295 +#define YYNRULES 297 /* YYNRULES -- Number of states. */ -#define YYNSTATES 432 +#define YYNSTATES 435 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 404 +#define YYMAXUTOK 405 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -746,7 +748,7 @@ static const yytype_uint8 yytranslate[] = 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149 + 145, 146, 147, 148, 149, 150 }; #if YYDEBUG @@ -765,139 +767,139 @@ static const yytype_uint16 yyprhs[] = 165, 167, 169, 171, 173, 175, 177, 179, 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, 201, 203, 205, 207, 209, 211, 213, 215, 217, 219, 221, 223, - 225, 227, 229, 231, 233, 235, 237, 239, 241, 244, - 245, 247, 249, 251, 253, 255, 257, 260, 261, 263, - 265, 267, 269, 272, 275, 278, 281, 284, 287, 290, - 293, 296, 299, 302, 305, 308, 311, 314, 317, 320, - 323, 326, 329, 332, 335, 338, 341, 344, 347, 350, - 353, 356, 359, 362, 365, 368, 371, 374, 377, 380, - 383, 386, 389, 392, 395, 398, 401, 404, 407, 410, - 413, 416, 419, 422, 425, 428, 431, 434, 437, 440, - 443, 446, 449, 452, 455, 458, 461, 464, 467, 470, - 473, 476, 479, 482, 485, 488, 491, 494, 497, 500, - 504, 507, 510, 513, 516, 519, 522, 525, 528, 531, - 534, 537, 540, 543, 546, 549, 552, 555, 558, 562, - 565, 568, 571, 574, 577, 580, 583, 586, 589, 592, - 595, 598, 601, 604, 607, 610, 612, 615, 616, 618, - 620, 622, 624, 626, 628, 630, 632, 635, 638, 641, - 644, 647, 650, 653, 656, 658, 661, 662, 664, 666, - 668, 670, 672, 674, 676, 678, 680, 682, 684, 686, - 689, 692, 695, 698, 701, 704, 707, 710, 713, 716, - 719, 722, 724, 727, 728, 730 + 225, 227, 229, 231, 233, 235, 237, 239, 241, 243, + 246, 247, 249, 251, 253, 255, 257, 259, 262, 263, + 265, 267, 269, 271, 274, 277, 280, 283, 286, 289, + 292, 295, 298, 301, 304, 307, 310, 313, 316, 319, + 322, 325, 328, 331, 334, 337, 340, 343, 346, 349, + 352, 355, 358, 361, 364, 367, 370, 373, 376, 379, + 382, 385, 388, 391, 394, 397, 400, 403, 406, 409, + 412, 415, 418, 421, 424, 427, 430, 433, 436, 439, + 442, 445, 448, 451, 454, 457, 460, 463, 466, 469, + 472, 475, 478, 481, 484, 487, 490, 493, 496, 499, + 502, 505, 509, 512, 515, 518, 521, 524, 527, 530, + 533, 536, 539, 542, 545, 548, 551, 554, 557, 560, + 563, 567, 570, 573, 576, 579, 582, 585, 588, 591, + 594, 597, 600, 603, 606, 609, 612, 615, 617, 620, + 621, 623, 625, 627, 629, 631, 633, 635, 637, 640, + 643, 646, 649, 652, 655, 658, 661, 663, 666, 667, + 669, 671, 673, 675, 677, 679, 681, 683, 685, 687, + 689, 691, 694, 697, 700, 703, 706, 709, 712, 715, + 718, 721, 724, 727, 729, 732, 733, 735 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 151, 0, -1, -1, 151, 152, -1, 153, 154, -1, - 156, 157, -1, 159, 160, -1, 301, 302, -1, 275, - 276, -1, 286, 287, -1, 11, -1, 154, 155, -1, - -1, 162, -1, 163, -1, 167, -1, 170, -1, 176, - -1, 177, -1, 178, -1, 179, -1, 168, -1, 189, - -1, 190, -1, 191, -1, 192, -1, 193, -1, 211, - -1, 212, -1, 213, -1, 217, -1, 218, -1, 173, - -1, 219, -1, 220, -1, 223, -1, 221, -1, 222, - -1, 224, -1, 225, -1, 226, -1, 237, -1, 202, - -1, 203, -1, 204, -1, 205, -1, 227, -1, 240, - -1, 198, -1, 200, -1, 241, -1, 246, -1, 247, - -1, 248, -1, 174, -1, 210, -1, 255, -1, 256, - -1, 199, -1, 251, -1, 186, -1, 169, -1, 194, - -1, 238, -1, 244, -1, 228, -1, 239, -1, 258, - -1, 259, -1, 175, -1, 164, -1, 185, -1, 231, - -1, 165, -1, 171, -1, 172, -1, 195, -1, 196, - -1, 257, -1, 230, -1, 232, -1, 233, -1, 166, - -1, 260, -1, 214, -1, 236, -1, 187, -1, 201, - -1, 242, -1, 243, -1, 245, -1, 250, -1, 197, - -1, 252, -1, 253, -1, 254, -1, 206, -1, 209, - -1, 234, -1, 235, -1, 207, -1, 229, -1, 249, - -1, 188, -1, 180, -1, 181, -1, 182, -1, 183, - -1, 184, -1, 261, -1, 262, -1, 263, -1, 208, - -1, 215, -1, 216, -1, 264, -1, 265, -1, 38, - -1, 157, 158, -1, -1, 266, -1, 267, -1, 268, - -1, 270, -1, 269, -1, 44, -1, 160, 161, -1, - -1, 271, -1, 272, -1, 273, -1, 274, -1, 13, - 10, -1, 12, 10, -1, 76, 10, -1, 79, 10, - -1, 97, 10, -1, 14, 10, -1, 16, 10, -1, - 67, 10, -1, 15, 10, -1, 80, 10, -1, 81, - 10, -1, 31, 10, -1, 60, 10, -1, 75, 10, - -1, 17, 10, -1, 18, 10, -1, 19, 10, -1, - 20, 10, -1, 123, 10, -1, 124, 10, -1, 125, - 10, -1, 126, 10, -1, 127, 10, -1, 77, 10, - -1, 66, 10, -1, 102, 10, -1, 122, 10, -1, - 21, 10, -1, 22, 10, -1, 23, 10, -1, 24, - 10, -1, 25, 10, -1, 68, 10, -1, 82, 10, - -1, 83, 10, -1, 110, 10, -1, 54, 10, -1, - 64, 10, -1, 55, 10, -1, 103, 10, -1, 48, - 10, -1, 49, 10, -1, 50, 10, -1, 51, 10, - -1, 114, 10, -1, 118, 10, -1, 119, 10, -1, - 115, 10, -1, 61, 10, -1, 26, 10, -1, 27, - 10, -1, 28, 10, -1, 99, 10, -1, 133, 10, - -1, 134, 10, -1, 29, 10, -1, 30, 10, -1, - 32, 10, -1, 33, 10, -1, 35, 10, -1, 36, - 10, -1, 34, 10, -1, 41, 10, -1, 42, 10, - -1, 43, 10, -1, 52, 10, -1, 71, 10, -1, - 120, 10, -1, 85, 10, -1, 78, 10, -1, 86, - 10, -1, 87, 10, -1, 116, 10, -1, 117, 10, - -1, 101, 10, -1, 47, 10, -1, 69, 10, -1, - 72, 10, 10, -1, 53, 10, -1, 56, 10, -1, - 106, 10, -1, 107, 10, -1, 70, 10, -1, 108, - 10, -1, 57, 10, -1, 58, 10, -1, 59, 10, - -1, 121, 10, -1, 109, 10, -1, 65, 10, -1, - 112, 10, -1, 113, 10, -1, 111, 10, -1, 62, - 10, -1, 63, 10, -1, 84, 10, -1, 73, 10, - 10, -1, 74, 10, -1, 98, 10, -1, 130, 10, - -1, 131, 10, -1, 132, 10, -1, 135, 10, -1, - 136, 10, -1, 37, 10, -1, 39, 10, -1, 40, - 10, -1, 129, 10, -1, 100, 10, -1, 37, 10, - -1, 45, 10, -1, 46, 10, -1, 128, 10, -1, - 88, -1, 276, 277, -1, -1, 278, -1, 280, -1, - 279, -1, 282, -1, 283, -1, 284, -1, 285, -1, - 281, -1, 89, 10, -1, 91, 10, -1, 90, 10, - -1, 96, 10, -1, 92, 10, -1, 93, 10, -1, - 94, 10, -1, 95, 10, -1, 137, -1, 287, 288, - -1, -1, 289, -1, 290, -1, 291, -1, 292, -1, - 293, -1, 294, -1, 295, -1, 296, -1, 297, -1, - 298, -1, 299, -1, 300, -1, 138, 10, -1, 139, - 10, -1, 140, 10, -1, 141, 10, -1, 142, 10, - -1, 143, 10, -1, 144, 10, -1, 145, 10, -1, - 146, 10, -1, 147, 10, -1, 148, 10, -1, 149, - 10, -1, 104, -1, 302, 303, -1, -1, 304, -1, - 105, 10, -1 + 152, 0, -1, -1, 152, 153, -1, 154, 155, -1, + 157, 158, -1, 160, 161, -1, 303, 304, -1, 277, + 278, -1, 288, 289, -1, 11, -1, 155, 156, -1, + -1, 163, -1, 164, -1, 168, -1, 171, -1, 177, + -1, 178, -1, 179, -1, 180, -1, 169, -1, 190, + -1, 191, -1, 192, -1, 193, -1, 194, -1, 212, + -1, 213, -1, 214, -1, 218, -1, 219, -1, 174, + -1, 220, -1, 221, -1, 224, -1, 222, -1, 223, + -1, 226, -1, 227, -1, 228, -1, 239, -1, 203, + -1, 204, -1, 205, -1, 206, -1, 229, -1, 242, + -1, 199, -1, 201, -1, 243, -1, 248, -1, 249, + -1, 250, -1, 175, -1, 211, -1, 257, -1, 258, + -1, 200, -1, 253, -1, 187, -1, 170, -1, 195, + -1, 240, -1, 246, -1, 230, -1, 241, -1, 260, + -1, 261, -1, 176, -1, 165, -1, 186, -1, 233, + -1, 166, -1, 172, -1, 173, -1, 196, -1, 197, + -1, 259, -1, 232, -1, 234, -1, 235, -1, 167, + -1, 262, -1, 215, -1, 238, -1, 188, -1, 202, + -1, 244, -1, 245, -1, 247, -1, 252, -1, 198, + -1, 254, -1, 255, -1, 256, -1, 207, -1, 210, + -1, 236, -1, 237, -1, 208, -1, 231, -1, 251, + -1, 189, -1, 181, -1, 182, -1, 183, -1, 184, + -1, 185, -1, 263, -1, 264, -1, 265, -1, 209, + -1, 216, -1, 217, -1, 266, -1, 267, -1, 225, + -1, 38, -1, 158, 159, -1, -1, 268, -1, 269, + -1, 270, -1, 272, -1, 271, -1, 44, -1, 161, + 162, -1, -1, 273, -1, 274, -1, 275, -1, 276, + -1, 13, 10, -1, 12, 10, -1, 76, 10, -1, + 79, 10, -1, 97, 10, -1, 14, 10, -1, 16, + 10, -1, 67, 10, -1, 15, 10, -1, 80, 10, + -1, 81, 10, -1, 31, 10, -1, 60, 10, -1, + 75, 10, -1, 17, 10, -1, 18, 10, -1, 19, + 10, -1, 20, 10, -1, 123, 10, -1, 124, 10, + -1, 125, 10, -1, 126, 10, -1, 127, 10, -1, + 77, 10, -1, 66, 10, -1, 102, 10, -1, 122, + 10, -1, 21, 10, -1, 22, 10, -1, 23, 10, + -1, 24, 10, -1, 25, 10, -1, 68, 10, -1, + 82, 10, -1, 83, 10, -1, 110, 10, -1, 54, + 10, -1, 64, 10, -1, 55, 10, -1, 103, 10, + -1, 48, 10, -1, 49, 10, -1, 50, 10, -1, + 51, 10, -1, 114, 10, -1, 118, 10, -1, 119, + 10, -1, 115, 10, -1, 61, 10, -1, 26, 10, + -1, 27, 10, -1, 28, 10, -1, 99, 10, -1, + 133, 10, -1, 134, 10, -1, 29, 10, -1, 30, + 10, -1, 32, 10, -1, 33, 10, -1, 35, 10, + -1, 36, 10, -1, 34, 10, -1, 135, 10, -1, + 41, 10, -1, 42, 10, -1, 43, 10, -1, 52, + 10, -1, 71, 10, -1, 120, 10, -1, 85, 10, + -1, 78, 10, -1, 86, 10, -1, 87, 10, -1, + 116, 10, -1, 117, 10, -1, 101, 10, -1, 47, + 10, -1, 69, 10, -1, 72, 10, 10, -1, 53, + 10, -1, 56, 10, -1, 106, 10, -1, 107, 10, + -1, 70, 10, -1, 108, 10, -1, 57, 10, -1, + 58, 10, -1, 59, 10, -1, 121, 10, -1, 109, + 10, -1, 65, 10, -1, 112, 10, -1, 113, 10, + -1, 111, 10, -1, 62, 10, -1, 63, 10, -1, + 84, 10, -1, 73, 10, 10, -1, 74, 10, -1, + 98, 10, -1, 130, 10, -1, 131, 10, -1, 132, + 10, -1, 136, 10, -1, 137, 10, -1, 37, 10, + -1, 39, 10, -1, 40, 10, -1, 129, 10, -1, + 100, 10, -1, 37, 10, -1, 45, 10, -1, 46, + 10, -1, 128, 10, -1, 88, -1, 278, 279, -1, + -1, 280, -1, 282, -1, 281, -1, 284, -1, 285, + -1, 286, -1, 287, -1, 283, -1, 89, 10, -1, + 91, 10, -1, 90, 10, -1, 96, 10, -1, 92, + 10, -1, 93, 10, -1, 94, 10, -1, 95, 10, + -1, 138, -1, 289, 290, -1, -1, 291, -1, 292, + -1, 293, -1, 294, -1, 295, -1, 296, -1, 297, + -1, 298, -1, 299, -1, 300, -1, 301, -1, 302, + -1, 139, 10, -1, 140, 10, -1, 141, 10, -1, + 142, 10, -1, 143, 10, -1, 144, 10, -1, 145, + 10, -1, 146, 10, -1, 147, 10, -1, 148, 10, + -1, 149, 10, -1, 150, 10, -1, 104, -1, 304, + 305, -1, -1, 306, -1, 105, 10, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 122, 122, 122, 123, 123, 124, 124, 125, 125, - 129, 134, 135, 136, 136, 136, 137, 137, 138, 138, - 138, 139, 139, 139, 140, 140, 140, 141, 141, 142, - 142, 143, 143, 144, 144, 145, 145, 146, 146, 147, - 147, 148, 148, 149, 149, 149, 150, 150, 150, 151, - 151, 151, 152, 152, 153, 153, 154, 154, 155, 155, - 156, 156, 156, 157, 157, 158, 158, 159, 159, 159, - 160, 160, 161, 161, 162, 162, 163, 163, 163, 164, - 164, 165, 165, 166, 166, 167, 167, 168, 168, 169, - 169, 169, 170, 170, 171, 171, 171, 172, 172, 172, - 173, 173, 173, 174, 174, 174, 175, 175, 175, 176, - 176, 176, 177, 177, 177, 178, 178, 180, 192, 193, - 194, 194, 194, 194, 194, 196, 208, 209, 210, 210, - 210, 210, 212, 221, 230, 241, 250, 259, 268, 281, - 296, 305, 314, 323, 332, 341, 350, 359, 368, 377, - 386, 395, 404, 411, 418, 427, 436, 450, 459, 468, - 475, 482, 489, 497, 504, 511, 518, 525, 533, 541, - 549, 556, 563, 572, 581, 588, 595, 603, 611, 621, - 634, 645, 653, 666, 675, 684, 693, 703, 711, 724, - 733, 741, 750, 758, 771, 778, 788, 798, 808, 818, - 828, 838, 848, 855, 862, 871, 880, 889, 896, 906, - 923, 930, 948, 961, 974, 983, 992, 1001, 1011, 1021, - 1030, 1039, 1046, 1055, 1064, 1073, 1081, 1094, 1102, 1125, - 1132, 1147, 1157, 1167, 1174, 1181, 1190, 1200, 1207, 1214, - 1223, 1233, 1243, 1250, 1257, 1266, 1271, 1272, 1273, 1273, - 1273, 1274, 1274, 1274, 1275, 1275, 1277, 1287, 1296, 1303, - 1313, 1320, 1327, 1334, 1341, 1346, 1347, 1348, 1348, 1349, - 1349, 1350, 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1358, - 1366, 1373, 1381, 1389, 1396, 1403, 1412, 1421, 1430, 1439, - 1448, 1457, 1462, 1463, 1464, 1466 + 0, 123, 123, 123, 124, 124, 125, 125, 126, 126, + 130, 135, 136, 137, 137, 137, 138, 138, 139, 139, + 139, 140, 140, 140, 141, 141, 141, 142, 142, 143, + 143, 144, 144, 145, 145, 146, 146, 147, 147, 148, + 148, 149, 149, 150, 150, 150, 151, 151, 151, 152, + 152, 152, 153, 153, 154, 154, 155, 155, 156, 156, + 157, 157, 157, 158, 158, 159, 159, 160, 160, 160, + 161, 161, 162, 162, 163, 163, 164, 164, 164, 165, + 165, 166, 166, 167, 167, 168, 168, 169, 169, 170, + 170, 170, 171, 171, 172, 172, 172, 173, 173, 173, + 174, 174, 174, 175, 175, 175, 176, 176, 176, 177, + 177, 177, 178, 178, 178, 179, 179, 180, 182, 194, + 195, 196, 196, 196, 196, 196, 198, 210, 211, 212, + 212, 212, 212, 214, 223, 232, 243, 252, 261, 270, + 283, 298, 307, 316, 325, 334, 343, 352, 361, 370, + 379, 388, 397, 406, 413, 420, 429, 438, 452, 461, + 470, 477, 484, 491, 499, 506, 513, 520, 527, 535, + 543, 551, 558, 565, 574, 583, 590, 597, 605, 613, + 623, 636, 647, 655, 668, 677, 686, 695, 705, 713, + 726, 735, 743, 752, 760, 773, 782, 789, 799, 809, + 819, 829, 839, 849, 859, 866, 873, 882, 891, 900, + 907, 917, 934, 941, 959, 972, 985, 994, 1003, 1012, + 1022, 1032, 1041, 1050, 1057, 1066, 1075, 1084, 1092, 1105, + 1113, 1136, 1143, 1158, 1168, 1178, 1185, 1192, 1201, 1211, + 1218, 1225, 1234, 1244, 1254, 1261, 1268, 1277, 1282, 1283, + 1284, 1284, 1284, 1285, 1285, 1285, 1286, 1286, 1288, 1298, + 1307, 1314, 1324, 1331, 1338, 1345, 1352, 1357, 1358, 1359, + 1359, 1360, 1360, 1361, 1361, 1362, 1363, 1364, 1365, 1366, + 1367, 1369, 1377, 1384, 1392, 1400, 1407, 1414, 1423, 1432, + 1441, 1450, 1459, 1468, 1473, 1474, 1475, 1477 }; #endif @@ -949,8 +951,8 @@ static const char *const yytname[] = "VAR_SSL_SERVICE_PEM", "VAR_SSL_PORT", "VAR_FORWARD_FIRST", "VAR_STUB_FIRST", "VAR_MINIMAL_RESPONSES", "VAR_RRSET_ROUNDROBIN", "VAR_MAX_UDP_SIZE", "VAR_DELAY_CLOSE", "VAR_UNBLOCK_LAN_ZONES", - "VAR_DNS64_PREFIX", "VAR_DNS64_SYNTHALL", "VAR_DNSTAP", - "VAR_DNSTAP_ENABLE", "VAR_DNSTAP_SOCKET_PATH", + "VAR_INFRA_CACHE_MIN_RTT", "VAR_DNS64_PREFIX", "VAR_DNS64_SYNTHALL", + "VAR_DNSTAP", "VAR_DNSTAP_ENABLE", "VAR_DNSTAP_SOCKET_PATH", "VAR_DNSTAP_SEND_IDENTITY", "VAR_DNSTAP_SEND_VERSION", "VAR_DNSTAP_IDENTITY", "VAR_DNSTAP_VERSION", "VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES", @@ -986,17 +988,18 @@ static const char *const yytname[] = "server_rrset_cache_size", "server_rrset_cache_slabs", "server_infra_host_ttl", "server_infra_lame_ttl", "server_infra_cache_numhosts", "server_infra_cache_lame_size", - "server_infra_cache_slabs", "server_target_fetch_policy", - "server_harden_short_bufsize", "server_harden_large_queries", - "server_harden_glue", "server_harden_dnssec_stripped", - "server_harden_below_nxdomain", "server_harden_referral_path", - "server_use_caps_for_id", "server_private_address", - "server_private_domain", "server_prefetch", "server_prefetch_key", - "server_unwanted_reply_threshold", "server_do_not_query_address", - "server_do_not_query_localhost", "server_access_control", - "server_module_conf", "server_val_override_date", - "server_val_sig_skew_min", "server_val_sig_skew_max", - "server_cache_max_ttl", "server_cache_min_ttl", "server_bogus_ttl", + "server_infra_cache_slabs", "server_infra_cache_min_rtt", + "server_target_fetch_policy", "server_harden_short_bufsize", + "server_harden_large_queries", "server_harden_glue", + "server_harden_dnssec_stripped", "server_harden_below_nxdomain", + "server_harden_referral_path", "server_use_caps_for_id", + "server_private_address", "server_private_domain", "server_prefetch", + "server_prefetch_key", "server_unwanted_reply_threshold", + "server_do_not_query_address", "server_do_not_query_localhost", + "server_access_control", "server_module_conf", + "server_val_override_date", "server_val_sig_skew_min", + "server_val_sig_skew_max", "server_cache_max_ttl", + "server_cache_min_ttl", "server_bogus_ttl", "server_val_clean_additional", "server_val_permissive_mode", "server_ignore_cd_flag", "server_val_log_level", "server_val_nsec3_keysize_iterations", "server_add_holddown", @@ -1042,27 +1045,28 @@ static const yytype_uint16 yytoknum[] = 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404 + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 150, 151, 151, 152, 152, 152, 152, 152, 152, - 153, 154, 154, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 155, 155, 155, 155, 156, 157, 157, - 158, 158, 158, 158, 158, 159, 160, 160, 161, 161, - 161, 161, 162, 163, 164, 165, 166, 167, 168, 169, + 0, 151, 152, 152, 153, 153, 153, 153, 153, 153, + 154, 155, 155, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 157, 158, + 158, 159, 159, 159, 159, 159, 160, 161, 161, 162, + 162, 162, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, @@ -1073,12 +1077,12 @@ static const yytype_uint16 yyr1[] = 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 276, 277, 277, - 277, 277, 277, 277, 277, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 287, 288, 288, 288, - 288, 288, 288, 288, 288, 288, 288, 288, 288, 289, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 278, + 279, 279, 279, 279, 279, 279, 279, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 289, 290, + 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 302, 302, 303, 304 + 300, 301, 302, 303, 304, 304, 305, 306 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1095,25 +1099,25 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, - 1, 1, 1, 1, 1, 1, 2, 0, 1, 1, - 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 0, 1, 1, 1, 1, 1, 1, 2, 0, 1, + 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 1, 2, 0, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, - 2, 2, 2, 2, 1, 2, 0, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 1, 2, 0, 1, 2 + 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 1, 2, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 0, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 1, 2, 0, 1, 2 }; /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. @@ -1121,8 +1125,8 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 2, 0, 1, 10, 117, 125, 245, 291, 264, 3, - 12, 119, 127, 247, 266, 293, 4, 5, 6, 8, + 2, 0, 1, 10, 118, 126, 247, 293, 266, 3, + 12, 120, 128, 249, 268, 295, 4, 5, 6, 8, 9, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1133,131 +1137,131 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 11, 13, 14, 70, - 73, 82, 15, 21, 61, 16, 74, 75, 32, 54, - 69, 17, 18, 19, 20, 104, 105, 106, 107, 108, - 71, 60, 86, 103, 22, 23, 24, 25, 26, 62, - 76, 77, 92, 48, 58, 49, 87, 42, 43, 44, - 45, 96, 100, 112, 97, 55, 27, 28, 29, 84, - 113, 114, 30, 31, 33, 34, 36, 37, 35, 38, - 39, 40, 46, 65, 101, 79, 72, 80, 81, 98, - 99, 85, 41, 63, 66, 47, 50, 88, 89, 64, - 90, 51, 52, 53, 102, 91, 59, 93, 94, 95, - 56, 57, 78, 67, 68, 83, 109, 110, 111, 115, - 116, 0, 0, 0, 0, 0, 118, 120, 121, 122, - 124, 123, 0, 0, 0, 0, 126, 128, 129, 130, - 131, 0, 0, 0, 0, 0, 0, 0, 0, 246, - 248, 250, 249, 255, 251, 252, 253, 254, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 11, 13, 14, + 70, 73, 82, 15, 21, 61, 16, 74, 75, 32, + 54, 69, 17, 18, 19, 20, 104, 105, 106, 107, + 108, 71, 60, 86, 103, 22, 23, 24, 25, 26, + 62, 76, 77, 92, 48, 58, 49, 87, 42, 43, + 44, 45, 96, 100, 112, 97, 55, 27, 28, 29, + 84, 113, 114, 30, 31, 33, 34, 36, 37, 35, + 117, 38, 39, 40, 46, 65, 101, 79, 72, 80, + 81, 98, 99, 85, 41, 63, 66, 47, 50, 88, + 89, 64, 90, 51, 52, 53, 102, 91, 59, 93, + 94, 95, 56, 57, 78, 67, 68, 83, 109, 110, + 111, 115, 116, 0, 0, 0, 0, 0, 119, 121, + 122, 123, 125, 124, 0, 0, 0, 0, 127, 129, + 130, 131, 132, 0, 0, 0, 0, 0, 0, 0, + 0, 248, 250, 252, 251, 257, 253, 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 265, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 0, 292, 294, 133, 132, 137, 140, - 138, 146, 147, 148, 149, 159, 160, 161, 162, 163, - 181, 182, 183, 187, 188, 143, 189, 190, 193, 191, - 192, 194, 195, 196, 207, 172, 173, 174, 175, 197, - 210, 168, 170, 211, 216, 217, 218, 144, 180, 225, - 226, 169, 221, 156, 139, 164, 208, 214, 198, 0, - 0, 229, 145, 134, 155, 201, 135, 141, 142, 165, - 166, 227, 200, 202, 203, 136, 230, 184, 206, 157, - 171, 212, 213, 215, 220, 167, 224, 222, 223, 176, - 179, 204, 205, 177, 178, 199, 219, 158, 150, 151, - 152, 153, 154, 231, 232, 233, 185, 186, 234, 235, - 236, 237, 238, 240, 239, 241, 242, 243, 244, 256, - 258, 257, 260, 261, 262, 263, 259, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 295, - 209, 228 + 0, 0, 267, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 0, 294, 296, 134, 133, + 138, 141, 139, 147, 148, 149, 150, 160, 161, 162, + 163, 164, 182, 183, 184, 188, 189, 144, 190, 191, + 194, 192, 193, 196, 197, 198, 209, 173, 174, 175, + 176, 199, 212, 169, 171, 213, 218, 219, 220, 145, + 181, 227, 228, 170, 223, 157, 140, 165, 210, 216, + 200, 0, 0, 231, 146, 135, 156, 203, 136, 142, + 143, 166, 167, 229, 202, 204, 205, 137, 232, 185, + 208, 158, 172, 214, 215, 217, 222, 168, 226, 224, + 225, 177, 180, 206, 207, 178, 179, 201, 221, 159, + 151, 152, 153, 154, 155, 233, 234, 235, 186, 187, + 195, 236, 237, 238, 239, 240, 242, 241, 243, 244, + 245, 246, 258, 260, 259, 262, 263, 264, 265, 261, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 297, 211, 230 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 9, 10, 16, 126, 11, 17, 236, 12, - 18, 246, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 237, 238, 239, 240, - 241, 247, 248, 249, 250, 13, 19, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 14, 20, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 15, 21, 294, 295 + -1, 1, 9, 10, 16, 127, 11, 17, 238, 12, + 18, 248, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 239, 240, 241, + 242, 243, 249, 250, 251, 252, 13, 19, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 14, 20, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 15, 21, 296, 297 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -124 +#define YYPACT_NINF -125 static const yytype_int16 yypact[] = { - -124, 0, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, 93, -36, -32, -62, - -123, -103, -4, -3, -2, -1, 2, 25, 26, 27, + -125, 0, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, 93, -36, -32, -62, + -124, -103, -4, -3, -2, -1, 2, 25, 26, 27, 29, 30, 31, 32, 33, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 82, 84, 85, 87, 88, 89, 90, 91, 92, 120, - 121, 122, 123, 128, 129, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 183, 187, 188, 211, 212, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, 233, 234, 235, 236, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, 237, 238, 239, 240, 241, -124, -124, -124, -124, - -124, -124, 242, 243, 244, 245, -124, -124, -124, -124, - -124, 246, 247, 248, 249, 250, 251, 252, 253, -124, - -124, -124, -124, -124, -124, -124, -124, -124, 254, 255, + 121, 122, 123, 127, 129, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 183, 187, 188, 211, 212, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, 239, 240, 241, 242, 243, -125, -125, + -125, -125, -125, -125, 244, 245, 246, 247, -125, -125, + -125, -125, -125, 248, 249, 250, 251, 252, 253, 254, + 255, -125, -125, -125, -125, -125, -125, -125, -125, -125, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, 266, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, 267, - 268, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124 + 266, 267, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, 268, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, 269, 270, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124 + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, + -125, -125, -125, -125, -125, -125 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1266,38 +1270,39 @@ static const yytype_int8 yypgoto[] = #define YYTABLE_NINF -1 static const yytype_uint16 yytable[] = { - 2, 231, 293, 232, 233, 242, 296, 297, 298, 299, - 0, 3, 300, 243, 244, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 251, 252, 253, - 254, 255, 256, 257, 258, 301, 302, 303, 4, 304, - 305, 306, 307, 308, 5, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 234, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 6, 351, - 352, 353, 354, 235, 355, 356, 245, 357, 358, 359, - 360, 361, 362, 0, 7, 22, 23, 24, 25, 26, + 2, 233, 295, 234, 235, 244, 298, 299, 300, 301, + 0, 3, 302, 245, 246, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 253, 254, 255, + 256, 257, 258, 259, 260, 303, 304, 305, 4, 306, + 307, 308, 309, 310, 5, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 236, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 6, 353, + 354, 355, 356, 237, 357, 358, 247, 359, 360, 361, + 362, 363, 364, 0, 7, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 363, 364, 365, 366, 47, 48, 49, 8, 367, 368, + 365, 366, 367, 368, 47, 48, 49, 369, 8, 370, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 91, 92, 93, 378, 94, 95, 96, 379, 380, 97, + 90, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 91, 92, 93, 380, 94, 95, 96, 381, 382, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 381, 382, 119, 120, 121, 122, 123, 124, 125, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431 + 118, 383, 384, 119, 120, 121, 122, 123, 124, 125, + 126, 385, 386, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 434 }; #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-124))) + (!!((Yystate) == (-125))) #define yytable_value_is_error(Yytable_value) \ YYID (0) @@ -1305,8 +1310,8 @@ static const yytype_uint16 yytable[] = static const yytype_int16 yycheck[] = { 0, 37, 105, 39, 40, 37, 10, 10, 10, 10, - -1, 11, 10, 45, 46, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 89, 90, 91, + -1, 11, 10, 45, 46, 139, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 150, 89, 90, 91, 92, 93, 94, 95, 96, 10, 10, 10, 38, 10, 10, 10, 10, 10, 44, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, @@ -1317,7 +1322,7 @@ static const yytype_int16 yycheck[] = 10, 10, 10, -1, 104, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 10, 10, 10, 10, 41, 42, 43, 137, 10, 10, + 10, 10, 10, 10, 41, 42, 43, 10, 138, 10, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, @@ -1327,20 +1332,21 @@ static const yytype_int16 yycheck[] = 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 10, 10, 130, 131, 132, 133, 134, 135, 136, + 137, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, - 10, 10, 10, 10, 10, 10, 10, 10, 10 + 10 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 151, 0, 11, 38, 44, 88, 104, 137, 152, - 153, 156, 159, 275, 286, 301, 154, 157, 160, 276, - 287, 302, 12, 13, 14, 15, 16, 17, 18, 19, + 0, 152, 0, 11, 38, 44, 88, 104, 138, 153, + 154, 157, 160, 277, 288, 303, 155, 158, 161, 278, + 289, 304, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 41, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, @@ -1350,7 +1356,7 @@ static const yytype_uint16 yystos[] = 87, 97, 98, 99, 101, 102, 103, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 130, - 131, 132, 133, 134, 135, 136, 155, 162, 163, 164, + 131, 132, 133, 134, 135, 136, 137, 156, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, @@ -1361,13 +1367,13 @@ static const yytype_uint16 yystos[] = 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 37, 39, 40, 100, 129, 158, 266, 267, 268, - 269, 270, 37, 45, 46, 128, 161, 271, 272, 273, - 274, 89, 90, 91, 92, 93, 94, 95, 96, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 105, 303, 304, 10, 10, 10, 10, + 265, 266, 267, 37, 39, 40, 100, 129, 159, 268, + 269, 270, 271, 272, 37, 45, 46, 128, 162, 273, + 274, 275, 276, 89, 90, 91, 92, 93, 94, 95, + 96, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 302, 105, 305, 306, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, @@ -1381,7 +1387,7 @@ static const yytype_uint16 yystos[] = 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, - 10, 10 + 10, 10, 10, 10, 10 }; #define yyerrok (yyerrstatus = 0) @@ -2183,15 +2189,15 @@ yyreduce: { case 10: /* Line 1792 of yacc.c */ -#line 130 "./util/configparser.y" +#line 131 "./util/configparser.y" { OUTYY(("\nP(server:)\n")); } break; - case 117: + case 118: /* Line 1792 of yacc.c */ -#line 181 "./util/configparser.y" +#line 183 "./util/configparser.y" { struct config_stub* s; OUTYY(("\nP(stub_zone:)\n")); @@ -2204,9 +2210,9 @@ yyreduce: } break; - case 125: + case 126: /* Line 1792 of yacc.c */ -#line 197 "./util/configparser.y" +#line 199 "./util/configparser.y" { struct config_stub* s; OUTYY(("\nP(forward_zone:)\n")); @@ -2219,9 +2225,9 @@ yyreduce: } break; - case 132: + case 133: /* Line 1792 of yacc.c */ -#line 213 "./util/configparser.y" +#line 215 "./util/configparser.y" { OUTYY(("P(server_num_threads:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2231,9 +2237,9 @@ yyreduce: } break; - case 133: + case 134: /* Line 1792 of yacc.c */ -#line 222 "./util/configparser.y" +#line 224 "./util/configparser.y" { OUTYY(("P(server_verbosity:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2243,9 +2249,9 @@ yyreduce: } break; - case 134: + case 135: /* Line 1792 of yacc.c */ -#line 231 "./util/configparser.y" +#line 233 "./util/configparser.y" { OUTYY(("P(server_statistics_interval:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "") == 0 || strcmp((yyvsp[(2) - (2)].str), "0") == 0) @@ -2257,9 +2263,9 @@ yyreduce: } break; - case 135: + case 136: /* Line 1792 of yacc.c */ -#line 242 "./util/configparser.y" +#line 244 "./util/configparser.y" { OUTYY(("P(server_statistics_cumulative:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2269,9 +2275,9 @@ yyreduce: } break; - case 136: + case 137: /* Line 1792 of yacc.c */ -#line 251 "./util/configparser.y" +#line 253 "./util/configparser.y" { OUTYY(("P(server_extended_statistics:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2281,9 +2287,9 @@ yyreduce: } break; - case 137: + case 138: /* Line 1792 of yacc.c */ -#line 260 "./util/configparser.y" +#line 262 "./util/configparser.y" { OUTYY(("P(server_port:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2293,9 +2299,9 @@ yyreduce: } break; - case 138: + case 139: /* Line 1792 of yacc.c */ -#line 269 "./util/configparser.y" +#line 271 "./util/configparser.y" { OUTYY(("P(server_interface:%s)\n", (yyvsp[(2) - (2)].str))); if(cfg_parser->cfg->num_ifs == 0) @@ -2309,9 +2315,9 @@ yyreduce: } break; - case 139: + case 140: /* Line 1792 of yacc.c */ -#line 282 "./util/configparser.y" +#line 284 "./util/configparser.y" { OUTYY(("P(server_outgoing_interface:%s)\n", (yyvsp[(2) - (2)].str))); if(cfg_parser->cfg->num_out_ifs == 0) @@ -2327,9 +2333,9 @@ yyreduce: } break; - case 140: + case 141: /* Line 1792 of yacc.c */ -#line 297 "./util/configparser.y" +#line 299 "./util/configparser.y" { OUTYY(("P(server_outgoing_range:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2339,9 +2345,9 @@ yyreduce: } break; - case 141: + case 142: /* Line 1792 of yacc.c */ -#line 306 "./util/configparser.y" +#line 308 "./util/configparser.y" { OUTYY(("P(server_outgoing_port_permit:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_mark_ports((yyvsp[(2) - (2)].str), 1, @@ -2351,9 +2357,9 @@ yyreduce: } break; - case 142: + case 143: /* Line 1792 of yacc.c */ -#line 315 "./util/configparser.y" +#line 317 "./util/configparser.y" { OUTYY(("P(server_outgoing_port_avoid:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_mark_ports((yyvsp[(2) - (2)].str), 0, @@ -2363,9 +2369,9 @@ yyreduce: } break; - case 143: + case 144: /* Line 1792 of yacc.c */ -#line 324 "./util/configparser.y" +#line 326 "./util/configparser.y" { OUTYY(("P(server_outgoing_num_tcp:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2375,9 +2381,9 @@ yyreduce: } break; - case 144: + case 145: /* Line 1792 of yacc.c */ -#line 333 "./util/configparser.y" +#line 335 "./util/configparser.y" { OUTYY(("P(server_incoming_num_tcp:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2387,9 +2393,9 @@ yyreduce: } break; - case 145: + case 146: /* Line 1792 of yacc.c */ -#line 342 "./util/configparser.y" +#line 344 "./util/configparser.y" { OUTYY(("P(server_interface_automatic:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2399,9 +2405,9 @@ yyreduce: } break; - case 146: + case 147: /* Line 1792 of yacc.c */ -#line 351 "./util/configparser.y" +#line 353 "./util/configparser.y" { OUTYY(("P(server_do_ip4:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2411,9 +2417,9 @@ yyreduce: } break; - case 147: + case 148: /* Line 1792 of yacc.c */ -#line 360 "./util/configparser.y" +#line 362 "./util/configparser.y" { OUTYY(("P(server_do_ip6:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2423,9 +2429,9 @@ yyreduce: } break; - case 148: + case 149: /* Line 1792 of yacc.c */ -#line 369 "./util/configparser.y" +#line 371 "./util/configparser.y" { OUTYY(("P(server_do_udp:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2435,9 +2441,9 @@ yyreduce: } break; - case 149: + case 150: /* Line 1792 of yacc.c */ -#line 378 "./util/configparser.y" +#line 380 "./util/configparser.y" { OUTYY(("P(server_do_tcp:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2447,9 +2453,9 @@ yyreduce: } break; - case 150: + case 151: /* Line 1792 of yacc.c */ -#line 387 "./util/configparser.y" +#line 389 "./util/configparser.y" { OUTYY(("P(server_tcp_upstream:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2459,9 +2465,9 @@ yyreduce: } break; - case 151: + case 152: /* Line 1792 of yacc.c */ -#line 396 "./util/configparser.y" +#line 398 "./util/configparser.y" { OUTYY(("P(server_ssl_upstream:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2471,9 +2477,9 @@ yyreduce: } break; - case 152: + case 153: /* Line 1792 of yacc.c */ -#line 405 "./util/configparser.y" +#line 407 "./util/configparser.y" { OUTYY(("P(server_ssl_service_key:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->ssl_service_key); @@ -2481,9 +2487,9 @@ yyreduce: } break; - case 153: + case 154: /* Line 1792 of yacc.c */ -#line 412 "./util/configparser.y" +#line 414 "./util/configparser.y" { OUTYY(("P(server_ssl_service_pem:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->ssl_service_pem); @@ -2491,9 +2497,9 @@ yyreduce: } break; - case 154: + case 155: /* Line 1792 of yacc.c */ -#line 419 "./util/configparser.y" +#line 421 "./util/configparser.y" { OUTYY(("P(server_ssl_port:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2503,9 +2509,9 @@ yyreduce: } break; - case 155: + case 156: /* Line 1792 of yacc.c */ -#line 428 "./util/configparser.y" +#line 430 "./util/configparser.y" { OUTYY(("P(server_do_daemonize:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2515,9 +2521,9 @@ yyreduce: } break; - case 156: + case 157: /* Line 1792 of yacc.c */ -#line 437 "./util/configparser.y" +#line 439 "./util/configparser.y" { OUTYY(("P(server_use_syslog:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2532,9 +2538,9 @@ yyreduce: } break; - case 157: + case 158: /* Line 1792 of yacc.c */ -#line 451 "./util/configparser.y" +#line 453 "./util/configparser.y" { OUTYY(("P(server_log_time_ascii:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2544,9 +2550,9 @@ yyreduce: } break; - case 158: + case 159: /* Line 1792 of yacc.c */ -#line 460 "./util/configparser.y" +#line 462 "./util/configparser.y" { OUTYY(("P(server_log_queries:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2556,9 +2562,9 @@ yyreduce: } break; - case 159: + case 160: /* Line 1792 of yacc.c */ -#line 469 "./util/configparser.y" +#line 471 "./util/configparser.y" { OUTYY(("P(server_chroot:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->chrootdir); @@ -2566,9 +2572,9 @@ yyreduce: } break; - case 160: + case 161: /* Line 1792 of yacc.c */ -#line 476 "./util/configparser.y" +#line 478 "./util/configparser.y" { OUTYY(("P(server_username:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->username); @@ -2576,9 +2582,9 @@ yyreduce: } break; - case 161: + case 162: /* Line 1792 of yacc.c */ -#line 483 "./util/configparser.y" +#line 485 "./util/configparser.y" { OUTYY(("P(server_directory:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->directory); @@ -2586,9 +2592,9 @@ yyreduce: } break; - case 162: + case 163: /* Line 1792 of yacc.c */ -#line 490 "./util/configparser.y" +#line 492 "./util/configparser.y" { OUTYY(("P(server_logfile:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->logfile); @@ -2597,9 +2603,9 @@ yyreduce: } break; - case 163: + case 164: /* Line 1792 of yacc.c */ -#line 498 "./util/configparser.y" +#line 500 "./util/configparser.y" { OUTYY(("P(server_pidfile:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->pidfile); @@ -2607,9 +2613,9 @@ yyreduce: } break; - case 164: + case 165: /* Line 1792 of yacc.c */ -#line 505 "./util/configparser.y" +#line 507 "./util/configparser.y" { OUTYY(("P(server_root_hints:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->root_hints, (yyvsp[(2) - (2)].str))) @@ -2617,9 +2623,9 @@ yyreduce: } break; - case 165: + case 166: /* Line 1792 of yacc.c */ -#line 512 "./util/configparser.y" +#line 514 "./util/configparser.y" { OUTYY(("P(server_dlv_anchor_file:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->dlv_anchor_file); @@ -2627,9 +2633,9 @@ yyreduce: } break; - case 166: + case 167: /* Line 1792 of yacc.c */ -#line 519 "./util/configparser.y" +#line 521 "./util/configparser.y" { OUTYY(("P(server_dlv_anchor:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->dlv_anchor_list, (yyvsp[(2) - (2)].str))) @@ -2637,9 +2643,9 @@ yyreduce: } break; - case 167: + case 168: /* Line 1792 of yacc.c */ -#line 526 "./util/configparser.y" +#line 528 "./util/configparser.y" { OUTYY(("P(server_auto_trust_anchor_file:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg-> @@ -2648,9 +2654,9 @@ yyreduce: } break; - case 168: + case 169: /* Line 1792 of yacc.c */ -#line 534 "./util/configparser.y" +#line 536 "./util/configparser.y" { OUTYY(("P(server_trust_anchor_file:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg-> @@ -2659,9 +2665,9 @@ yyreduce: } break; - case 169: + case 170: /* Line 1792 of yacc.c */ -#line 542 "./util/configparser.y" +#line 544 "./util/configparser.y" { OUTYY(("P(server_trusted_keys_file:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg-> @@ -2670,9 +2676,9 @@ yyreduce: } break; - case 170: + case 171: /* Line 1792 of yacc.c */ -#line 550 "./util/configparser.y" +#line 552 "./util/configparser.y" { OUTYY(("P(server_trust_anchor:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->trust_anchor_list, (yyvsp[(2) - (2)].str))) @@ -2680,9 +2686,9 @@ yyreduce: } break; - case 171: + case 172: /* Line 1792 of yacc.c */ -#line 557 "./util/configparser.y" +#line 559 "./util/configparser.y" { OUTYY(("P(server_domain_insecure:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->domain_insecure, (yyvsp[(2) - (2)].str))) @@ -2690,9 +2696,9 @@ yyreduce: } break; - case 172: + case 173: /* Line 1792 of yacc.c */ -#line 564 "./util/configparser.y" +#line 566 "./util/configparser.y" { OUTYY(("P(server_hide_identity:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2702,9 +2708,9 @@ yyreduce: } break; - case 173: + case 174: /* Line 1792 of yacc.c */ -#line 573 "./util/configparser.y" +#line 575 "./util/configparser.y" { OUTYY(("P(server_hide_version:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2714,9 +2720,9 @@ yyreduce: } break; - case 174: + case 175: /* Line 1792 of yacc.c */ -#line 582 "./util/configparser.y" +#line 584 "./util/configparser.y" { OUTYY(("P(server_identity:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->identity); @@ -2724,9 +2730,9 @@ yyreduce: } break; - case 175: + case 176: /* Line 1792 of yacc.c */ -#line 589 "./util/configparser.y" +#line 591 "./util/configparser.y" { OUTYY(("P(server_version:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->version); @@ -2734,9 +2740,9 @@ yyreduce: } break; - case 176: + case 177: /* Line 1792 of yacc.c */ -#line 596 "./util/configparser.y" +#line 598 "./util/configparser.y" { OUTYY(("P(server_so_rcvbuf:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->so_rcvbuf)) @@ -2745,9 +2751,9 @@ yyreduce: } break; - case 177: + case 178: /* Line 1792 of yacc.c */ -#line 604 "./util/configparser.y" +#line 606 "./util/configparser.y" { OUTYY(("P(server_so_sndbuf:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->so_sndbuf)) @@ -2756,9 +2762,9 @@ yyreduce: } break; - case 178: + case 179: /* Line 1792 of yacc.c */ -#line 612 "./util/configparser.y" +#line 614 "./util/configparser.y" { OUTYY(("P(server_so_reuseport:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2769,9 +2775,9 @@ yyreduce: } break; - case 179: + case 180: /* Line 1792 of yacc.c */ -#line 622 "./util/configparser.y" +#line 624 "./util/configparser.y" { OUTYY(("P(server_edns_buffer_size:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2785,9 +2791,9 @@ yyreduce: } break; - case 180: + case 181: /* Line 1792 of yacc.c */ -#line 635 "./util/configparser.y" +#line 637 "./util/configparser.y" { OUTYY(("P(server_msg_buffer_size:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2799,9 +2805,9 @@ yyreduce: } break; - case 181: + case 182: /* Line 1792 of yacc.c */ -#line 646 "./util/configparser.y" +#line 648 "./util/configparser.y" { OUTYY(("P(server_msg_cache_size:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->msg_cache_size)) @@ -2810,9 +2816,9 @@ yyreduce: } break; - case 182: + case 183: /* Line 1792 of yacc.c */ -#line 654 "./util/configparser.y" +#line 656 "./util/configparser.y" { OUTYY(("P(server_msg_cache_slabs:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2826,9 +2832,9 @@ yyreduce: } break; - case 183: + case 184: /* Line 1792 of yacc.c */ -#line 667 "./util/configparser.y" +#line 669 "./util/configparser.y" { OUTYY(("P(server_num_queries_per_thread:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2838,9 +2844,9 @@ yyreduce: } break; - case 184: + case 185: /* Line 1792 of yacc.c */ -#line 676 "./util/configparser.y" +#line 678 "./util/configparser.y" { OUTYY(("P(server_jostle_timeout:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2850,9 +2856,9 @@ yyreduce: } break; - case 185: + case 186: /* Line 1792 of yacc.c */ -#line 685 "./util/configparser.y" +#line 687 "./util/configparser.y" { OUTYY(("P(server_delay_close:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2862,9 +2868,9 @@ yyreduce: } break; - case 186: + case 187: /* Line 1792 of yacc.c */ -#line 694 "./util/configparser.y" +#line 696 "./util/configparser.y" { OUTYY(("P(server_unblock_lan_zones:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2875,9 +2881,9 @@ yyreduce: } break; - case 187: + case 188: /* Line 1792 of yacc.c */ -#line 704 "./util/configparser.y" +#line 706 "./util/configparser.y" { OUTYY(("P(server_rrset_cache_size:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->rrset_cache_size)) @@ -2886,9 +2892,9 @@ yyreduce: } break; - case 188: + case 189: /* Line 1792 of yacc.c */ -#line 712 "./util/configparser.y" +#line 714 "./util/configparser.y" { OUTYY(("P(server_rrset_cache_slabs:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2902,9 +2908,9 @@ yyreduce: } break; - case 189: + case 190: /* Line 1792 of yacc.c */ -#line 725 "./util/configparser.y" +#line 727 "./util/configparser.y" { OUTYY(("P(server_infra_host_ttl:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -2914,9 +2920,9 @@ yyreduce: } break; - case 190: + case 191: /* Line 1792 of yacc.c */ -#line 734 "./util/configparser.y" +#line 736 "./util/configparser.y" { OUTYY(("P(server_infra_lame_ttl:%s)\n", (yyvsp[(2) - (2)].str))); verbose(VERB_DETAIL, "ignored infra-lame-ttl: %s (option " @@ -2925,9 +2931,9 @@ yyreduce: } break; - case 191: + case 192: /* Line 1792 of yacc.c */ -#line 742 "./util/configparser.y" +#line 744 "./util/configparser.y" { OUTYY(("P(server_infra_cache_numhosts:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2937,9 +2943,9 @@ yyreduce: } break; - case 192: + case 193: /* Line 1792 of yacc.c */ -#line 751 "./util/configparser.y" +#line 753 "./util/configparser.y" { OUTYY(("P(server_infra_cache_lame_size:%s)\n", (yyvsp[(2) - (2)].str))); verbose(VERB_DETAIL, "ignored infra-cache-lame-size: %s " @@ -2948,9 +2954,9 @@ yyreduce: } break; - case 193: + case 194: /* Line 1792 of yacc.c */ -#line 759 "./util/configparser.y" +#line 761 "./util/configparser.y" { OUTYY(("P(server_infra_cache_slabs:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -2964,9 +2970,21 @@ yyreduce: } break; - case 194: + case 195: +/* Line 1792 of yacc.c */ +#line 774 "./util/configparser.y" + { + OUTYY(("P(server_infra_cache_min_rtt:%s)\n", (yyvsp[(2) - (2)].str))); + if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) + yyerror("number expected"); + else cfg_parser->cfg->infra_cache_min_rtt = atoi((yyvsp[(2) - (2)].str)); + free((yyvsp[(2) - (2)].str)); + } + break; + + case 196: /* Line 1792 of yacc.c */ -#line 772 "./util/configparser.y" +#line 783 "./util/configparser.y" { OUTYY(("P(server_target_fetch_policy:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->target_fetch_policy); @@ -2974,9 +2992,9 @@ yyreduce: } break; - case 195: + case 197: /* Line 1792 of yacc.c */ -#line 779 "./util/configparser.y" +#line 790 "./util/configparser.y" { OUTYY(("P(server_harden_short_bufsize:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -2987,9 +3005,9 @@ yyreduce: } break; - case 196: + case 198: /* Line 1792 of yacc.c */ -#line 789 "./util/configparser.y" +#line 800 "./util/configparser.y" { OUTYY(("P(server_harden_large_queries:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3000,9 +3018,9 @@ yyreduce: } break; - case 197: + case 199: /* Line 1792 of yacc.c */ -#line 799 "./util/configparser.y" +#line 810 "./util/configparser.y" { OUTYY(("P(server_harden_glue:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3013,9 +3031,9 @@ yyreduce: } break; - case 198: + case 200: /* Line 1792 of yacc.c */ -#line 809 "./util/configparser.y" +#line 820 "./util/configparser.y" { OUTYY(("P(server_harden_dnssec_stripped:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3026,9 +3044,9 @@ yyreduce: } break; - case 199: + case 201: /* Line 1792 of yacc.c */ -#line 819 "./util/configparser.y" +#line 830 "./util/configparser.y" { OUTYY(("P(server_harden_below_nxdomain:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3039,9 +3057,9 @@ yyreduce: } break; - case 200: + case 202: /* Line 1792 of yacc.c */ -#line 829 "./util/configparser.y" +#line 840 "./util/configparser.y" { OUTYY(("P(server_harden_referral_path:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3052,9 +3070,9 @@ yyreduce: } break; - case 201: + case 203: /* Line 1792 of yacc.c */ -#line 839 "./util/configparser.y" +#line 850 "./util/configparser.y" { OUTYY(("P(server_use_caps_for_id:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3065,9 +3083,9 @@ yyreduce: } break; - case 202: + case 204: /* Line 1792 of yacc.c */ -#line 849 "./util/configparser.y" +#line 860 "./util/configparser.y" { OUTYY(("P(server_private_address:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->private_address, (yyvsp[(2) - (2)].str))) @@ -3075,9 +3093,9 @@ yyreduce: } break; - case 203: + case 205: /* Line 1792 of yacc.c */ -#line 856 "./util/configparser.y" +#line 867 "./util/configparser.y" { OUTYY(("P(server_private_domain:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->private_domain, (yyvsp[(2) - (2)].str))) @@ -3085,9 +3103,9 @@ yyreduce: } break; - case 204: + case 206: /* Line 1792 of yacc.c */ -#line 863 "./util/configparser.y" +#line 874 "./util/configparser.y" { OUTYY(("P(server_prefetch:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3097,9 +3115,9 @@ yyreduce: } break; - case 205: + case 207: /* Line 1792 of yacc.c */ -#line 872 "./util/configparser.y" +#line 883 "./util/configparser.y" { OUTYY(("P(server_prefetch_key:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3109,9 +3127,9 @@ yyreduce: } break; - case 206: + case 208: /* Line 1792 of yacc.c */ -#line 881 "./util/configparser.y" +#line 892 "./util/configparser.y" { OUTYY(("P(server_unwanted_reply_threshold:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3121,9 +3139,9 @@ yyreduce: } break; - case 207: + case 209: /* Line 1792 of yacc.c */ -#line 890 "./util/configparser.y" +#line 901 "./util/configparser.y" { OUTYY(("P(server_do_not_query_address:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->donotqueryaddrs, (yyvsp[(2) - (2)].str))) @@ -3131,9 +3149,9 @@ yyreduce: } break; - case 208: + case 210: /* Line 1792 of yacc.c */ -#line 897 "./util/configparser.y" +#line 908 "./util/configparser.y" { OUTYY(("P(server_do_not_query_localhost:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3144,9 +3162,9 @@ yyreduce: } break; - case 209: + case 211: /* Line 1792 of yacc.c */ -#line 907 "./util/configparser.y" +#line 918 "./util/configparser.y" { OUTYY(("P(server_access_control:%s %s)\n", (yyvsp[(2) - (3)].str), (yyvsp[(3) - (3)].str))); if(strcmp((yyvsp[(3) - (3)].str), "deny")!=0 && strcmp((yyvsp[(3) - (3)].str), "refuse")!=0 && @@ -3164,9 +3182,9 @@ yyreduce: } break; - case 210: + case 212: /* Line 1792 of yacc.c */ -#line 924 "./util/configparser.y" +#line 935 "./util/configparser.y" { OUTYY(("P(server_module_conf:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->module_conf); @@ -3174,9 +3192,9 @@ yyreduce: } break; - case 211: + case 213: /* Line 1792 of yacc.c */ -#line 931 "./util/configparser.y" +#line 942 "./util/configparser.y" { OUTYY(("P(server_val_override_date:%s)\n", (yyvsp[(2) - (2)].str))); if(strlen((yyvsp[(2) - (2)].str)) == 0 || strcmp((yyvsp[(2) - (2)].str), "0") == 0) { @@ -3195,9 +3213,9 @@ yyreduce: } break; - case 212: + case 214: /* Line 1792 of yacc.c */ -#line 949 "./util/configparser.y" +#line 960 "./util/configparser.y" { OUTYY(("P(server_val_sig_skew_min:%s)\n", (yyvsp[(2) - (2)].str))); if(strlen((yyvsp[(2) - (2)].str)) == 0 || strcmp((yyvsp[(2) - (2)].str), "0") == 0) { @@ -3211,9 +3229,9 @@ yyreduce: } break; - case 213: + case 215: /* Line 1792 of yacc.c */ -#line 962 "./util/configparser.y" +#line 973 "./util/configparser.y" { OUTYY(("P(server_val_sig_skew_max:%s)\n", (yyvsp[(2) - (2)].str))); if(strlen((yyvsp[(2) - (2)].str)) == 0 || strcmp((yyvsp[(2) - (2)].str), "0") == 0) { @@ -3227,9 +3245,9 @@ yyreduce: } break; - case 214: + case 216: /* Line 1792 of yacc.c */ -#line 975 "./util/configparser.y" +#line 986 "./util/configparser.y" { OUTYY(("P(server_cache_max_ttl:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3239,9 +3257,9 @@ yyreduce: } break; - case 215: + case 217: /* Line 1792 of yacc.c */ -#line 984 "./util/configparser.y" +#line 995 "./util/configparser.y" { OUTYY(("P(server_cache_min_ttl:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3251,9 +3269,9 @@ yyreduce: } break; - case 216: + case 218: /* Line 1792 of yacc.c */ -#line 993 "./util/configparser.y" +#line 1004 "./util/configparser.y" { OUTYY(("P(server_bogus_ttl:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3263,9 +3281,9 @@ yyreduce: } break; - case 217: + case 219: /* Line 1792 of yacc.c */ -#line 1002 "./util/configparser.y" +#line 1013 "./util/configparser.y" { OUTYY(("P(server_val_clean_additional:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3276,9 +3294,9 @@ yyreduce: } break; - case 218: + case 220: /* Line 1792 of yacc.c */ -#line 1012 "./util/configparser.y" +#line 1023 "./util/configparser.y" { OUTYY(("P(server_val_permissive_mode:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3289,9 +3307,9 @@ yyreduce: } break; - case 219: + case 221: /* Line 1792 of yacc.c */ -#line 1022 "./util/configparser.y" +#line 1033 "./util/configparser.y" { OUTYY(("P(server_ignore_cd_flag:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3301,9 +3319,9 @@ yyreduce: } break; - case 220: + case 222: /* Line 1792 of yacc.c */ -#line 1031 "./util/configparser.y" +#line 1042 "./util/configparser.y" { OUTYY(("P(server_val_log_level:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3313,9 +3331,9 @@ yyreduce: } break; - case 221: + case 223: /* Line 1792 of yacc.c */ -#line 1040 "./util/configparser.y" +#line 1051 "./util/configparser.y" { OUTYY(("P(server_val_nsec3_keysize_iterations:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->val_nsec3_key_iterations); @@ -3323,9 +3341,9 @@ yyreduce: } break; - case 222: + case 224: /* Line 1792 of yacc.c */ -#line 1047 "./util/configparser.y" +#line 1058 "./util/configparser.y" { OUTYY(("P(server_add_holddown:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3335,9 +3353,9 @@ yyreduce: } break; - case 223: + case 225: /* Line 1792 of yacc.c */ -#line 1056 "./util/configparser.y" +#line 1067 "./util/configparser.y" { OUTYY(("P(server_del_holddown:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3347,9 +3365,9 @@ yyreduce: } break; - case 224: + case 226: /* Line 1792 of yacc.c */ -#line 1065 "./util/configparser.y" +#line 1076 "./util/configparser.y" { OUTYY(("P(server_keep_missing:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0 && strcmp((yyvsp[(2) - (2)].str), "0") != 0) @@ -3359,9 +3377,9 @@ yyreduce: } break; - case 225: + case 227: /* Line 1792 of yacc.c */ -#line 1074 "./util/configparser.y" +#line 1085 "./util/configparser.y" { OUTYY(("P(server_key_cache_size:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->key_cache_size)) @@ -3370,9 +3388,9 @@ yyreduce: } break; - case 226: + case 228: /* Line 1792 of yacc.c */ -#line 1082 "./util/configparser.y" +#line 1093 "./util/configparser.y" { OUTYY(("P(server_key_cache_slabs:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -3386,9 +3404,9 @@ yyreduce: } break; - case 227: + case 229: /* Line 1792 of yacc.c */ -#line 1095 "./util/configparser.y" +#line 1106 "./util/configparser.y" { OUTYY(("P(server_neg_cache_size:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_parse_memsize((yyvsp[(2) - (2)].str), &cfg_parser->cfg->neg_cache_size)) @@ -3397,9 +3415,9 @@ yyreduce: } break; - case 228: + case 230: /* Line 1792 of yacc.c */ -#line 1103 "./util/configparser.y" +#line 1114 "./util/configparser.y" { OUTYY(("P(server_local_zone:%s %s)\n", (yyvsp[(2) - (3)].str), (yyvsp[(3) - (3)].str))); if(strcmp((yyvsp[(3) - (3)].str), "static")!=0 && strcmp((yyvsp[(3) - (3)].str), "deny")!=0 && @@ -3423,9 +3441,9 @@ yyreduce: } break; - case 229: + case 231: /* Line 1792 of yacc.c */ -#line 1126 "./util/configparser.y" +#line 1137 "./util/configparser.y" { OUTYY(("P(server_local_data:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->local_data, (yyvsp[(2) - (2)].str))) @@ -3433,9 +3451,9 @@ yyreduce: } break; - case 230: + case 232: /* Line 1792 of yacc.c */ -#line 1133 "./util/configparser.y" +#line 1144 "./util/configparser.y" { char* ptr; OUTYY(("P(server_local_data_ptr:%s)\n", (yyvsp[(2) - (2)].str))); @@ -3451,9 +3469,9 @@ yyreduce: } break; - case 231: + case 233: /* Line 1792 of yacc.c */ -#line 1148 "./util/configparser.y" +#line 1159 "./util/configparser.y" { OUTYY(("P(server_minimal_responses:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3464,9 +3482,9 @@ yyreduce: } break; - case 232: + case 234: /* Line 1792 of yacc.c */ -#line 1158 "./util/configparser.y" +#line 1169 "./util/configparser.y" { OUTYY(("P(server_rrset_roundrobin:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3477,9 +3495,9 @@ yyreduce: } break; - case 233: + case 235: /* Line 1792 of yacc.c */ -#line 1168 "./util/configparser.y" +#line 1179 "./util/configparser.y" { OUTYY(("P(server_max_udp_size:%s)\n", (yyvsp[(2) - (2)].str))); cfg_parser->cfg->max_udp_size = atoi((yyvsp[(2) - (2)].str)); @@ -3487,9 +3505,9 @@ yyreduce: } break; - case 234: + case 236: /* Line 1792 of yacc.c */ -#line 1175 "./util/configparser.y" +#line 1186 "./util/configparser.y" { OUTYY(("P(dns64_prefix:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->dns64_prefix); @@ -3497,9 +3515,9 @@ yyreduce: } break; - case 235: + case 237: /* Line 1792 of yacc.c */ -#line 1182 "./util/configparser.y" +#line 1193 "./util/configparser.y" { OUTYY(("P(server_dns64_synthall:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3509,9 +3527,9 @@ yyreduce: } break; - case 236: + case 238: /* Line 1792 of yacc.c */ -#line 1191 "./util/configparser.y" +#line 1202 "./util/configparser.y" { OUTYY(("P(name:%s)\n", (yyvsp[(2) - (2)].str))); if(cfg_parser->cfg->stubs->name) @@ -3522,9 +3540,9 @@ yyreduce: } break; - case 237: + case 239: /* Line 1792 of yacc.c */ -#line 1201 "./util/configparser.y" +#line 1212 "./util/configparser.y" { OUTYY(("P(stub-host:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->stubs->hosts, (yyvsp[(2) - (2)].str))) @@ -3532,9 +3550,9 @@ yyreduce: } break; - case 238: + case 240: /* Line 1792 of yacc.c */ -#line 1208 "./util/configparser.y" +#line 1219 "./util/configparser.y" { OUTYY(("P(stub-addr:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->stubs->addrs, (yyvsp[(2) - (2)].str))) @@ -3542,9 +3560,9 @@ yyreduce: } break; - case 239: + case 241: /* Line 1792 of yacc.c */ -#line 1215 "./util/configparser.y" +#line 1226 "./util/configparser.y" { OUTYY(("P(stub-first:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3554,9 +3572,9 @@ yyreduce: } break; - case 240: + case 242: /* Line 1792 of yacc.c */ -#line 1224 "./util/configparser.y" +#line 1235 "./util/configparser.y" { OUTYY(("P(stub-prime:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3567,9 +3585,9 @@ yyreduce: } break; - case 241: + case 243: /* Line 1792 of yacc.c */ -#line 1234 "./util/configparser.y" +#line 1245 "./util/configparser.y" { OUTYY(("P(name:%s)\n", (yyvsp[(2) - (2)].str))); if(cfg_parser->cfg->forwards->name) @@ -3580,9 +3598,9 @@ yyreduce: } break; - case 242: + case 244: /* Line 1792 of yacc.c */ -#line 1244 "./util/configparser.y" +#line 1255 "./util/configparser.y" { OUTYY(("P(forward-host:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->forwards->hosts, (yyvsp[(2) - (2)].str))) @@ -3590,9 +3608,9 @@ yyreduce: } break; - case 243: + case 245: /* Line 1792 of yacc.c */ -#line 1251 "./util/configparser.y" +#line 1262 "./util/configparser.y" { OUTYY(("P(forward-addr:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->forwards->addrs, (yyvsp[(2) - (2)].str))) @@ -3600,9 +3618,9 @@ yyreduce: } break; - case 244: + case 246: /* Line 1792 of yacc.c */ -#line 1258 "./util/configparser.y" +#line 1269 "./util/configparser.y" { OUTYY(("P(forward-first:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3612,17 +3630,17 @@ yyreduce: } break; - case 245: + case 247: /* Line 1792 of yacc.c */ -#line 1267 "./util/configparser.y" +#line 1278 "./util/configparser.y" { OUTYY(("\nP(remote-control:)\n")); } break; - case 256: + case 258: /* Line 1792 of yacc.c */ -#line 1278 "./util/configparser.y" +#line 1289 "./util/configparser.y" { OUTYY(("P(control_enable:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3633,9 +3651,9 @@ yyreduce: } break; - case 257: + case 259: /* Line 1792 of yacc.c */ -#line 1288 "./util/configparser.y" +#line 1299 "./util/configparser.y" { OUTYY(("P(control_port:%s)\n", (yyvsp[(2) - (2)].str))); if(atoi((yyvsp[(2) - (2)].str)) == 0) @@ -3645,9 +3663,9 @@ yyreduce: } break; - case 258: + case 260: /* Line 1792 of yacc.c */ -#line 1297 "./util/configparser.y" +#line 1308 "./util/configparser.y" { OUTYY(("P(control_interface:%s)\n", (yyvsp[(2) - (2)].str))); if(!cfg_strlist_insert(&cfg_parser->cfg->control_ifs, (yyvsp[(2) - (2)].str))) @@ -3655,9 +3673,9 @@ yyreduce: } break; - case 259: + case 261: /* Line 1792 of yacc.c */ -#line 1304 "./util/configparser.y" +#line 1315 "./util/configparser.y" { OUTYY(("P(control_use_cert:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3668,9 +3686,9 @@ yyreduce: } break; - case 260: + case 262: /* Line 1792 of yacc.c */ -#line 1314 "./util/configparser.y" +#line 1325 "./util/configparser.y" { OUTYY(("P(rc_server_key_file:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->server_key_file); @@ -3678,9 +3696,9 @@ yyreduce: } break; - case 261: + case 263: /* Line 1792 of yacc.c */ -#line 1321 "./util/configparser.y" +#line 1332 "./util/configparser.y" { OUTYY(("P(rc_server_cert_file:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->server_cert_file); @@ -3688,9 +3706,9 @@ yyreduce: } break; - case 262: + case 264: /* Line 1792 of yacc.c */ -#line 1328 "./util/configparser.y" +#line 1339 "./util/configparser.y" { OUTYY(("P(rc_control_key_file:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->control_key_file); @@ -3698,9 +3716,9 @@ yyreduce: } break; - case 263: + case 265: /* Line 1792 of yacc.c */ -#line 1335 "./util/configparser.y" +#line 1346 "./util/configparser.y" { OUTYY(("P(rc_control_cert_file:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->control_cert_file); @@ -3708,17 +3726,17 @@ yyreduce: } break; - case 264: + case 266: /* Line 1792 of yacc.c */ -#line 1342 "./util/configparser.y" +#line 1353 "./util/configparser.y" { OUTYY(("\nP(dnstap:)\n")); } break; - case 279: + case 281: /* Line 1792 of yacc.c */ -#line 1359 "./util/configparser.y" +#line 1370 "./util/configparser.y" { OUTYY(("P(dt_dnstap_enable:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3727,9 +3745,9 @@ yyreduce: } break; - case 280: + case 282: /* Line 1792 of yacc.c */ -#line 1367 "./util/configparser.y" +#line 1378 "./util/configparser.y" { OUTYY(("P(dt_dnstap_socket_path:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->dnstap_socket_path); @@ -3737,9 +3755,9 @@ yyreduce: } break; - case 281: + case 283: /* Line 1792 of yacc.c */ -#line 1374 "./util/configparser.y" +#line 1385 "./util/configparser.y" { OUTYY(("P(dt_dnstap_send_identity:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3748,9 +3766,9 @@ yyreduce: } break; - case 282: + case 284: /* Line 1792 of yacc.c */ -#line 1382 "./util/configparser.y" +#line 1393 "./util/configparser.y" { OUTYY(("P(dt_dnstap_send_version:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3759,9 +3777,9 @@ yyreduce: } break; - case 283: + case 285: /* Line 1792 of yacc.c */ -#line 1390 "./util/configparser.y" +#line 1401 "./util/configparser.y" { OUTYY(("P(dt_dnstap_identity:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->dnstap_identity); @@ -3769,9 +3787,9 @@ yyreduce: } break; - case 284: + case 286: /* Line 1792 of yacc.c */ -#line 1397 "./util/configparser.y" +#line 1408 "./util/configparser.y" { OUTYY(("P(dt_dnstap_version:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->dnstap_version); @@ -3779,9 +3797,9 @@ yyreduce: } break; - case 285: + case 287: /* Line 1792 of yacc.c */ -#line 1404 "./util/configparser.y" +#line 1415 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_resolver_query_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3791,9 +3809,9 @@ yyreduce: } break; - case 286: + case 288: /* Line 1792 of yacc.c */ -#line 1413 "./util/configparser.y" +#line 1424 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_resolver_response_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3803,9 +3821,9 @@ yyreduce: } break; - case 287: + case 289: /* Line 1792 of yacc.c */ -#line 1422 "./util/configparser.y" +#line 1433 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_client_query_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3815,9 +3833,9 @@ yyreduce: } break; - case 288: + case 290: /* Line 1792 of yacc.c */ -#line 1431 "./util/configparser.y" +#line 1442 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_client_response_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3827,9 +3845,9 @@ yyreduce: } break; - case 289: + case 291: /* Line 1792 of yacc.c */ -#line 1440 "./util/configparser.y" +#line 1451 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_forwarder_query_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3839,9 +3857,9 @@ yyreduce: } break; - case 290: + case 292: /* Line 1792 of yacc.c */ -#line 1449 "./util/configparser.y" +#line 1460 "./util/configparser.y" { OUTYY(("P(dt_dnstap_log_forwarder_response_messages:%s)\n", (yyvsp[(2) - (2)].str))); if(strcmp((yyvsp[(2) - (2)].str), "yes") != 0 && strcmp((yyvsp[(2) - (2)].str), "no") != 0) @@ -3851,17 +3869,17 @@ yyreduce: } break; - case 291: + case 293: /* Line 1792 of yacc.c */ -#line 1458 "./util/configparser.y" +#line 1469 "./util/configparser.y" { OUTYY(("\nP(python:)\n")); } break; - case 295: + case 297: /* Line 1792 of yacc.c */ -#line 1467 "./util/configparser.y" +#line 1478 "./util/configparser.y" { OUTYY(("P(python-script:%s)\n", (yyvsp[(2) - (2)].str))); free(cfg_parser->cfg->python_script); @@ -3871,7 +3889,7 @@ yyreduce: /* Line 1792 of yacc.c */ -#line 3875 "util/configparser.c" +#line 3893 "util/configparser.c" default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -4103,7 +4121,7 @@ yyreturn: /* Line 2055 of yacc.c */ -#line 1472 "./util/configparser.y" +#line 1483 "./util/configparser.y" /* parse helper routines could be here */ diff --git a/util/configparser.h b/util/configparser.h index dfb668d8e..ec321093a 100644 --- a/util/configparser.h +++ b/util/configparser.h @@ -178,21 +178,22 @@ extern int yydebug; VAR_MAX_UDP_SIZE = 387, VAR_DELAY_CLOSE = 388, VAR_UNBLOCK_LAN_ZONES = 389, - VAR_DNS64_PREFIX = 390, - VAR_DNS64_SYNTHALL = 391, - VAR_DNSTAP = 392, - VAR_DNSTAP_ENABLE = 393, - VAR_DNSTAP_SOCKET_PATH = 394, - VAR_DNSTAP_SEND_IDENTITY = 395, - VAR_DNSTAP_SEND_VERSION = 396, - VAR_DNSTAP_IDENTITY = 397, - VAR_DNSTAP_VERSION = 398, - VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES = 399, - VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES = 400, - VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES = 401, - VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES = 402, - VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES = 403, - VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES = 404 + VAR_INFRA_CACHE_MIN_RTT = 390, + VAR_DNS64_PREFIX = 391, + VAR_DNS64_SYNTHALL = 392, + VAR_DNSTAP = 393, + VAR_DNSTAP_ENABLE = 394, + VAR_DNSTAP_SOCKET_PATH = 395, + VAR_DNSTAP_SEND_IDENTITY = 396, + VAR_DNSTAP_SEND_VERSION = 397, + VAR_DNSTAP_IDENTITY = 398, + VAR_DNSTAP_VERSION = 399, + VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES = 400, + VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES = 401, + VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES = 402, + VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES = 403, + VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES = 404, + VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES = 405 }; #endif /* Tokens. */ @@ -328,21 +329,22 @@ extern int yydebug; #define VAR_MAX_UDP_SIZE 387 #define VAR_DELAY_CLOSE 388 #define VAR_UNBLOCK_LAN_ZONES 389 -#define VAR_DNS64_PREFIX 390 -#define VAR_DNS64_SYNTHALL 391 -#define VAR_DNSTAP 392 -#define VAR_DNSTAP_ENABLE 393 -#define VAR_DNSTAP_SOCKET_PATH 394 -#define VAR_DNSTAP_SEND_IDENTITY 395 -#define VAR_DNSTAP_SEND_VERSION 396 -#define VAR_DNSTAP_IDENTITY 397 -#define VAR_DNSTAP_VERSION 398 -#define VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES 399 -#define VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES 400 -#define VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES 401 -#define VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES 402 -#define VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES 403 -#define VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES 404 +#define VAR_INFRA_CACHE_MIN_RTT 390 +#define VAR_DNS64_PREFIX 391 +#define VAR_DNS64_SYNTHALL 392 +#define VAR_DNSTAP 393 +#define VAR_DNSTAP_ENABLE 394 +#define VAR_DNSTAP_SOCKET_PATH 395 +#define VAR_DNSTAP_SEND_IDENTITY 396 +#define VAR_DNSTAP_SEND_VERSION 397 +#define VAR_DNSTAP_IDENTITY 398 +#define VAR_DNSTAP_VERSION 399 +#define VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES 400 +#define VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES 401 +#define VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES 402 +#define VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES 403 +#define VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES 404 +#define VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES 405 @@ -356,7 +358,7 @@ typedef union YYSTYPE /* Line 2058 of yacc.c */ -#line 360 "util/configparser.h" +#line 362 "util/configparser.h" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ diff --git a/util/configparser.y b/util/configparser.y index a2657bc07..396ea3c64 100644 --- a/util/configparser.y +++ b/util/configparser.y @@ -107,6 +107,7 @@ extern struct config_parser_state* cfg_parser; %token VAR_SSL_SERVICE_KEY VAR_SSL_SERVICE_PEM VAR_SSL_PORT VAR_FORWARD_FIRST %token VAR_STUB_FIRST VAR_MINIMAL_RESPONSES VAR_RRSET_ROUNDROBIN %token VAR_MAX_UDP_SIZE VAR_DELAY_CLOSE VAR_UNBLOCK_LAN_ZONES +%token VAR_INFRA_CACHE_MIN_RTT %token VAR_DNS64_PREFIX VAR_DNS64_SYNTHALL %token VAR_DNSTAP VAR_DNSTAP_ENABLE VAR_DNSTAP_SOCKET_PATH %token VAR_DNSTAP_SEND_IDENTITY VAR_DNSTAP_SEND_VERSION @@ -175,7 +176,8 @@ content_server: server_num_threads | server_verbosity | server_port | server_ssl_service_key | server_ssl_service_pem | server_ssl_port | server_minimal_responses | server_rrset_roundrobin | server_max_udp_size | server_so_reuseport | server_delay_close | server_unblock_lan_zones | - server_dns64_prefix | server_dns64_synthall + server_dns64_prefix | server_dns64_synthall | + server_infra_cache_min_rtt ; stubstart: VAR_STUB_ZONE { @@ -768,6 +770,15 @@ server_infra_cache_slabs: VAR_INFRA_CACHE_SLABS STRING_ARG free($2); } ; +server_infra_cache_min_rtt: VAR_INFRA_CACHE_MIN_RTT STRING_ARG + { + OUTYY(("P(server_infra_cache_min_rtt:%s)\n", $2)); + if(atoi($2) == 0 && strcmp($2, "0") != 0) + yyerror("number expected"); + else cfg_parser->cfg->infra_cache_min_rtt = atoi($2); + free($2); + } + ; server_target_fetch_policy: VAR_TARGET_FETCH_POLICY STRING_ARG { OUTYY(("P(server_target_fetch_policy:%s)\n", $2)); diff --git a/util/rtt.c b/util/rtt.c index 4b44fca50..5d86f1337 100644 --- a/util/rtt.c +++ b/util/rtt.c @@ -42,6 +42,8 @@ #include "config.h" #include "util/rtt.h" +/* overwritten by config: infra_cache_min_rtt: */ +int RTT_MIN_TIMEOUT = 50; /** calculate RTO from rtt information */ static int calc_rto(const struct rtt_info* rtt) diff --git a/util/rtt.h b/util/rtt.h index 57e904d14..d6da98606 100644 --- a/util/rtt.h +++ b/util/rtt.h @@ -56,7 +56,7 @@ struct rtt_info { }; /** min retransmit timeout value, in milliseconds */ -#define RTT_MIN_TIMEOUT 50 +extern int RTT_MIN_TIMEOUT; /** max retransmit timeout value, in milliseconds */ #define RTT_MAX_TIMEOUT 120000