45#ifndef YY_PARSER4_DHCP4_PARSER_H_INCLUDED
46# define YY_PARSER4_DHCP4_PARSER_H_INCLUDED
48#line 17 "dhcp4_parser.yy"
53#include <boost/lexical_cast.hpp>
60#line 61 "dhcp4_parser.h"
69#if defined __cplusplus
70# define YY_CPLUSPLUS __cplusplus
72# define YY_CPLUSPLUS 199711L
76#if 201103L <= YY_CPLUSPLUS
77# define YY_MOVE std::move
78# define YY_MOVE_OR_COPY move
79# define YY_MOVE_REF(Type) Type&&
80# define YY_RVREF(Type) Type&&
81# define YY_COPY(Type) Type
84# define YY_MOVE_OR_COPY copy
85# define YY_MOVE_REF(Type) Type&
86# define YY_RVREF(Type) const Type&
87# define YY_COPY(Type) const Type&
91#if 201103L <= YY_CPLUSPLUS
92# define YY_NOEXCEPT noexcept
96# define YY_NOTHROW throw ()
100#if 201703 <= YY_CPLUSPLUS
101# define YY_CONSTEXPR constexpr
105# include "location.hh"
107#ifndef PARSER4__ASSERT
109# define PARSER4__ASSERT assert
113#ifndef YY_ATTRIBUTE_PURE
114# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
115# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
117# define YY_ATTRIBUTE_PURE
121#ifndef YY_ATTRIBUTE_UNUSED
122# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
123# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
125# define YY_ATTRIBUTE_UNUSED
130#if ! defined lint || defined __GNUC__
131# define YY_USE(E) ((void) (E))
137#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
138# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
139# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
140 _Pragma ("GCC diagnostic push") \
141 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
143# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
144 _Pragma ("GCC diagnostic push") \
145 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
146 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
148# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
149 _Pragma ("GCC diagnostic pop")
151# define YY_INITIAL_VALUE(Value) Value
153#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
154# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
155# define YY_IGNORE_MAYBE_UNINITIALIZED_END
157#ifndef YY_INITIAL_VALUE
158# define YY_INITIAL_VALUE(Value)
161#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
162# define YY_IGNORE_USELESS_CAST_BEGIN \
163 _Pragma ("GCC diagnostic push") \
164 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
165# define YY_IGNORE_USELESS_CAST_END \
166 _Pragma ("GCC diagnostic pop")
168#ifndef YY_IGNORE_USELESS_CAST_BEGIN
169# define YY_IGNORE_USELESS_CAST_BEGIN
170# define YY_IGNORE_USELESS_CAST_END
175# define YY_CAST(Type, Val) static_cast<Type> (Val)
176# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
178# define YY_CAST(Type, Val) ((Type) (Val))
179# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
183# if defined __cplusplus
184# if 201103L <= __cplusplus
185# define YY_NULLPTR nullptr
190# define YY_NULLPTR ((void*)0)
198# define PARSER4_DEBUG 1
200# define PARSER4_DEBUG 0
203# define PARSER4_DEBUG 1
207#line 14 "dhcp4_parser.yy"
208namespace isc {
namespace dhcp {
209#line 210 "dhcp4_parser.h"
220# pragma GCC message "bison: do not #define PARSER4_STYPE in C++, use %define api.value.type"
238 , yytypeid_ (YY_NULLPTR)
242 template <
typename T>
244 : yytypeid_ (&typeid (T))
247 new (yyas_<T> ()) T (
YY_MOVE (t));
250#if 201103L <= YY_CPLUSPLUS
263# if 201103L <= YY_CPLUSPLUS
265 template <
typename T,
typename... U>
271 yytypeid_ = &
typeid (T);
272 return *
new (yyas_<T> ()) T (std::forward <U>(u)...);
276 template <
typename T>
282 yytypeid_ = &
typeid (T);
283 return *
new (yyas_<T> ()) T ();
287 template <
typename T>
293 yytypeid_ = &
typeid (T);
294 return *
new (yyas_<T> ()) T (t);
300 template <
typename T>
304 return emplace<T> ();
309 template <
typename T>
313 return emplace<T> (t);
317 template <
typename T>
328 template <
typename T>
346 template <
typename T>
352 std::swap (as<T> (), that.as<T> ());
358 template <
typename T>
362# if 201103L <= YY_CPLUSPLUS
363 emplace<T> (std::move (that.
as<T> ()));
371# if 201103L <= YY_CPLUSPLUS
373 template <
typename T>
377 emplace<T> (std::move (that.as<T> ()));
383 template <
typename T>
387 emplace<T> (that.
as<T> ());
391 template <
typename T>
396 yytypeid_ = YY_NULLPTR;
400#if YY_CPLUSPLUS < 201103L
408 template <
typename T>
413 return static_cast<T*
> (yyp);
417 template <
typename T>
422 return static_cast<const T*
> (yyp);
440 char dummy2[
sizeof (bool)];
443 char dummy3[
sizeof (double)];
446 char dummy4[
sizeof (int64_t)];
449 char dummy5[
sizeof (std::string)];
453 enum { size =
sizeof (union_type) };
465 const std::type_info *yytypeid_;
479 : std::runtime_error (m)
484 : std::runtime_error (s.what ())
498 TOKEN_PARSER4_EMPTY = -2,
500 TOKEN_PARSER4_error = 256,
501 TOKEN_PARSER4_UNDEF = 257,
504 TOKEN_LSQUARE_BRACKET = 260,
505 TOKEN_RSQUARE_BRACKET = 261,
506 TOKEN_LCURLY_BRACKET = 262,
507 TOKEN_RCURLY_BRACKET = 263,
508 TOKEN_NULL_TYPE = 264,
510 TOKEN_CONFIG_CONTROL = 266,
511 TOKEN_CONFIG_DATABASES = 267,
512 TOKEN_CONFIG_FETCH_WAIT_TIME = 268,
513 TOKEN_INTERFACES_CONFIG = 269,
514 TOKEN_INTERFACES = 270,
515 TOKEN_DHCP_SOCKET_TYPE = 271,
518 TOKEN_OUTBOUND_INTERFACE = 274,
519 TOKEN_SAME_AS_INBOUND = 275,
520 TOKEN_USE_ROUTING = 276,
521 TOKEN_RE_DETECT = 277,
522 TOKEN_SERVICE_SOCKETS_REQUIRE_ALL = 278,
523 TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME = 279,
524 TOKEN_SERVICE_SOCKETS_MAX_RETRIES = 280,
525 TOKEN_SANITY_CHECKS = 281,
526 TOKEN_LEASE_CHECKS = 282,
527 TOKEN_ECHO_CLIENT_ID = 283,
528 TOKEN_MATCH_CLIENT_ID = 284,
529 TOKEN_AUTHORITATIVE = 285,
530 TOKEN_NEXT_SERVER = 286,
531 TOKEN_SERVER_HOSTNAME = 287,
532 TOKEN_BOOT_FILE_NAME = 288,
533 TOKEN_LEASE_DATABASE = 289,
534 TOKEN_HOSTS_DATABASE = 290,
535 TOKEN_HOSTS_DATABASES = 291,
539 TOKEN_POSTGRESQL = 295,
541 TOKEN_PASSWORD = 297,
545 TOKEN_LFC_INTERVAL = 301,
546 TOKEN_READONLY = 302,
547 TOKEN_CONNECT_TIMEOUT = 303,
548 TOKEN_MAX_RECONNECT_TRIES = 304,
549 TOKEN_RECONNECT_WAIT_TIME = 305,
551 TOKEN_STOP_RETRY_EXIT = 307,
552 TOKEN_SERVE_RETRY_EXIT = 308,
553 TOKEN_SERVE_RETRY_CONTINUE = 309,
554 TOKEN_MAX_ROW_ERRORS = 310,
555 TOKEN_TRUST_ANCHOR = 311,
556 TOKEN_CERT_FILE = 312,
557 TOKEN_KEY_FILE = 313,
558 TOKEN_CIPHER_LIST = 314,
559 TOKEN_VALID_LIFETIME = 315,
560 TOKEN_MIN_VALID_LIFETIME = 316,
561 TOKEN_MAX_VALID_LIFETIME = 317,
562 TOKEN_RENEW_TIMER = 318,
563 TOKEN_REBIND_TIMER = 319,
564 TOKEN_CALCULATE_TEE_TIMES = 320,
565 TOKEN_T1_PERCENT = 321,
566 TOKEN_T2_PERCENT = 322,
567 TOKEN_CACHE_THRESHOLD = 323,
568 TOKEN_CACHE_MAX_AGE = 324,
569 TOKEN_DECLINE_PROBATION_PERIOD = 325,
570 TOKEN_SERVER_TAG = 326,
571 TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT = 327,
572 TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE = 328,
573 TOKEN_DDNS_SEND_UPDATES = 329,
574 TOKEN_DDNS_OVERRIDE_NO_UPDATE = 330,
575 TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE = 331,
576 TOKEN_DDNS_REPLACE_CLIENT_NAME = 332,
577 TOKEN_DDNS_GENERATED_PREFIX = 333,
578 TOKEN_DDNS_QUALIFYING_SUFFIX = 334,
579 TOKEN_DDNS_UPDATE_ON_RENEW = 335,
580 TOKEN_DDNS_USE_CONFLICT_RESOLUTION = 336,
581 TOKEN_STORE_EXTENDED_INFO = 337,
583 TOKEN_SUBNET_4O6_INTERFACE = 339,
584 TOKEN_SUBNET_4O6_INTERFACE_ID = 340,
585 TOKEN_SUBNET_4O6_SUBNET = 341,
586 TOKEN_OPTION_DEF = 342,
587 TOKEN_OPTION_DATA = 343,
592 TOKEN_CSV_FORMAT = 348,
593 TOKEN_ALWAYS_SEND = 349,
594 TOKEN_RECORD_TYPES = 350,
595 TOKEN_ENCAPSULATE = 351,
597 TOKEN_PARKED_PACKET_LIMIT = 353,
598 TOKEN_SHARED_NETWORKS = 354,
601 TOKEN_USER_CONTEXT = 357,
604 TOKEN_INTERFACE = 360,
606 TOKEN_RESERVATION_MODE = 362,
607 TOKEN_DISABLED = 363,
608 TOKEN_OUT_OF_POOL = 364,
611 TOKEN_RESERVATIONS_GLOBAL = 367,
612 TOKEN_RESERVATIONS_IN_SUBNET = 368,
613 TOKEN_RESERVATIONS_OUT_OF_POOL = 369,
614 TOKEN_HOST_RESERVATION_IDENTIFIERS = 370,
615 TOKEN_CLIENT_CLASSES = 371,
616 TOKEN_REQUIRE_CLIENT_CLASSES = 372,
618 TOKEN_ONLY_IF_REQUIRED = 374,
619 TOKEN_CLIENT_CLASS = 375,
620 TOKEN_RESERVATIONS = 376,
622 TOKEN_HW_ADDRESS = 378,
623 TOKEN_CIRCUIT_ID = 379,
624 TOKEN_CLIENT_ID = 380,
625 TOKEN_HOSTNAME = 381,
628 TOKEN_IP_ADDRESS = 384,
629 TOKEN_IP_ADDRESSES = 385,
630 TOKEN_HOOKS_LIBRARIES = 386,
632 TOKEN_PARAMETERS = 388,
633 TOKEN_EXPIRED_LEASES_PROCESSING = 389,
634 TOKEN_RECLAIM_TIMER_WAIT_TIME = 390,
635 TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 391,
636 TOKEN_HOLD_RECLAIMED_TIME = 392,
637 TOKEN_MAX_RECLAIM_LEASES = 393,
638 TOKEN_MAX_RECLAIM_TIME = 394,
639 TOKEN_UNWARNED_RECLAIM_CYCLES = 395,
640 TOKEN_DHCP4O6_PORT = 396,
641 TOKEN_DHCP_MULTI_THREADING = 397,
642 TOKEN_ENABLE_MULTI_THREADING = 398,
643 TOKEN_THREAD_POOL_SIZE = 399,
644 TOKEN_PACKET_QUEUE_SIZE = 400,
645 TOKEN_CONTROL_SOCKET = 401,
646 TOKEN_SOCKET_TYPE = 402,
647 TOKEN_SOCKET_NAME = 403,
648 TOKEN_DHCP_QUEUE_CONTROL = 404,
649 TOKEN_ENABLE_QUEUE = 405,
650 TOKEN_QUEUE_TYPE = 406,
651 TOKEN_CAPACITY = 407,
652 TOKEN_DHCP_DDNS = 408,
653 TOKEN_ENABLE_UPDATES = 409,
654 TOKEN_QUALIFYING_SUFFIX = 410,
655 TOKEN_SERVER_IP = 411,
656 TOKEN_SERVER_PORT = 412,
657 TOKEN_SENDER_IP = 413,
658 TOKEN_SENDER_PORT = 414,
659 TOKEN_MAX_QUEUE_SIZE = 415,
660 TOKEN_NCR_PROTOCOL = 416,
661 TOKEN_NCR_FORMAT = 417,
662 TOKEN_OVERRIDE_NO_UPDATE = 418,
663 TOKEN_OVERRIDE_CLIENT_UPDATE = 419,
664 TOKEN_REPLACE_CLIENT_NAME = 420,
665 TOKEN_GENERATED_PREFIX = 421,
668 TOKEN_WHEN_PRESENT = 424,
671 TOKEN_WHEN_NOT_PRESENT = 427,
672 TOKEN_HOSTNAME_CHAR_SET = 428,
673 TOKEN_HOSTNAME_CHAR_REPLACEMENT = 429,
674 TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 430,
675 TOKEN_IP_RESERVATIONS_UNIQUE = 431,
676 TOKEN_RESERVATIONS_LOOKUP_FIRST = 432,
678 TOKEN_OUTPUT_OPTIONS = 434,
680 TOKEN_DEBUGLEVEL = 436,
681 TOKEN_SEVERITY = 437,
686 TOKEN_COMPATIBILITY = 442,
687 TOKEN_LENIENT_OPTION_PARSING = 443,
688 TOKEN_TOPLEVEL_JSON = 444,
689 TOKEN_TOPLEVEL_DHCP4 = 445,
690 TOKEN_SUB_DHCP4 = 446,
691 TOKEN_SUB_INTERFACES4 = 447,
692 TOKEN_SUB_SUBNET4 = 448,
693 TOKEN_SUB_POOL4 = 449,
694 TOKEN_SUB_RESERVATION = 450,
695 TOKEN_SUB_OPTION_DEFS = 451,
696 TOKEN_SUB_OPTION_DEF = 452,
697 TOKEN_SUB_OPTION_DATA = 453,
698 TOKEN_SUB_HOOKS_LIBRARY = 454,
699 TOKEN_SUB_DHCP_DDNS = 455,
700 TOKEN_SUB_CONFIG_CONTROL = 456,
728 S_LSQUARE_BRACKET = 5,
729 S_RSQUARE_BRACKET = 6,
730 S_LCURLY_BRACKET = 7,
731 S_RCURLY_BRACKET = 8,
734 S_CONFIG_CONTROL = 11,
735 S_CONFIG_DATABASES = 12,
736 S_CONFIG_FETCH_WAIT_TIME = 13,
737 S_INTERFACES_CONFIG = 14,
739 S_DHCP_SOCKET_TYPE = 16,
742 S_OUTBOUND_INTERFACE = 19,
743 S_SAME_AS_INBOUND = 20,
746 S_SERVICE_SOCKETS_REQUIRE_ALL = 23,
747 S_SERVICE_SOCKETS_RETRY_WAIT_TIME = 24,
748 S_SERVICE_SOCKETS_MAX_RETRIES = 25,
749 S_SANITY_CHECKS = 26,
751 S_ECHO_CLIENT_ID = 28,
752 S_MATCH_CLIENT_ID = 29,
753 S_AUTHORITATIVE = 30,
755 S_SERVER_HOSTNAME = 32,
756 S_BOOT_FILE_NAME = 33,
757 S_LEASE_DATABASE = 34,
758 S_HOSTS_DATABASE = 35,
759 S_HOSTS_DATABASES = 36,
771 S_CONNECT_TIMEOUT = 48,
772 S_MAX_RECONNECT_TRIES = 49,
773 S_RECONNECT_WAIT_TIME = 50,
775 S_STOP_RETRY_EXIT = 52,
776 S_SERVE_RETRY_EXIT = 53,
777 S_SERVE_RETRY_CONTINUE = 54,
778 S_MAX_ROW_ERRORS = 55,
783 S_VALID_LIFETIME = 60,
784 S_MIN_VALID_LIFETIME = 61,
785 S_MAX_VALID_LIFETIME = 62,
788 S_CALCULATE_TEE_TIMES = 65,
791 S_CACHE_THRESHOLD = 68,
792 S_CACHE_MAX_AGE = 69,
793 S_DECLINE_PROBATION_PERIOD = 70,
795 S_STATISTIC_DEFAULT_SAMPLE_COUNT = 72,
796 S_STATISTIC_DEFAULT_SAMPLE_AGE = 73,
797 S_DDNS_SEND_UPDATES = 74,
798 S_DDNS_OVERRIDE_NO_UPDATE = 75,
799 S_DDNS_OVERRIDE_CLIENT_UPDATE = 76,
800 S_DDNS_REPLACE_CLIENT_NAME = 77,
801 S_DDNS_GENERATED_PREFIX = 78,
802 S_DDNS_QUALIFYING_SUFFIX = 79,
803 S_DDNS_UPDATE_ON_RENEW = 80,
804 S_DDNS_USE_CONFLICT_RESOLUTION = 81,
805 S_STORE_EXTENDED_INFO = 82,
807 S_SUBNET_4O6_INTERFACE = 84,
808 S_SUBNET_4O6_INTERFACE_ID = 85,
809 S_SUBNET_4O6_SUBNET = 86,
821 S_PARKED_PACKET_LIMIT = 98,
822 S_SHARED_NETWORKS = 99,
825 S_USER_CONTEXT = 102,
830 S_RESERVATION_MODE = 107,
835 S_RESERVATIONS_GLOBAL = 112,
836 S_RESERVATIONS_IN_SUBNET = 113,
837 S_RESERVATIONS_OUT_OF_POOL = 114,
838 S_HOST_RESERVATION_IDENTIFIERS = 115,
839 S_CLIENT_CLASSES = 116,
840 S_REQUIRE_CLIENT_CLASSES = 117,
842 S_ONLY_IF_REQUIRED = 119,
843 S_CLIENT_CLASS = 120,
844 S_RESERVATIONS = 121,
853 S_IP_ADDRESSES = 130,
854 S_HOOKS_LIBRARIES = 131,
857 S_EXPIRED_LEASES_PROCESSING = 134,
858 S_RECLAIM_TIMER_WAIT_TIME = 135,
859 S_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 136,
860 S_HOLD_RECLAIMED_TIME = 137,
861 S_MAX_RECLAIM_LEASES = 138,
862 S_MAX_RECLAIM_TIME = 139,
863 S_UNWARNED_RECLAIM_CYCLES = 140,
864 S_DHCP4O6_PORT = 141,
865 S_DHCP_MULTI_THREADING = 142,
866 S_ENABLE_MULTI_THREADING = 143,
867 S_THREAD_POOL_SIZE = 144,
868 S_PACKET_QUEUE_SIZE = 145,
869 S_CONTROL_SOCKET = 146,
872 S_DHCP_QUEUE_CONTROL = 149,
873 S_ENABLE_QUEUE = 150,
877 S_ENABLE_UPDATES = 154,
878 S_QUALIFYING_SUFFIX = 155,
883 S_MAX_QUEUE_SIZE = 160,
884 S_NCR_PROTOCOL = 161,
886 S_OVERRIDE_NO_UPDATE = 163,
887 S_OVERRIDE_CLIENT_UPDATE = 164,
888 S_REPLACE_CLIENT_NAME = 165,
889 S_GENERATED_PREFIX = 166,
892 S_WHEN_PRESENT = 169,
895 S_WHEN_NOT_PRESENT = 172,
896 S_HOSTNAME_CHAR_SET = 173,
897 S_HOSTNAME_CHAR_REPLACEMENT = 174,
898 S_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 175,
899 S_IP_RESERVATIONS_UNIQUE = 176,
900 S_RESERVATIONS_LOOKUP_FIRST = 177,
902 S_OUTPUT_OPTIONS = 179,
910 S_COMPATIBILITY = 187,
911 S_LENIENT_OPTION_PARSING = 188,
912 S_TOPLEVEL_JSON = 189,
913 S_TOPLEVEL_DHCP4 = 190,
915 S_SUB_INTERFACES4 = 192,
918 S_SUB_RESERVATION = 195,
919 S_SUB_OPTION_DEFS = 196,
920 S_SUB_OPTION_DEF = 197,
921 S_SUB_OPTION_DATA = 198,
922 S_SUB_HOOKS_LIBRARY = 199,
923 S_SUB_DHCP_DDNS = 200,
924 S_SUB_CONFIG_CONTROL = 201,
950 S_not_empty_map = 227,
951 S_list_generic = 228,
953 S_list_content = 230,
954 S_not_empty_list = 231,
955 S_list_strings = 232,
957 S_list_strings_content = 234,
958 S_not_empty_list_strings = 235,
959 S_unknown_map_entry = 236,
962 S_global_object = 239,
964 S_global_object_comma = 241,
967 S_global_params = 244,
968 S_global_param = 245,
969 S_valid_lifetime = 246,
970 S_min_valid_lifetime = 247,
971 S_max_valid_lifetime = 248,
973 S_rebind_timer = 250,
974 S_calculate_tee_times = 251,
977 S_cache_threshold = 254,
978 S_cache_max_age = 255,
979 S_decline_probation_period = 256,
982 S_parked_packet_limit = 259,
983 S_echo_client_id = 260,
984 S_match_client_id = 261,
985 S_authoritative = 262,
986 S_ddns_send_updates = 263,
987 S_ddns_override_no_update = 264,
988 S_ddns_override_client_update = 265,
989 S_ddns_replace_client_name = 266,
991 S_ddns_replace_client_name_value = 268,
992 S_ddns_generated_prefix = 269,
994 S_ddns_qualifying_suffix = 271,
996 S_ddns_update_on_renew = 273,
997 S_ddns_use_conflict_resolution = 274,
998 S_hostname_char_set = 275,
1000 S_hostname_char_replacement = 277,
1002 S_store_extended_info = 279,
1003 S_statistic_default_sample_count = 280,
1004 S_statistic_default_sample_age = 281,
1005 S_early_global_reservations_lookup = 282,
1006 S_ip_reservations_unique = 283,
1007 S_reservations_lookup_first = 284,
1008 S_interfaces_config = 285,
1010 S_interfaces_config_params = 287,
1011 S_interfaces_config_param = 288,
1012 S_sub_interfaces4 = 289,
1014 S_interfaces_list = 291,
1016 S_dhcp_socket_type = 293,
1018 S_socket_type = 295,
1019 S_outbound_interface = 296,
1021 S_outbound_interface_value = 298,
1023 S_service_sockets_require_all = 300,
1024 S_service_sockets_retry_wait_time = 301,
1025 S_service_sockets_max_retries = 302,
1026 S_lease_database = 303,
1028 S_sanity_checks = 305,
1030 S_sanity_checks_params = 307,
1031 S_sanity_checks_param = 308,
1032 S_lease_checks = 309,
1034 S_hosts_database = 311,
1036 S_hosts_databases = 313,
1038 S_database_list = 315,
1039 S_not_empty_database_list = 316,
1042 S_database_map_params = 319,
1043 S_database_map_param = 320,
1044 S_database_type = 321,
1057 S_lfc_interval = 334,
1059 S_connect_timeout = 336,
1060 S_max_reconnect_tries = 337,
1061 S_reconnect_wait_time = 338,
1064 S_on_fail_mode = 341,
1065 S_max_row_errors = 342,
1066 S_trust_anchor = 343,
1072 S_cipher_list = 349,
1074 S_host_reservation_identifiers = 351,
1076 S_host_reservation_identifiers_list = 353,
1077 S_host_reservation_identifier = 354,
1079 S_hw_address_id = 356,
1083 S_dhcp_multi_threading = 360,
1085 S_multi_threading_params = 362,
1086 S_multi_threading_param = 363,
1087 S_enable_multi_threading = 364,
1088 S_thread_pool_size = 365,
1089 S_packet_queue_size = 366,
1090 S_hooks_libraries = 367,
1092 S_hooks_libraries_list = 369,
1093 S_not_empty_hooks_libraries_list = 370,
1094 S_hooks_library = 371,
1096 S_sub_hooks_library = 373,
1098 S_hooks_params = 375,
1099 S_hooks_param = 376,
1104 S_expired_leases_processing = 381,
1106 S_expired_leases_params = 383,
1107 S_expired_leases_param = 384,
1108 S_reclaim_timer_wait_time = 385,
1109 S_flush_reclaimed_timer_wait_time = 386,
1110 S_hold_reclaimed_time = 387,
1111 S_max_reclaim_leases = 388,
1112 S_max_reclaim_time = 389,
1113 S_unwarned_reclaim_cycles = 390,
1114 S_subnet4_list = 391,
1116 S_subnet4_list_content = 393,
1117 S_not_empty_subnet4_list = 394,
1120 S_sub_subnet4 = 397,
1122 S_subnet4_params = 399,
1123 S_subnet4_param = 400,
1126 S_subnet_4o6_interface = 403,
1128 S_subnet_4o6_interface_id = 405,
1130 S_subnet_4o6_subnet = 407,
1134 S_client_class = 411,
1136 S_require_client_classes = 413,
1138 S_reservations_global = 415,
1139 S_reservations_in_subnet = 416,
1140 S_reservations_out_of_pool = 417,
1141 S_reservation_mode = 418,
1145 S_shared_networks = 422,
1147 S_shared_networks_content = 424,
1148 S_shared_networks_list = 425,
1149 S_shared_network = 426,
1151 S_shared_network_params = 428,
1152 S_shared_network_param = 429,
1153 S_option_def_list = 430,
1155 S_sub_option_def_list = 432,
1157 S_option_def_list_content = 434,
1158 S_not_empty_option_def_list = 435,
1159 S_option_def_entry = 436,
1161 S_sub_option_def = 438,
1163 S_option_def_params = 440,
1164 S_not_empty_option_def_params = 441,
1165 S_option_def_param = 442,
1166 S_option_def_name = 443,
1168 S_option_def_code = 445,
1169 S_option_def_type = 446,
1171 S_option_def_record_types = 448,
1175 S_option_def_space = 452,
1176 S_option_def_encapsulate = 453,
1178 S_option_def_array = 455,
1179 S_option_data_list = 456,
1181 S_option_data_list_content = 458,
1182 S_not_empty_option_data_list = 459,
1183 S_option_data_entry = 460,
1185 S_sub_option_data = 462,
1187 S_option_data_params = 464,
1188 S_not_empty_option_data_params = 465,
1189 S_option_data_param = 466,
1190 S_option_data_name = 467,
1191 S_option_data_data = 468,
1193 S_option_data_code = 470,
1194 S_option_data_space = 471,
1195 S_option_data_csv_format = 472,
1196 S_option_data_always_send = 473,
1199 S_pools_list_content = 476,
1200 S_not_empty_pools_list = 477,
1201 S_pool_list_entry = 478,
1205 S_pool_params = 482,
1209 S_user_context = 486,
1213 S_reservations = 490,
1215 S_reservations_list = 492,
1216 S_not_empty_reservations_list = 493,
1217 S_reservation = 494,
1219 S_sub_reservation = 496,
1221 S_reservation_params = 498,
1222 S_not_empty_reservation_params = 499,
1223 S_reservation_param = 500,
1224 S_next_server = 501,
1226 S_server_hostname = 503,
1228 S_boot_file_name = 505,
1232 S_ip_addresses = 509,
1238 S_client_id_value = 515,
1240 S_circuit_id_value = 517,
1242 S_flex_id_value = 519,
1246 S_reservation_client_classes = 523,
1251 S_client_classes = 528,
1253 S_client_classes_list = 530,
1254 S_client_class_entry = 531,
1256 S_client_class_params = 533,
1257 S_not_empty_client_class_params = 534,
1258 S_client_class_param = 535,
1259 S_client_class_name = 536,
1260 S_client_class_test = 537,
1262 S_only_if_required = 539,
1263 S_dhcp4o6_port = 540,
1264 S_control_socket = 541,
1266 S_control_socket_params = 543,
1267 S_control_socket_param = 544,
1268 S_control_socket_type = 545,
1270 S_control_socket_name = 547,
1272 S_dhcp_queue_control = 549,
1274 S_queue_control_params = 551,
1275 S_queue_control_param = 552,
1276 S_enable_queue = 553,
1280 S_arbitrary_map_entry = 557,
1284 S_sub_dhcp_ddns = 561,
1286 S_dhcp_ddns_params = 563,
1287 S_dhcp_ddns_param = 564,
1288 S_enable_updates = 565,
1291 S_server_port = 568,
1294 S_sender_port = 571,
1295 S_max_queue_size = 572,
1296 S_ncr_protocol = 573,
1298 S_ncr_protocol_value = 575,
1301 S_dep_qualifying_suffix = 578,
1303 S_dep_override_no_update = 580,
1304 S_dep_override_client_update = 581,
1305 S_dep_replace_client_name = 582,
1307 S_dep_generated_prefix = 584,
1309 S_dep_hostname_char_set = 586,
1311 S_dep_hostname_char_replacement = 588,
1313 S_config_control = 590,
1315 S_sub_config_control = 592,
1317 S_config_control_params = 594,
1318 S_config_control_param = 595,
1319 S_config_databases = 596,
1321 S_config_fetch_wait_time = 598,
1324 S_loggers_entries = 601,
1325 S_logger_entry = 602,
1327 S_logger_params = 604,
1328 S_logger_param = 605,
1332 S_output_options_list = 609,
1334 S_output_options_list_content = 611,
1335 S_output_entry = 612,
1337 S_output_params_list = 614,
1338 S_output_params = 615,
1346 S_compatibility = 623,
1348 S_compatibility_params = 625,
1349 S_compatibility_param = 626,
1350 S_lenient_option_parsing = 627
1366 template <
typename Base>
1378#if 201103L <= YY_CPLUSPLUS
1381 : Base (std::move (that))
1385 switch (this->kind ())
1396 value.move<
ElementPtr > (std::move (that.value));
1400 value.move<
bool > (std::move (that.value));
1404 value.move<
double > (std::move (that.value));
1408 value.move< int64_t > (std::move (that.value));
1412 value.move< std::string > (std::move (that.value));
1423 basic_symbol (
const basic_symbol& that);
1426#if 201103L <= YY_CPLUSPLUS
1427 basic_symbol (
typename Base::kind_type t,
location_type&& l)
1438#if 201103L <= YY_CPLUSPLUS
1441 , value (std::move (v))
1452#if 201103L <= YY_CPLUSPLUS
1455 , value (std::move (v))
1466#if 201103L <= YY_CPLUSPLUS
1469 , value (std::move (v))
1480#if 201103L <= YY_CPLUSPLUS
1483 , value (std::move (v))
1494#if 201103L <= YY_CPLUSPLUS
1497 , value (std::move (v))
1541 value.template destroy< ElementPtr > ();
1545 value.template destroy< bool > ();
1549 value.template destroy< double > ();
1553 value.template destroy< int64_t > ();
1557 value.template destroy< std::string > ();
1589#if YY_CPLUSPLUS < 201103L
1604#if 201103L <= YY_CPLUSPLUS
1648#if 201103L <= YY_CPLUSPLUS
1656#if !defined _MSC_VER || defined __clang__
1661#if 201103L <= YY_CPLUSPLUS
1669#if !defined _MSC_VER || defined __clang__
1673#if 201103L <= YY_CPLUSPLUS
1681#if !defined _MSC_VER || defined __clang__
1685#if 201103L <= YY_CPLUSPLUS
1693#if !defined _MSC_VER || defined __clang__
1697#if 201103L <= YY_CPLUSPLUS
1705#if !defined _MSC_VER || defined __clang__
1715#if 201103L <= YY_CPLUSPLUS
1728 virtual int parse ();
1757#if 201103L <= YY_CPLUSPLUS
1772#if 201103L <= YY_CPLUSPLUS
1787#if 201103L <= YY_CPLUSPLUS
1802#if 201103L <= YY_CPLUSPLUS
1817#if 201103L <= YY_CPLUSPLUS
1832#if 201103L <= YY_CPLUSPLUS
1847#if 201103L <= YY_CPLUSPLUS
1862#if 201103L <= YY_CPLUSPLUS
1877#if 201103L <= YY_CPLUSPLUS
1892#if 201103L <= YY_CPLUSPLUS
1907#if 201103L <= YY_CPLUSPLUS
1922#if 201103L <= YY_CPLUSPLUS
1937#if 201103L <= YY_CPLUSPLUS
1952#if 201103L <= YY_CPLUSPLUS
1967#if 201103L <= YY_CPLUSPLUS
1982#if 201103L <= YY_CPLUSPLUS
1997#if 201103L <= YY_CPLUSPLUS
2012#if 201103L <= YY_CPLUSPLUS
2027#if 201103L <= YY_CPLUSPLUS
2042#if 201103L <= YY_CPLUSPLUS
2057#if 201103L <= YY_CPLUSPLUS
2072#if 201103L <= YY_CPLUSPLUS
2087#if 201103L <= YY_CPLUSPLUS
2102#if 201103L <= YY_CPLUSPLUS
2117#if 201103L <= YY_CPLUSPLUS
2132#if 201103L <= YY_CPLUSPLUS
2147#if 201103L <= YY_CPLUSPLUS
2162#if 201103L <= YY_CPLUSPLUS
2177#if 201103L <= YY_CPLUSPLUS
2192#if 201103L <= YY_CPLUSPLUS
2207#if 201103L <= YY_CPLUSPLUS
2222#if 201103L <= YY_CPLUSPLUS
2237#if 201103L <= YY_CPLUSPLUS
2252#if 201103L <= YY_CPLUSPLUS
2267#if 201103L <= YY_CPLUSPLUS
2282#if 201103L <= YY_CPLUSPLUS
2297#if 201103L <= YY_CPLUSPLUS
2312#if 201103L <= YY_CPLUSPLUS
2327#if 201103L <= YY_CPLUSPLUS
2342#if 201103L <= YY_CPLUSPLUS
2357#if 201103L <= YY_CPLUSPLUS
2372#if 201103L <= YY_CPLUSPLUS
2387#if 201103L <= YY_CPLUSPLUS
2402#if 201103L <= YY_CPLUSPLUS
2417#if 201103L <= YY_CPLUSPLUS
2432#if 201103L <= YY_CPLUSPLUS
2447#if 201103L <= YY_CPLUSPLUS
2462#if 201103L <= YY_CPLUSPLUS
2477#if 201103L <= YY_CPLUSPLUS
2492#if 201103L <= YY_CPLUSPLUS
2507#if 201103L <= YY_CPLUSPLUS
2522#if 201103L <= YY_CPLUSPLUS
2537#if 201103L <= YY_CPLUSPLUS
2552#if 201103L <= YY_CPLUSPLUS
2567#if 201103L <= YY_CPLUSPLUS
2582#if 201103L <= YY_CPLUSPLUS
2597#if 201103L <= YY_CPLUSPLUS
2612#if 201103L <= YY_CPLUSPLUS
2627#if 201103L <= YY_CPLUSPLUS
2642#if 201103L <= YY_CPLUSPLUS
2657#if 201103L <= YY_CPLUSPLUS
2672#if 201103L <= YY_CPLUSPLUS
2687#if 201103L <= YY_CPLUSPLUS
2702#if 201103L <= YY_CPLUSPLUS
2717#if 201103L <= YY_CPLUSPLUS
2732#if 201103L <= YY_CPLUSPLUS
2747#if 201103L <= YY_CPLUSPLUS
2762#if 201103L <= YY_CPLUSPLUS
2777#if 201103L <= YY_CPLUSPLUS
2792#if 201103L <= YY_CPLUSPLUS
2807#if 201103L <= YY_CPLUSPLUS
2822#if 201103L <= YY_CPLUSPLUS
2837#if 201103L <= YY_CPLUSPLUS
2852#if 201103L <= YY_CPLUSPLUS
2867#if 201103L <= YY_CPLUSPLUS
2882#if 201103L <= YY_CPLUSPLUS
2897#if 201103L <= YY_CPLUSPLUS
2912#if 201103L <= YY_CPLUSPLUS
2927#if 201103L <= YY_CPLUSPLUS
2942#if 201103L <= YY_CPLUSPLUS
2957#if 201103L <= YY_CPLUSPLUS
2972#if 201103L <= YY_CPLUSPLUS
2987#if 201103L <= YY_CPLUSPLUS
3002#if 201103L <= YY_CPLUSPLUS
3017#if 201103L <= YY_CPLUSPLUS
3032#if 201103L <= YY_CPLUSPLUS
3047#if 201103L <= YY_CPLUSPLUS
3062#if 201103L <= YY_CPLUSPLUS
3077#if 201103L <= YY_CPLUSPLUS
3092#if 201103L <= YY_CPLUSPLUS
3107#if 201103L <= YY_CPLUSPLUS
3122#if 201103L <= YY_CPLUSPLUS
3137#if 201103L <= YY_CPLUSPLUS
3152#if 201103L <= YY_CPLUSPLUS
3167#if 201103L <= YY_CPLUSPLUS
3182#if 201103L <= YY_CPLUSPLUS
3197#if 201103L <= YY_CPLUSPLUS
3212#if 201103L <= YY_CPLUSPLUS
3227#if 201103L <= YY_CPLUSPLUS
3242#if 201103L <= YY_CPLUSPLUS
3257#if 201103L <= YY_CPLUSPLUS
3272#if 201103L <= YY_CPLUSPLUS
3287#if 201103L <= YY_CPLUSPLUS
3302#if 201103L <= YY_CPLUSPLUS
3317#if 201103L <= YY_CPLUSPLUS
3332#if 201103L <= YY_CPLUSPLUS
3347#if 201103L <= YY_CPLUSPLUS
3362#if 201103L <= YY_CPLUSPLUS
3377#if 201103L <= YY_CPLUSPLUS
3392#if 201103L <= YY_CPLUSPLUS
3407#if 201103L <= YY_CPLUSPLUS
3422#if 201103L <= YY_CPLUSPLUS
3437#if 201103L <= YY_CPLUSPLUS
3452#if 201103L <= YY_CPLUSPLUS
3467#if 201103L <= YY_CPLUSPLUS
3482#if 201103L <= YY_CPLUSPLUS
3497#if 201103L <= YY_CPLUSPLUS
3512#if 201103L <= YY_CPLUSPLUS
3527#if 201103L <= YY_CPLUSPLUS
3542#if 201103L <= YY_CPLUSPLUS
3557#if 201103L <= YY_CPLUSPLUS
3572#if 201103L <= YY_CPLUSPLUS
3587#if 201103L <= YY_CPLUSPLUS
3602#if 201103L <= YY_CPLUSPLUS
3617#if 201103L <= YY_CPLUSPLUS
3632#if 201103L <= YY_CPLUSPLUS
3647#if 201103L <= YY_CPLUSPLUS
3662#if 201103L <= YY_CPLUSPLUS
3677#if 201103L <= YY_CPLUSPLUS
3692#if 201103L <= YY_CPLUSPLUS
3707#if 201103L <= YY_CPLUSPLUS
3722#if 201103L <= YY_CPLUSPLUS
3737#if 201103L <= YY_CPLUSPLUS
3752#if 201103L <= YY_CPLUSPLUS
3767#if 201103L <= YY_CPLUSPLUS
3782#if 201103L <= YY_CPLUSPLUS
3797#if 201103L <= YY_CPLUSPLUS
3812#if 201103L <= YY_CPLUSPLUS
3827#if 201103L <= YY_CPLUSPLUS
3842#if 201103L <= YY_CPLUSPLUS
3857#if 201103L <= YY_CPLUSPLUS
3872#if 201103L <= YY_CPLUSPLUS
3887#if 201103L <= YY_CPLUSPLUS
3902#if 201103L <= YY_CPLUSPLUS
3917#if 201103L <= YY_CPLUSPLUS
3932#if 201103L <= YY_CPLUSPLUS
3947#if 201103L <= YY_CPLUSPLUS
3962#if 201103L <= YY_CPLUSPLUS
3977#if 201103L <= YY_CPLUSPLUS
3992#if 201103L <= YY_CPLUSPLUS
4007#if 201103L <= YY_CPLUSPLUS
4022#if 201103L <= YY_CPLUSPLUS
4037#if 201103L <= YY_CPLUSPLUS
4052#if 201103L <= YY_CPLUSPLUS
4067#if 201103L <= YY_CPLUSPLUS
4082#if 201103L <= YY_CPLUSPLUS
4097#if 201103L <= YY_CPLUSPLUS
4112#if 201103L <= YY_CPLUSPLUS
4127#if 201103L <= YY_CPLUSPLUS
4142#if 201103L <= YY_CPLUSPLUS
4157#if 201103L <= YY_CPLUSPLUS
4172#if 201103L <= YY_CPLUSPLUS
4187#if 201103L <= YY_CPLUSPLUS
4202#if 201103L <= YY_CPLUSPLUS
4217#if 201103L <= YY_CPLUSPLUS
4232#if 201103L <= YY_CPLUSPLUS
4247#if 201103L <= YY_CPLUSPLUS
4262#if 201103L <= YY_CPLUSPLUS
4277#if 201103L <= YY_CPLUSPLUS
4292#if 201103L <= YY_CPLUSPLUS
4307#if 201103L <= YY_CPLUSPLUS
4322#if 201103L <= YY_CPLUSPLUS
4337#if 201103L <= YY_CPLUSPLUS
4352#if 201103L <= YY_CPLUSPLUS
4367#if 201103L <= YY_CPLUSPLUS
4382#if 201103L <= YY_CPLUSPLUS
4397#if 201103L <= YY_CPLUSPLUS
4412#if 201103L <= YY_CPLUSPLUS
4427#if 201103L <= YY_CPLUSPLUS
4442#if 201103L <= YY_CPLUSPLUS
4457#if 201103L <= YY_CPLUSPLUS
4472#if 201103L <= YY_CPLUSPLUS
4487#if 201103L <= YY_CPLUSPLUS
4502#if 201103L <= YY_CPLUSPLUS
4517#if 201103L <= YY_CPLUSPLUS
4532#if 201103L <= YY_CPLUSPLUS
4547#if 201103L <= YY_CPLUSPLUS
4562#if 201103L <= YY_CPLUSPLUS
4577#if 201103L <= YY_CPLUSPLUS
4592#if 201103L <= YY_CPLUSPLUS
4607#if 201103L <= YY_CPLUSPLUS
4622#if 201103L <= YY_CPLUSPLUS
4637#if 201103L <= YY_CPLUSPLUS
4652#if 201103L <= YY_CPLUSPLUS
4667#if 201103L <= YY_CPLUSPLUS
4682#if 201103L <= YY_CPLUSPLUS
4697#if 201103L <= YY_CPLUSPLUS
4712#if 201103L <= YY_CPLUSPLUS
4727#if 201103L <= YY_CPLUSPLUS
4742#if 201103L <= YY_CPLUSPLUS
4757#if 201103L <= YY_CPLUSPLUS
4772#if 201103L <= YY_CPLUSPLUS
4787#if 201103L <= YY_CPLUSPLUS
4802#if 201103L <= YY_CPLUSPLUS
4817#if 201103L <= YY_CPLUSPLUS
4832#if 201103L <= YY_CPLUSPLUS
4868#if YY_CPLUSPLUS < 201103L
4877 typedef short state_type;
4880 int yy_syntax_error_arguments_ (
const context& yyctx,
4885 virtual std::string yysyntax_error_ (
const context& yyctx)
const;
4889 static state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
4893 static bool yy_pact_value_is_default_ (
int yyvalue)
YY_NOEXCEPT;
4897 static bool yy_table_value_is_error_ (
int yyvalue)
YY_NOEXCEPT;
4899 static const short yypact_ninf_;
4900 static const signed char yytable_ninf_;
4908 static std::string yytnamerr_ (
const char *yystr);
4911 static const char*
const yytname_[];
4917 static const short yypact_[];
4922 static const short yydefact_[];
4925 static const short yypgoto_[];
4928 static const short yydefgoto_[];
4933 static const short yytable_[];
4935 static const short yycheck_[];
4939 static const short yystos_[];
4942 static const short yyr1_[];
4945 static const signed char yyr2_[];
4950 static const short yyrline_[];
4952 virtual void yy_reduce_print_ (
int r)
const;
4954 virtual void yy_stack_print_ ()
const;
4959 std::ostream* yycdebug_;
4964 template <
typename Base>
4965 void yy_print_ (std::ostream& yyo,
const basic_symbol<Base>& yysym)
const;
4972 template <
typename Base>
4973 void yy_destroy_ (
const char* yymsg, basic_symbol<Base>& yysym)
const;
4983 typedef state_type kind_type;
4995 void move (by_state& that);
5003 enum { empty_state = 0 };
5011 struct stack_symbol_type : basic_symbol<by_state>
5014 typedef basic_symbol<by_state> super_type;
5016 stack_symbol_type ();
5018 stack_symbol_type (
YY_RVREF (stack_symbol_type) that);
5020 stack_symbol_type (state_type s,
YY_MOVE_REF (symbol_type) sym);
5021#if YY_CPLUSPLUS < 201103L
5024 stack_symbol_type& operator= (stack_symbol_type& that);
5028 stack_symbol_type& operator= (
const stack_symbol_type& that);
5033 template <
typename T,
typename S = std::vector<T> >
5038 typedef typename S::iterator iterator;
5039 typedef typename S::const_iterator const_iterator;
5040 typedef typename S::size_type size_type;
5041 typedef typename std::ptrdiff_t index_type;
5047#if 201103L <= YY_CPLUSPLUS
5049 stack (
const stack&) =
delete;
5051 stack& operator= (
const stack&) =
delete;
5058 operator[] (index_type i)
const
5060 return seq_[size_type (size () - 1 - i)];
5067 operator[] (index_type i)
5069 return seq_[size_type (size () - 1 - i)];
5078 seq_.push_back (T ());
5079 operator[] (0).move (t);
5101 return index_type (seq_.size ());
5108 return seq_.begin ();
5128 operator[] (index_type i)
const
5130 return stack_[range_ - i];
5134 const stack& stack_;
5139#if YY_CPLUSPLUS < 201103L
5141 stack (
const stack&);
5143 stack& operator= (
const stack&);
5151 typedef stack<stack_symbol_type> stack_type;
5154 stack_type yystack_;
5161 void yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym);
5169 void yypush_ (
const char* m, state_type s,
YY_MOVE_REF (symbol_type) sym);
5198 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5199 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5200 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5201 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5202 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5203 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5204 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5205 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5206 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5207 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5208 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5209 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5210 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5211 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5212 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5213 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5214 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5215 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5216 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5217 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5218 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5219 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5220 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5221 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5222 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5223 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5224 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
5225 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5226 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
5227 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5228 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5229 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
5230 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
5231 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
5232 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
5233 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5234 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5235 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5236 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
5237 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
5238 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
5239 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
5240 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
5241 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
5242 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
5243 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
5247 const int code_max = 460;
5251 else if (t <= code_max)
5258 template <
typename Base>
5264 switch (this->kind ())
5303 template <
typename Base>
5307 return this->kind ();
5311 template <
typename Base>
5318 template <
typename Base>
5322 super_type::move (s);
5323 switch (this->kind ())
5366#if 201103L <= YY_CPLUSPLUS
5369 : kind_ (that.kind_)
5377 : kind_ (that.kind_)
5382 : kind_ (yytranslate_ (t))
5414 return this->kind ();
5418#line 14 "dhcp4_parser.yy"
5420#line 5421 "dhcp4_parser.h"
symbol_kind_type token() const YY_NOEXCEPT
const symbol_type & lookahead() const YY_NOEXCEPT
const location_type & location() const YY_NOEXCEPT
Present a slice of the top of a stack.
slice(const stack &stack, index_type range) YY_NOEXCEPT
A buffer to store and retrieve objects.
const T & as() const YY_NOEXCEPT
Const accessor to a built T (for printer).
void swap(self_type &that) YY_NOEXCEPT
Swap the content with that, of same type.
void move(self_type &that)
Move the content of that to this.
T & emplace(const T &t)
Instantiate a T in here from t.
void destroy()
Destroy the stored T.
value_type() YY_NOEXCEPT
Empty construction.
void copy(const self_type &that)
Copy the content of that to this.
T & emplace()
Instantiate an empty T in here.
value_type(YY_RVREF(T) t)
Construct and fill.
T & build(const T &t)
Instantiate a T in here from t.
T & as() YY_NOEXCEPT
Accessor to a built T.
value_type self_type
Type of *this.
char yyraw_[size]
A buffer large enough to store any of the semantic values.
T & build()
Instantiate an empty T in here.
long double yyalign_me_
Strongest alignment constraints.
~value_type() YY_NOEXCEPT
Destruction, allowed only if empty.
static symbol_type make_SAME_AS_INBOUND(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_PERSIST(const location_type &l)
static symbol_type make_FLUSH_RECLAIMED_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_SUBNET_4O6_INTERFACE_ID(const location_type &l)
static symbol_type make_SUB_INTERFACES4(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_COUNT(const location_type &l)
static symbol_type make_IP_RESERVATIONS_UNIQUE(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_THREAD_POOL_SIZE(const location_type &l)
static symbol_type make_GENERATED_PREFIX(const location_type &l)
static symbol_type make_SUB_OPTION_DATA(const location_type &l)
static symbol_type make_NAME(const location_type &l)
static symbol_type make_MATCH_CLIENT_ID(const location_type &l)
static symbol_type make_MAX_RECLAIM_LEASES(const location_type &l)
static symbol_type make_STORE_EXTENDED_INFO(const location_type &l)
static symbol_type make_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_MAX_RETRIES(const location_type &l)
static symbol_type make_LFC_INTERVAL(const location_type &l)
static symbol_type make_HOLD_RECLAIMED_TIME(const location_type &l)
static symbol_type make_MEMFILE(const location_type &l)
static symbol_type make_CONNECT_TIMEOUT(const location_type &l)
static symbol_type make_OPTION_DEF(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_REQUIRE_ALL(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_ALL(const location_type &l)
static symbol_type make_SENDER_PORT(const location_type &l)
static symbol_type make_CACHE_MAX_AGE(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_CALCULATE_TEE_TIMES(const location_type &l)
static symbol_type make_RE_DETECT(const location_type &l)
static symbol_type make_RELAY(const location_type &l)
static symbol_type make_MAX_VALID_LIFETIME(const location_type &l)
static symbol_type make_SERVER_HOSTNAME(const location_type &l)
static symbol_type make_KEY_FILE(const location_type &l)
virtual void error(const location_type &loc, const std::string &msg)
Report a syntax error.
static symbol_type make_TEST(const location_type &l)
static symbol_type make_RECONNECT_WAIT_TIME(const location_type &l)
static symbol_type make_DHCP_MULTI_THREADING(const location_type &l)
static symbol_type make_ARRAY(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
static symbol_type make_SPACE(const location_type &l)
static symbol_type make_HW_ADDRESS(const location_type &l)
static symbol_type make_USE_ROUTING(const location_type &l)
static symbol_type make_MAX_RECLAIM_TIME(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_REPLACEMENT(const location_type &l)
static symbol_type make_VALID_LIFETIME(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
virtual int parse()
Parse.
static symbol_type make_INTERFACE(const location_type &l)
static symbol_type make_REBIND_TIMER(const location_type &l)
static symbol_type make_BOOT_FILE_NAME(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
static symbol_type make_RESERVATIONS_IN_SUBNET(const location_type &l)
static symbol_type make_IP_ADDRESSES(const location_type &l)
static symbol_type make_DDNS_UPDATE_ON_RENEW(const location_type &l)
static symbol_type make_INTERFACES_CONFIG(const location_type &l)
static symbol_type make_UDP(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_SUBNET4(const location_type &l)
static symbol_type make_COLON(const location_type &l)
static symbol_type make_SERVE_RETRY_CONTINUE(const location_type &l)
static symbol_type make_HOSTS_DATABASES(const location_type &l)
token_kind_type token_type
Backward compatibility alias (Bison 3.6).
static symbol_type make_SUB_DHCP_DDNS(const location_type &l)
static symbol_type make_DDNS_SEND_UPDATES(const location_type &l)
static symbol_type make_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_LENIENT_OPTION_PARSING(const location_type &l)
static symbol_type make_MIN_VALID_LIFETIME(const location_type &l)
static symbol_type make_DDNS_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_DECLINE_PROBATION_PERIOD(const location_type &l)
static symbol_type make_IP_ADDRESS(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_ENABLE_QUEUE(const location_type &l)
static symbol_type make_SUBNET(const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_HOSTNAME(const location_type &l)
static symbol_type make_DDNS_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_SUB_RESERVATION(const location_type &l)
static symbol_type make_SUB_OPTION_DEFS(const location_type &l)
static symbol_type make_OPTION_DATA(const location_type &l)
static symbol_type make_EARLY_GLOBAL_RESERVATIONS_LOOKUP(const location_type &l)
static symbol_type make_POSTGRESQL(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
std::ostream & debug_stream() const YY_ATTRIBUTE_PURE
The current debugging stream.
static symbol_type make_MYSQL(const location_type &l)
static symbol_type make_UNWARNED_RECLAIM_CYCLES(const location_type &l)
void set_debug_stream(std::ostream &)
Set the current debugging stream.
static symbol_type make_LEASE_CHECKS(const location_type &l)
static symbol_type make_USER(const location_type &l)
static symbol_type make_GLOBAL(const location_type &l)
token::token_kind_type token_kind_type
Token kind, as returned by yylex.
static symbol_type make_SERVER_IP(const location_type &l)
static symbol_type make_OUT_OF_POOL(const location_type &l)
static symbol_type make_HOSTS_DATABASE(const location_type &l)
static symbol_type make_QUEUE_TYPE(const location_type &l)
static symbol_type make_T1_PERCENT(const location_type &l)
static symbol_type make_RECLAIM_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_STOP_RETRY_EXIT(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_ALWAYS_SEND(const location_type &l)
static symbol_type make_PARSER4_UNDEF(const location_type &l)
static symbol_type make_CERT_FILE(const location_type &l)
static symbol_type make_ECHO_CLIENT_ID(const location_type &l)
static symbol_type make_CIPHER_LIST(const location_type &l)
static symbol_type make_POOL(const location_type &l)
static symbol_type make_DATA(const location_type &l)
location location_type
Symbol locations.
static symbol_type make_ENABLE_MULTI_THREADING(const location_type &l)
static symbol_type make_CSV_FORMAT(const location_type &l)
static symbol_type make_SERVER_PORT(const location_type &l)
static symbol_type make_SUB_SUBNET4(const location_type &l)
static symbol_type make_WHEN_NOT_PRESENT(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_ON_FAIL(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_RECORD_TYPES(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_DUID(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_SUBNET_4O6_INTERFACE(const location_type &l)
static symbol_type make_DHCP4(const location_type &l)
static symbol_type make_CAPACITY(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
value_type semantic_type
Backward compatibility (Bison 3.8).
static symbol_type make_SUB_OPTION_DEF(const location_type &l)
static symbol_type make_PARSER4_error(const location_type &l)
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_ONLY_IF_REQUIRED(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_CONFIG_DATABASES(const location_type &l)
static symbol_type make_AUTHORITATIVE(const location_type &l)
static symbol_type make_HOST_RESERVATION_IDENTIFIERS(const location_type &l)
static symbol_type make_RESERVATION_MODE(const location_type &l)
static symbol_type make_MAX_ROW_ERRORS(const location_type &l)
static symbol_type make_INTERFACES(const location_type &l)
static symbol_type make_T2_PERCENT(const location_type &l)
static symbol_type make_READONLY(const location_type &l)
static symbol_type make_DDNS_USE_CONFLICT_RESOLUTION(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_ENABLE_UPDATES(const location_type &l)
static symbol_type make_SERVER_TAG(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
symbol_kind::symbol_kind_type symbol_kind_type
(Internal) symbol kind.
static symbol_type make_DHCP_QUEUE_CONTROL(const location_type &l)
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_PORT(const location_type &l)
static symbol_type make_FLEX_ID(const location_type &l)
static symbol_type make_CLIENT_CLASS(const location_type &l)
static symbol_type make_NEXT_SERVER(const location_type &l)
static symbol_type make_SANITY_CHECKS(const location_type &l)
static symbol_type make_EXPIRED_LEASES_PROCESSING(const location_type &l)
static symbol_type make_RAW(const location_type &l)
static symbol_type make_OUTBOUND_INTERFACE(const location_type &l)
static const symbol_kind_type YYNTOKENS
The number of tokens.
static symbol_type make_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_RESERVATIONS_OUT_OF_POOL(const location_type &l)
static symbol_type make_ID(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_SUB_POOL4(const location_type &l)
static symbol_type make_NEVER(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
static symbol_type make_RESERVATIONS_GLOBAL(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_RESERVATIONS(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_SET(const location_type &l)
static symbol_type make_TRUST_ANCHOR(const location_type &l)
static symbol_type make_MAX_QUEUE_SIZE(const location_type &l)
debug_level_type debug_level() const YY_ATTRIBUTE_PURE
The current debugging level.
static symbol_type make_SERVE_RETRY_EXIT(const location_type &l)
static symbol_type make_COMPATIBILITY(const location_type &l)
static symbol_type make_POOLS(const location_type &l)
static symbol_type make_DHCP_DDNS(const location_type &l)
static symbol_type make_ALWAYS(const location_type &l)
static symbol_type make_CLIENT_ID(const location_type &l)
static symbol_type make_SUB_CONFIG_CONTROL(const location_type &l)
static symbol_type make_RESERVATIONS_LOOKUP_FIRST(const location_type &l)
static symbol_type make_TOPLEVEL_DHCP4(const location_type &l)
static symbol_type make_MAX_RECONNECT_TRIES(const location_type &l)
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_HOST(const location_type &l)
static symbol_type make_WHEN_PRESENT(const location_type &l)
static symbol_type make_SENDER_IP(const location_type &l)
static symbol_type make_DHCP_SOCKET_TYPE(const location_type &l)
static symbol_type make_CONFIG_CONTROL(const location_type &l)
static symbol_type make_CONFIG_FETCH_WAIT_TIME(const location_type &l)
static symbol_type make_DHCP4O6_PORT(const location_type &l)
static symbol_type make_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_CODE(const location_type &l)
static symbol_type make_SHARED_NETWORKS(const location_type &l)
static symbol_type make_DDNS_GENERATED_PREFIX(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
static symbol_type make_DISABLED(const location_type &l)
static std::string symbol_name(symbol_kind_type yysymbol)
The user-facing name of the symbol whose (internal) number is YYSYMBOL.
Dhcp4Parser(isc::dhcp::Parser4Context &ctx_yyarg)
Build a parser object.
static symbol_type make_REQUIRE_CLIENT_CLASSES(const location_type &l)
static symbol_type make_COMMA(const location_type &l)
static symbol_type make_SUB_DHCP4(const location_type &l)
static symbol_type make_SUBNET_4O6_SUBNET(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
static symbol_type make_RENEW_TIMER(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_CLIENT_CLASSES(const location_type &l)
static symbol_type make_ENCAPSULATE(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_AGE(const location_type &l)
static symbol_type make_CIRCUIT_ID(const location_type &l)
static symbol_type make_CACHE_THRESHOLD(const location_type &l)
int debug_level_type
Type for debugging levels.
static symbol_type make_PARKED_PACKET_LIMIT(const location_type &l)
void set_debug_level(debug_level_type l)
Set the current debugging level.
static symbol_type make_PACKET_QUEUE_SIZE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_RETRY_WAIT_TIME(const location_type &l)
static symbol_type make_LEASE_DATABASE(const location_type &l)
Evaluation context, an interface to the expression evaluation.
Forward declaration of the ParserContext class.
#define YY_MOVE_REF(Type)
#define YY_ATTRIBUTE_PURE
boost::shared_ptr< Element > ElementPtr
Defines the logger used by the top-level component of kea-lfc.
~basic_symbol()
Destroy the symbol.
location_type location
The location.
Base super_type
Alias to Base.
basic_symbol(typename Base::kind_type t, const std::string &v, const location_type &l)
value_type value
The semantic value.
bool empty() const YY_NOEXCEPT
Whether empty.
basic_symbol(typename Base::kind_type t, const ElementPtr &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const location_type &l)
Constructors for typed symbols.
void move(basic_symbol &s)
Destructive move, s is emptied into this.
basic_symbol(typename Base::kind_type t, const int64_t &v, const location_type &l)
basic_symbol() YY_NOEXCEPT
Default constructor.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
basic_symbol(typename Base::kind_type t, const bool &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const double &v, const location_type &l)
std::string name() const YY_NOEXCEPT
The user-facing name of this symbol.
void clear() YY_NOEXCEPT
Destroy contents, and record that is empty.
Type access provider for token (enum) based symbols.
void move(by_kind &that)
Steal the symbol kind from that.
symbol_kind_type kind() const YY_NOEXCEPT
The (internal) type number (corresponding to type).
symbol_kind_type kind_
The symbol kind.
void clear() YY_NOEXCEPT
Record that this symbol is empty.
token_kind_type kind_type
The symbol kind as needed by the constructor.
by_kind() YY_NOEXCEPT
Default constructor.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
@ S_ddns_replace_client_name_value
@ YYNTOKENS
Number of tokens.
@ S_outbound_interface_value
"External" symbols: returned by the scanner.
basic_symbol< by_kind > super_type
Superclass.
symbol_type() YY_NOEXCEPT
Empty symbol.
Syntax errors thrown from user actions.
~syntax_error() YY_NOEXCEPT YY_NOTHROW
syntax_error(const syntax_error &s)
syntax_error(const location_type &l, const std::string &m)
@ TOKEN_SUBNET_4O6_INTERFACE_ID
@ TOKEN_SUBNET_4O6_SUBNET
@ TOKEN_SERVICE_SOCKETS_MAX_RETRIES
@ TOKEN_HOSTNAME_CHAR_REPLACEMENT
@ TOKEN_MAX_RECONNECT_TRIES
@ TOKEN_DDNS_OVERRIDE_NO_UPDATE
@ TOKEN_IP_RESERVATIONS_UNIQUE
@ TOKEN_DDNS_REPLACE_CLIENT_NAME
@ TOKEN_CALCULATE_TEE_TIMES
@ TOKEN_MIN_VALID_LIFETIME
@ TOKEN_SERVICE_SOCKETS_REQUIRE_ALL
@ TOKEN_CONFIG_FETCH_WAIT_TIME
@ TOKEN_SERVE_RETRY_CONTINUE
@ TOKEN_DHCP_MULTI_THREADING
@ TOKEN_DHCP_QUEUE_CONTROL
@ TOKEN_PARKED_PACKET_LIMIT
@ TOKEN_RESERVATIONS_LOOKUP_FIRST
@ TOKEN_RESERVATIONS_GLOBAL
@ TOKEN_OVERRIDE_NO_UPDATE
@ TOKEN_EXPIRED_LEASES_PROCESSING
@ TOKEN_ENABLE_MULTI_THREADING
@ TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME
@ TOKEN_RECONNECT_WAIT_TIME
@ TOKEN_UNWARNED_RECLAIM_CYCLES
@ TOKEN_DDNS_GENERATED_PREFIX
@ TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT
@ TOKEN_MAX_VALID_LIFETIME
@ TOKEN_DDNS_UPDATE_ON_RENEW
@ TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME
@ TOKEN_INTERFACES_CONFIG
@ TOKEN_DECLINE_PROBATION_PERIOD
@ TOKEN_PACKET_QUEUE_SIZE
@ TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE
@ TOKEN_RESERVATIONS_OUT_OF_POOL
@ TOKEN_MAX_RECLAIM_LEASES
@ TOKEN_RESERVATIONS_IN_SUBNET
@ TOKEN_OVERRIDE_CLIENT_UPDATE
@ TOKEN_SUB_CONFIG_CONTROL
@ TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP
@ TOKEN_DDNS_SEND_UPDATES
@ TOKEN_OUTBOUND_INTERFACE
@ TOKEN_DDNS_QUALIFYING_SUFFIX
@ TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE
@ TOKEN_SUB_HOOKS_LIBRARY
@ TOKEN_RECLAIM_TIMER_WAIT_TIME
@ TOKEN_STORE_EXTENDED_INFO
@ TOKEN_HOLD_RECLAIMED_TIME
@ TOKEN_LENIENT_OPTION_PARSING
@ TOKEN_HOSTNAME_CHAR_SET
@ TOKEN_DDNS_USE_CONFLICT_RESOLUTION
@ TOKEN_REPLACE_CLIENT_NAME
@ TOKEN_REQUIRE_CLIENT_CLASSES
@ TOKEN_QUALIFYING_SUFFIX
@ TOKEN_SUBNET_4O6_INTERFACE
@ TOKEN_HOST_RESERVATION_IDENTIFIERS
token_kind_type yytokentype
Backward compatibility alias (Bison 3.6).