39#define yylex parser4_lex
47#line 34 "dhcp4_parser.yy"
52#if defined(__GNUC__) || defined(__clang__)
53#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
56#line 57 "dhcp4_parser.cc"
60# if defined YYENABLE_NLS && YYENABLE_NLS
63# define YY_(msgid) dgettext ("bison-runtime", msgid)
67# define YY_(msgid) msgid
74# if defined __GNUC__ && !defined __EXCEPTIONS
75# define YY_EXCEPTIONS 0
77# define YY_EXCEPTIONS 1
81#define YYRHSLOC(Rhs, K) ((Rhs)[K].location)
86# ifndef YYLLOC_DEFAULT
87# define YYLLOC_DEFAULT(Current, Rhs, N) \
91 (Current).begin = YYRHSLOC (Rhs, 1).begin; \
92 (Current).end = YYRHSLOC (Rhs, N).end; \
96 (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \
106# define YYCDEBUG if (yydebug_) (*yycdebug_)
108# define YY_SYMBOL_PRINT(Title, Symbol) \
112 *yycdebug_ << Title << ' '; \
113 yy_print_ (*yycdebug_, Symbol); \
114 *yycdebug_ << '\n'; \
118# define YY_REDUCE_PRINT(Rule) \
121 yy_reduce_print_ (Rule); \
124# define YY_STACK_PRINT() \
127 yy_stack_print_ (); \
132# define YYCDEBUG if (false) std::cerr
133# define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol)
134# define YY_REDUCE_PRINT(Rule) static_cast<void> (0)
135# define YY_STACK_PRINT() static_cast<void> (0)
139#define yyerrok (yyerrstatus_ = 0)
140#define yyclearin (yyla.clear ())
142#define YYACCEPT goto yyacceptlab
143#define YYABORT goto yyabortlab
144#define YYERROR goto yyerrorlab
145#define YYRECOVERING() (!!yyerrstatus_)
147#line 14 "dhcp4_parser.yy"
148namespace isc {
namespace dhcp {
149#line 150 "dhcp4_parser.cc"
155 yycdebug_ (&std::cerr),
176 : state (empty_state)
179 Dhcp4Parser::by_state::by_state (
const by_state& that)
YY_NOEXCEPT
190 Dhcp4Parser::by_state::move (by_state& that)
196 Dhcp4Parser::by_state::by_state (state_type s)
YY_NOEXCEPT
203 if (state == empty_state)
209 Dhcp4Parser::stack_symbol_type::stack_symbol_type ()
212 Dhcp4Parser::stack_symbol_type::stack_symbol_type (
YY_RVREF (stack_symbol_type) that)
215 switch (that.kind ())
231 value.YY_MOVE_OR_COPY<
bool > (
YY_MOVE (that.value));
235 value.YY_MOVE_OR_COPY<
double > (
YY_MOVE (that.value));
239 value.YY_MOVE_OR_COPY< int64_t > (
YY_MOVE (that.value));
243 value.YY_MOVE_OR_COPY< std::string > (
YY_MOVE (that.value));
250#if 201103L <= YY_CPLUSPLUS
252 that.state = empty_state;
256 Dhcp4Parser::stack_symbol_type::stack_symbol_type (state_type s,
YY_MOVE_REF (symbol_type) that)
257 : super_type (s,
YY_MOVE (that.location))
259 switch (that.kind ())
275 value.move<
bool > (
YY_MOVE (that.value));
279 value.move<
double > (
YY_MOVE (that.value));
283 value.move< int64_t > (
YY_MOVE (that.value));
287 value.move< std::string > (
YY_MOVE (that.value));
298#if YY_CPLUSPLUS < 201103L
299 Dhcp4Parser::stack_symbol_type&
300 Dhcp4Parser::stack_symbol_type::operator= (
const stack_symbol_type& that)
303 switch (that.kind ())
319 value.copy<
bool > (that.value);
323 value.copy<
double > (that.value);
327 value.copy< int64_t > (that.value);
331 value.copy< std::string > (that.value);
338 location = that.location;
342 Dhcp4Parser::stack_symbol_type&
343 Dhcp4Parser::stack_symbol_type::operator= (stack_symbol_type& that)
346 switch (that.kind ())
362 value.move<
bool > (that.value);
366 value.move<
double > (that.value);
370 value.move< int64_t > (that.value);
374 value.move< std::string > (that.value);
381 location = that.location;
383 that.state = empty_state;
388 template <
typename Base>
390 Dhcp4Parser::yy_destroy_ (
const char* yymsg, basic_symbol<Base>& yysym)
const
397 template <
typename Base>
399 Dhcp4Parser::yy_print_ (std::ostream& yyo,
const basic_symbol<Base>& yysym)
const
401 std::ostream& yyoutput = yyo;
404 yyo <<
"empty symbol";
408 yyo << (yykind <
YYNTOKENS ?
"token" :
"nterm")
409 <<
' ' << yysym.name () <<
" ("
410 << yysym.location <<
": ";
414#line 311 "dhcp4_parser.yy"
415 { yyoutput << yysym.value.template as < std::string > (); }
416#line 417 "dhcp4_parser.cc"
420#line 311 "dhcp4_parser.yy"
421 { yyoutput << yysym.value.template as < int64_t > (); }
422#line 423 "dhcp4_parser.cc"
426#line 311 "dhcp4_parser.yy"
427 { yyoutput << yysym.value.template as < double > (); }
428#line 429 "dhcp4_parser.cc"
432#line 311 "dhcp4_parser.yy"
433 { yyoutput << yysym.value.template as < bool > (); }
434#line 435 "dhcp4_parser.cc"
438#line 311 "dhcp4_parser.yy"
439 { yyoutput << yysym.value.template as < ElementPtr > (); }
440#line 441 "dhcp4_parser.cc"
444#line 311 "dhcp4_parser.yy"
445 { yyoutput << yysym.value.template as < ElementPtr > (); }
446#line 447 "dhcp4_parser.cc"
450#line 311 "dhcp4_parser.yy"
451 { yyoutput << yysym.value.template as < ElementPtr > (); }
452#line 453 "dhcp4_parser.cc"
456#line 311 "dhcp4_parser.yy"
457 { yyoutput << yysym.value.template as < ElementPtr > (); }
458#line 459 "dhcp4_parser.cc"
462#line 311 "dhcp4_parser.yy"
463 { yyoutput << yysym.value.template as < ElementPtr > (); }
464#line 465 "dhcp4_parser.cc"
468#line 311 "dhcp4_parser.yy"
469 { yyoutput << yysym.value.template as < ElementPtr > (); }
470#line 471 "dhcp4_parser.cc"
474#line 311 "dhcp4_parser.yy"
475 { yyoutput << yysym.value.template as < ElementPtr > (); }
476#line 477 "dhcp4_parser.cc"
480#line 311 "dhcp4_parser.yy"
481 { yyoutput << yysym.value.template as < ElementPtr > (); }
482#line 483 "dhcp4_parser.cc"
486#line 311 "dhcp4_parser.yy"
487 { yyoutput << yysym.value.template as < ElementPtr > (); }
488#line 489 "dhcp4_parser.cc"
492#line 311 "dhcp4_parser.yy"
493 { yyoutput << yysym.value.template as < ElementPtr > (); }
494#line 495 "dhcp4_parser.cc"
506 Dhcp4Parser::yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym)
514 Dhcp4Parser::yypush_ (
const char* m, state_type s,
YY_MOVE_REF (symbol_type) sym)
516#if 201103L <= YY_CPLUSPLUS
517 yypush_ (m, stack_symbol_type (s, std::move (sym)));
519 stack_symbol_type ss (s, sym);
532 Dhcp4Parser::debug_stream ()
const
538 Dhcp4Parser::set_debug_stream (std::ostream& o)
544 Dhcp4Parser::debug_level_type
545 Dhcp4Parser::debug_level ()
const
551 Dhcp4Parser::set_debug_level (debug_level_type l)
557 Dhcp4Parser::state_type
558 Dhcp4Parser::yy_lr_goto_state_ (state_type yystate,
int yysym)
560 int yyr = yypgoto_[yysym -
YYNTOKENS] + yystate;
561 if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate)
562 return yytable_[yyr];
568 Dhcp4Parser::yy_pact_value_is_default_ (
int yyvalue)
YY_NOEXCEPT
570 return yyvalue == yypact_ninf_;
574 Dhcp4Parser::yy_table_value_is_error_ (
int yyvalue)
YY_NOEXCEPT
576 return yyvalue == yytable_ninf_;
594 int yyerrstatus_ = 0;
600 stack_symbol_type yyerror_range[3];
617 yypush_ (YY_NULLPTR, 0,
YY_MOVE (yyla));
623 YYCDEBUG <<
"Entering state " << int (yystack_[0].state) <<
'\n';
627 if (yystack_[0].state == yyfinal_)
638 yyn = yypact_[+yystack_[0].state];
639 if (yy_pact_value_is_default_ (yyn))
651 yyla.
move (yylookahead);
656 YYCDEBUG <<
"Caught exception: " << yyexc.what() <<
'\n';
677 if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.kind ())
686 if (yy_table_value_is_error_ (yyn))
697 yypush_ (
"Shifting", state_type (yyn),
YY_MOVE (yyla));
705 yyn = yydefact_[+yystack_[0].state];
717 stack_symbol_type yylhs;
718 yylhs.state = yy_lr_goto_state_ (yystack_[yylen].state, yyr1_[yyn]);
738 yylhs.value.emplace<
bool > ();
742 yylhs.value.emplace<
double > ();
746 yylhs.value.emplace< int64_t > ();
750 yylhs.value.emplace< std::string > ();
762 yyerror_range[1].location = yylhs.location;
774#line 320 "dhcp4_parser.yy"
776#line 777 "dhcp4_parser.cc"
780#line 321 "dhcp4_parser.yy"
782#line 783 "dhcp4_parser.cc"
786#line 322 "dhcp4_parser.yy"
788#line 789 "dhcp4_parser.cc"
792#line 323 "dhcp4_parser.yy"
794#line 795 "dhcp4_parser.cc"
798#line 324 "dhcp4_parser.yy"
800#line 801 "dhcp4_parser.cc"
804#line 325 "dhcp4_parser.yy"
806#line 807 "dhcp4_parser.cc"
810#line 326 "dhcp4_parser.yy"
812#line 813 "dhcp4_parser.cc"
816#line 327 "dhcp4_parser.yy"
818#line 819 "dhcp4_parser.cc"
822#line 328 "dhcp4_parser.yy"
824#line 825 "dhcp4_parser.cc"
828#line 329 "dhcp4_parser.yy"
830#line 831 "dhcp4_parser.cc"
834#line 330 "dhcp4_parser.yy"
836#line 837 "dhcp4_parser.cc"
840#line 331 "dhcp4_parser.yy"
842#line 843 "dhcp4_parser.cc"
846#line 332 "dhcp4_parser.yy"
848#line 849 "dhcp4_parser.cc"
852#line 340 "dhcp4_parser.yy"
854#line 855 "dhcp4_parser.cc"
858#line 341 "dhcp4_parser.yy"
860#line 861 "dhcp4_parser.cc"
864#line 342 "dhcp4_parser.yy"
866#line 867 "dhcp4_parser.cc"
870#line 343 "dhcp4_parser.yy"
872#line 873 "dhcp4_parser.cc"
876#line 344 "dhcp4_parser.yy"
878#line 879 "dhcp4_parser.cc"
882#line 345 "dhcp4_parser.yy"
884#line 885 "dhcp4_parser.cc"
888#line 346 "dhcp4_parser.yy"
890#line 891 "dhcp4_parser.cc"
894#line 349 "dhcp4_parser.yy"
899#line 900 "dhcp4_parser.cc"
903#line 354 "dhcp4_parser.yy"
910#line 911 "dhcp4_parser.cc"
914#line 359 "dhcp4_parser.yy"
920#line 921 "dhcp4_parser.cc"
924#line 365 "dhcp4_parser.yy"
926#line 927 "dhcp4_parser.cc"
930#line 372 "dhcp4_parser.yy"
933 ctx.
unique(yystack_[2].value.as < std::string > (), ctx.
loc2pos(yystack_[2].location));
934 ctx.
stack_.back()->set(yystack_[2].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
936#line 937 "dhcp4_parser.cc"
940#line 377 "dhcp4_parser.yy"
944 ctx.
unique(yystack_[2].value.as < std::string > (), ctx.
loc2pos(yystack_[2].location));
945 ctx.
stack_.back()->set(yystack_[2].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
947#line 948 "dhcp4_parser.cc"
951#line 383 "dhcp4_parser.yy"
955#line 956 "dhcp4_parser.cc"
959#line 388 "dhcp4_parser.yy"
964#line 965 "dhcp4_parser.cc"
968#line 391 "dhcp4_parser.yy"
972#line 973 "dhcp4_parser.cc"
976#line 399 "dhcp4_parser.yy"
981#line 982 "dhcp4_parser.cc"
985#line 403 "dhcp4_parser.yy"
990#line 991 "dhcp4_parser.cc"
994#line 407 "dhcp4_parser.yy"
998#line 999 "dhcp4_parser.cc"
1002#line 413 "dhcp4_parser.yy"
1006#line 1007 "dhcp4_parser.cc"
1010#line 415 "dhcp4_parser.yy"
1015#line 1016 "dhcp4_parser.cc"
1019#line 424 "dhcp4_parser.yy"
1022 ctx.
stack_.back()->add(s);
1024#line 1025 "dhcp4_parser.cc"
1028#line 428 "dhcp4_parser.yy"
1031 ctx.
stack_.back()->add(s);
1033#line 1034 "dhcp4_parser.cc"
1037#line 432 "dhcp4_parser.yy"
1041#line 1042 "dhcp4_parser.cc"
1045#line 442 "dhcp4_parser.yy"
1048 const std::string& keyword = yystack_[1].value.as < std::string > ();
1049 error(yystack_[1].location,
1050 "got unexpected keyword \"" + keyword +
"\" in " + where +
" map.");
1052#line 1053 "dhcp4_parser.cc"
1056#line 451 "dhcp4_parser.yy"
1063#line 1064 "dhcp4_parser.cc"
1067#line 456 "dhcp4_parser.yy"
1076#line 1077 "dhcp4_parser.cc"
1080#line 466 "dhcp4_parser.yy"
1087 ctx.
stack_.back()->set(
"Dhcp4", m);
1091#line 1092 "dhcp4_parser.cc"
1095#line 475 "dhcp4_parser.yy"
1101#line 1102 "dhcp4_parser.cc"
1105#line 483 "dhcp4_parser.yy"
1109#line 1110 "dhcp4_parser.cc"
1113#line 489 "dhcp4_parser.yy"
1119#line 1120 "dhcp4_parser.cc"
1123#line 493 "dhcp4_parser.yy"
1128#line 1129 "dhcp4_parser.cc"
1132#line 500 "dhcp4_parser.yy"
1136#line 1137 "dhcp4_parser.cc"
1140#line 577 "dhcp4_parser.yy"
1142 ctx.
unique(
"valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1144 ctx.
stack_.back()->set(
"valid-lifetime", prf);
1146#line 1147 "dhcp4_parser.cc"
1150#line 583 "dhcp4_parser.yy"
1152 ctx.
unique(
"min-valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1154 ctx.
stack_.back()->set(
"min-valid-lifetime", prf);
1156#line 1157 "dhcp4_parser.cc"
1160#line 589 "dhcp4_parser.yy"
1162 ctx.
unique(
"max-valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1164 ctx.
stack_.back()->set(
"max-valid-lifetime", prf);
1166#line 1167 "dhcp4_parser.cc"
1170#line 595 "dhcp4_parser.yy"
1172 ctx.
unique(
"renew-timer", ctx.
loc2pos(yystack_[2].location));
1174 ctx.
stack_.back()->set(
"renew-timer", prf);
1176#line 1177 "dhcp4_parser.cc"
1180#line 601 "dhcp4_parser.yy"
1182 ctx.
unique(
"rebind-timer", ctx.
loc2pos(yystack_[2].location));
1184 ctx.
stack_.back()->set(
"rebind-timer", prf);
1186#line 1187 "dhcp4_parser.cc"
1190#line 607 "dhcp4_parser.yy"
1192 ctx.
unique(
"calculate-tee-times", ctx.
loc2pos(yystack_[2].location));
1194 ctx.
stack_.back()->set(
"calculate-tee-times", ctt);
1196#line 1197 "dhcp4_parser.cc"
1200#line 613 "dhcp4_parser.yy"
1202 ctx.
unique(
"t1-percent", ctx.
loc2pos(yystack_[2].location));
1204 ctx.
stack_.back()->set(
"t1-percent", t1);
1206#line 1207 "dhcp4_parser.cc"
1210#line 619 "dhcp4_parser.yy"
1212 ctx.
unique(
"t2-percent", ctx.
loc2pos(yystack_[2].location));
1214 ctx.
stack_.back()->set(
"t2-percent", t2);
1216#line 1217 "dhcp4_parser.cc"
1220#line 625 "dhcp4_parser.yy"
1222 ctx.
unique(
"cache-threshold", ctx.
loc2pos(yystack_[2].location));
1224 ctx.
stack_.back()->set(
"cache-threshold", ct);
1226#line 1227 "dhcp4_parser.cc"
1230#line 631 "dhcp4_parser.yy"
1232 ctx.
unique(
"cache-max-age", ctx.
loc2pos(yystack_[2].location));
1234 ctx.
stack_.back()->set(
"cache-max-age", cm);
1236#line 1237 "dhcp4_parser.cc"
1240#line 637 "dhcp4_parser.yy"
1242 ctx.
unique(
"decline-probation-period", ctx.
loc2pos(yystack_[2].location));
1244 ctx.
stack_.back()->set(
"decline-probation-period", dpp);
1246#line 1247 "dhcp4_parser.cc"
1250#line 643 "dhcp4_parser.yy"
1252 ctx.
unique(
"server-tag", ctx.
loc2pos(yystack_[0].location));
1255#line 1256 "dhcp4_parser.cc"
1259#line 646 "dhcp4_parser.yy"
1262 ctx.
stack_.back()->set(
"server-tag", stag);
1265#line 1266 "dhcp4_parser.cc"
1269#line 652 "dhcp4_parser.yy"
1271 ctx.
unique(
"parked-packet-limit", ctx.
loc2pos(yystack_[2].location));
1273 ctx.
stack_.back()->set(
"parked-packet-limit", ppl);
1275#line 1276 "dhcp4_parser.cc"
1279#line 658 "dhcp4_parser.yy"
1284#line 1285 "dhcp4_parser.cc"
1288#line 661 "dhcp4_parser.yy"
1291 ctx.
stack_.back()->set(
"allocator", al);
1294#line 1295 "dhcp4_parser.cc"
1298#line 667 "dhcp4_parser.yy"
1300 ctx.
unique(
"echo-client-id", ctx.
loc2pos(yystack_[2].location));
1302 ctx.
stack_.back()->set(
"echo-client-id", echo);
1304#line 1305 "dhcp4_parser.cc"
1308#line 673 "dhcp4_parser.yy"
1310 ctx.
unique(
"match-client-id", ctx.
loc2pos(yystack_[2].location));
1312 ctx.
stack_.back()->set(
"match-client-id", match);
1314#line 1315 "dhcp4_parser.cc"
1318#line 679 "dhcp4_parser.yy"
1320 ctx.
unique(
"authoritative", ctx.
loc2pos(yystack_[2].location));
1322 ctx.
stack_.back()->set(
"authoritative", prf);
1324#line 1325 "dhcp4_parser.cc"
1328#line 685 "dhcp4_parser.yy"
1330 ctx.
unique(
"ddns-send-updates", ctx.
loc2pos(yystack_[2].location));
1332 ctx.
stack_.back()->set(
"ddns-send-updates", b);
1334#line 1335 "dhcp4_parser.cc"
1338#line 691 "dhcp4_parser.yy"
1340 ctx.
unique(
"ddns-override-no-update", ctx.
loc2pos(yystack_[2].location));
1342 ctx.
stack_.back()->set(
"ddns-override-no-update", b);
1344#line 1345 "dhcp4_parser.cc"
1348#line 697 "dhcp4_parser.yy"
1350 ctx.
unique(
"ddns-override-client-update", ctx.
loc2pos(yystack_[2].location));
1352 ctx.
stack_.back()->set(
"ddns-override-client-update", b);
1354#line 1355 "dhcp4_parser.cc"
1358#line 703 "dhcp4_parser.yy"
1361 ctx.
unique(
"ddns-replace-client-name", ctx.
loc2pos(yystack_[0].location));
1363#line 1364 "dhcp4_parser.cc"
1367#line 706 "dhcp4_parser.yy"
1369 ctx.
stack_.back()->set(
"ddns-replace-client-name", yystack_[0].value.as <
ElementPtr > ());
1372#line 1373 "dhcp4_parser.cc"
1376#line 712 "dhcp4_parser.yy"
1380#line 1381 "dhcp4_parser.cc"
1384#line 715 "dhcp4_parser.yy"
1388#line 1389 "dhcp4_parser.cc"
1392#line 718 "dhcp4_parser.yy"
1396#line 1397 "dhcp4_parser.cc"
1400#line 721 "dhcp4_parser.yy"
1404#line 1405 "dhcp4_parser.cc"
1408#line 724 "dhcp4_parser.yy"
1410 error(yystack_[0].location,
"boolean values for the replace-client-name are "
1411 "no longer supported");
1413#line 1414 "dhcp4_parser.cc"
1417#line 730 "dhcp4_parser.yy"
1419 ctx.
unique(
"ddns-generated-prefix", ctx.
loc2pos(yystack_[0].location));
1422#line 1423 "dhcp4_parser.cc"
1426#line 733 "dhcp4_parser.yy"
1429 ctx.
stack_.back()->set(
"ddns-generated-prefix", s);
1432#line 1433 "dhcp4_parser.cc"
1436#line 739 "dhcp4_parser.yy"
1438 ctx.
unique(
"ddns-qualifying-suffix", ctx.
loc2pos(yystack_[0].location));
1441#line 1442 "dhcp4_parser.cc"
1445#line 742 "dhcp4_parser.yy"
1448 ctx.
stack_.back()->set(
"ddns-qualifying-suffix", s);
1451#line 1452 "dhcp4_parser.cc"
1455#line 748 "dhcp4_parser.yy"
1457 ctx.
unique(
"ddns-update-on-renew", ctx.
loc2pos(yystack_[2].location));
1459 ctx.
stack_.back()->set(
"ddns-update-on-renew", b);
1461#line 1462 "dhcp4_parser.cc"
1465#line 757 "dhcp4_parser.yy"
1467 ctx.
unique(
"ddns-use-conflict-resolution", ctx.
loc2pos(yystack_[2].location));
1469 ctx.
warning(yystack_[1].location,
"ddns-use-conflict-resolution is deprecated. "
1470 "Substituting ddns-conflict-resolution-mode");
1472 :
"no-check-with-dhcid"));
1473 ctx.
stack_.back()->set(
"ddns-conflict-resolution-mode", mode);
1475#line 1476 "dhcp4_parser.cc"
1479#line 767 "dhcp4_parser.yy"
1481 ctx.
unique(
"ddns-conflict-resolution-mode", ctx.
loc2pos(yystack_[0].location));
1484#line 1485 "dhcp4_parser.cc"
1488#line 770 "dhcp4_parser.yy"
1490 ctx.
stack_.back()->set(
"ddns-conflict-resolution-mode", yystack_[0].value.as <
ElementPtr > ());
1493#line 1494 "dhcp4_parser.cc"
1497#line 776 "dhcp4_parser.yy"
1501#line 1502 "dhcp4_parser.cc"
1505#line 779 "dhcp4_parser.yy"
1509#line 1510 "dhcp4_parser.cc"
1513#line 782 "dhcp4_parser.yy"
1517#line 1518 "dhcp4_parser.cc"
1521#line 785 "dhcp4_parser.yy"
1525#line 1526 "dhcp4_parser.cc"
1529#line 790 "dhcp4_parser.yy"
1531 ctx.
unique(
"ddns-ttl-percent", ctx.
loc2pos(yystack_[2].location));
1533 ctx.
stack_.back()->set(
"ddns-ttl-percent", ttl);
1535#line 1536 "dhcp4_parser.cc"
1539#line 796 "dhcp4_parser.yy"
1541 ctx.
unique(
"hostname-char-set", ctx.
loc2pos(yystack_[0].location));
1544#line 1545 "dhcp4_parser.cc"
1548#line 799 "dhcp4_parser.yy"
1551 ctx.
stack_.back()->set(
"hostname-char-set", s);
1554#line 1555 "dhcp4_parser.cc"
1558#line 805 "dhcp4_parser.yy"
1560 ctx.
unique(
"hostname-char-replacement", ctx.
loc2pos(yystack_[0].location));
1563#line 1564 "dhcp4_parser.cc"
1567#line 808 "dhcp4_parser.yy"
1570 ctx.
stack_.back()->set(
"hostname-char-replacement", s);
1573#line 1574 "dhcp4_parser.cc"
1577#line 814 "dhcp4_parser.yy"
1579 ctx.
unique(
"store-extended-info", ctx.
loc2pos(yystack_[2].location));
1581 ctx.
stack_.back()->set(
"store-extended-info", b);
1583#line 1584 "dhcp4_parser.cc"
1587#line 820 "dhcp4_parser.yy"
1589 ctx.
unique(
"statistic-default-sample-count", ctx.
loc2pos(yystack_[2].location));
1591 ctx.
stack_.back()->set(
"statistic-default-sample-count", count);
1593#line 1594 "dhcp4_parser.cc"
1597#line 826 "dhcp4_parser.yy"
1599 ctx.
unique(
"statistic-default-sample-age", ctx.
loc2pos(yystack_[2].location));
1601 ctx.
stack_.back()->set(
"statistic-default-sample-age", age);
1603#line 1604 "dhcp4_parser.cc"
1607#line 832 "dhcp4_parser.yy"
1609 ctx.
unique(
"early-global-reservations-lookup", ctx.
loc2pos(yystack_[2].location));
1611 ctx.
stack_.back()->set(
"early-global-reservations-lookup", early);
1613#line 1614 "dhcp4_parser.cc"
1617#line 838 "dhcp4_parser.yy"
1619 ctx.
unique(
"ip-reservations-unique", ctx.
loc2pos(yystack_[2].location));
1621 ctx.
stack_.back()->set(
"ip-reservations-unique", unique);
1623#line 1624 "dhcp4_parser.cc"
1627#line 844 "dhcp4_parser.yy"
1629 ctx.
unique(
"reservations-lookup-first", ctx.
loc2pos(yystack_[2].location));
1631 ctx.
stack_.back()->set(
"reservations-lookup-first", first);
1633#line 1634 "dhcp4_parser.cc"
1637#line 850 "dhcp4_parser.yy"
1639 ctx.
unique(
"offer-lifetime", ctx.
loc2pos(yystack_[2].location));
1641 ctx.
stack_.back()->set(
"offer-lifetime", offer_lifetime);
1643#line 1644 "dhcp4_parser.cc"
1647#line 856 "dhcp4_parser.yy"
1649 ctx.
unique(
"interfaces-config", ctx.
loc2pos(yystack_[0].location));
1651 ctx.
stack_.back()->set(
"interfaces-config", i);
1655#line 1656 "dhcp4_parser.cc"
1659#line 862 "dhcp4_parser.yy"
1665#line 1666 "dhcp4_parser.cc"
1669#line 870 "dhcp4_parser.yy"
1673#line 1674 "dhcp4_parser.cc"
1677#line 887 "dhcp4_parser.yy"
1683#line 1684 "dhcp4_parser.cc"
1687#line 891 "dhcp4_parser.yy"
1692#line 1693 "dhcp4_parser.cc"
1696#line 896 "dhcp4_parser.yy"
1698 ctx.
unique(
"interfaces", ctx.
loc2pos(yystack_[0].location));
1700 ctx.
stack_.back()->set(
"interfaces", l);
1704#line 1705 "dhcp4_parser.cc"
1708#line 902 "dhcp4_parser.yy"
1713#line 1714 "dhcp4_parser.cc"
1717#line 907 "dhcp4_parser.yy"
1719 ctx.
unique(
"dhcp-socket-type", ctx.
loc2pos(yystack_[0].location));
1722#line 1723 "dhcp4_parser.cc"
1726#line 910 "dhcp4_parser.yy"
1728 ctx.
stack_.back()->set(
"dhcp-socket-type", yystack_[0].value.as <
ElementPtr > ());
1731#line 1732 "dhcp4_parser.cc"
1735#line 915 "dhcp4_parser.yy"
1737#line 1738 "dhcp4_parser.cc"
1741#line 916 "dhcp4_parser.yy"
1743#line 1744 "dhcp4_parser.cc"
1747#line 919 "dhcp4_parser.yy"
1749 ctx.
unique(
"outbound-interface", ctx.
loc2pos(yystack_[0].location));
1752#line 1753 "dhcp4_parser.cc"
1756#line 922 "dhcp4_parser.yy"
1758 ctx.
stack_.back()->set(
"outbound-interface", yystack_[0].value.as <
ElementPtr > ());
1761#line 1762 "dhcp4_parser.cc"
1765#line 927 "dhcp4_parser.yy"
1769#line 1770 "dhcp4_parser.cc"
1773#line 929 "dhcp4_parser.yy"
1777#line 1778 "dhcp4_parser.cc"
1781#line 933 "dhcp4_parser.yy"
1785 ctx.
stack_.back()->set(
"re-detect", b);
1787#line 1788 "dhcp4_parser.cc"
1791#line 939 "dhcp4_parser.yy"
1793 ctx.
unique(
"service-sockets-require-all", ctx.
loc2pos(yystack_[2].location));
1795 ctx.
stack_.back()->set(
"service-sockets-require-all", b);
1797#line 1798 "dhcp4_parser.cc"
1801#line 945 "dhcp4_parser.yy"
1803 ctx.
unique(
"service-sockets-retry-wait-time", ctx.
loc2pos(yystack_[2].location));
1805 ctx.
stack_.back()->set(
"service-sockets-retry-wait-time", n);
1807#line 1808 "dhcp4_parser.cc"
1811#line 951 "dhcp4_parser.yy"
1813 ctx.
unique(
"service-sockets-max-retries", ctx.
loc2pos(yystack_[2].location));
1815 ctx.
stack_.back()->set(
"service-sockets-max-retries", n);
1817#line 1818 "dhcp4_parser.cc"
1821#line 957 "dhcp4_parser.yy"
1823 ctx.
unique(
"lease-database", ctx.
loc2pos(yystack_[0].location));
1825 ctx.
stack_.back()->set(
"lease-database", i);
1829#line 1830 "dhcp4_parser.cc"
1833#line 963 "dhcp4_parser.yy"
1840#line 1841 "dhcp4_parser.cc"
1844#line 970 "dhcp4_parser.yy"
1846 ctx.
unique(
"sanity-checks", ctx.
loc2pos(yystack_[0].location));
1848 ctx.
stack_.back()->set(
"sanity-checks", m);
1852#line 1853 "dhcp4_parser.cc"
1856#line 976 "dhcp4_parser.yy"
1861#line 1862 "dhcp4_parser.cc"
1865#line 983 "dhcp4_parser.yy"
1869#line 1870 "dhcp4_parser.cc"
1873#line 992 "dhcp4_parser.yy"
1875 ctx.
unique(
"lease-checks", ctx.
loc2pos(yystack_[0].location));
1878#line 1879 "dhcp4_parser.cc"
1882#line 995 "dhcp4_parser.yy"
1885 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
1886 (
string(yystack_[0].value.as < std::string > ()) ==
"warn") ||
1887 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
1888 (
string(yystack_[0].value.as < std::string > ()) ==
"fix-del") ||
1889 (
string(yystack_[0].value.as < std::string > ()) ==
"del")) {
1891 ctx.
stack_.back()->set(
"lease-checks", user);
1894 error(yystack_[0].location,
"Unsupported 'lease-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
1895 ", supported values are: none, warn, fix, fix-del, del");
1898#line 1899 "dhcp4_parser.cc"
1902#line 1011 "dhcp4_parser.yy"
1904 ctx.
unique(
"extended-info-checks", ctx.
loc2pos(yystack_[0].location));
1907#line 1908 "dhcp4_parser.cc"
1911#line 1014 "dhcp4_parser.yy"
1914 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
1915 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
1916 (
string(yystack_[0].value.as < std::string > ()) ==
"strict") ||
1917 (
string(yystack_[0].value.as < std::string > ()) ==
"pedantic")) {
1919 ctx.
stack_.back()->set(
"extended-info-checks", user);
1922 error(yystack_[0].location,
"Unsupported 'extended-info-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
1923 ", supported values are: none, fix, strict, pedantic");
1926#line 1927 "dhcp4_parser.cc"
1930#line 1029 "dhcp4_parser.yy"
1932 ctx.
unique(
"hosts-database", ctx.
loc2pos(yystack_[0].location));
1934 ctx.
stack_.back()->set(
"hosts-database", i);
1938#line 1939 "dhcp4_parser.cc"
1942#line 1035 "dhcp4_parser.yy"
1949#line 1950 "dhcp4_parser.cc"
1953#line 1042 "dhcp4_parser.yy"
1955 ctx.
unique(
"hosts-databases", ctx.
loc2pos(yystack_[0].location));
1957 ctx.
stack_.back()->set(
"hosts-databases", l);
1961#line 1962 "dhcp4_parser.cc"
1965#line 1048 "dhcp4_parser.yy"
1970#line 1971 "dhcp4_parser.cc"
1974#line 1059 "dhcp4_parser.yy"
1978#line 1979 "dhcp4_parser.cc"
1982#line 1064 "dhcp4_parser.yy"
1985 ctx.
stack_.back()->add(m);
1988#line 1989 "dhcp4_parser.cc"
1992#line 1068 "dhcp4_parser.yy"
1998#line 1999 "dhcp4_parser.cc"
2002#line 1076 "dhcp4_parser.yy"
2006#line 2007 "dhcp4_parser.cc"
2010#line 1106 "dhcp4_parser.yy"
2015#line 2016 "dhcp4_parser.cc"
2019#line 1109 "dhcp4_parser.yy"
2024#line 2025 "dhcp4_parser.cc"
2028#line 1114 "dhcp4_parser.yy"
2030#line 2031 "dhcp4_parser.cc"
2034#line 1115 "dhcp4_parser.yy"
2036#line 2037 "dhcp4_parser.cc"
2040#line 1116 "dhcp4_parser.yy"
2042#line 2043 "dhcp4_parser.cc"
2046#line 1119 "dhcp4_parser.yy"
2051#line 2052 "dhcp4_parser.cc"
2055#line 1122 "dhcp4_parser.yy"
2058 ctx.
stack_.back()->set(
"user", user);
2061#line 2062 "dhcp4_parser.cc"
2065#line 1128 "dhcp4_parser.yy"
2070#line 2071 "dhcp4_parser.cc"
2074#line 1131 "dhcp4_parser.yy"
2077 ctx.
stack_.back()->set(
"password", pwd);
2080#line 2081 "dhcp4_parser.cc"
2084#line 1137 "dhcp4_parser.yy"
2089#line 2090 "dhcp4_parser.cc"
2093#line 1140 "dhcp4_parser.yy"
2096 ctx.
stack_.back()->set(
"host", h);
2099#line 2100 "dhcp4_parser.cc"
2103#line 1146 "dhcp4_parser.yy"
2107 ctx.
stack_.back()->set(
"port", p);
2109#line 2110 "dhcp4_parser.cc"
2113#line 1152 "dhcp4_parser.yy"
2118#line 2119 "dhcp4_parser.cc"
2122#line 1155 "dhcp4_parser.yy"
2125 ctx.
stack_.back()->set(
"name", name);
2128#line 2129 "dhcp4_parser.cc"
2132#line 1161 "dhcp4_parser.yy"
2136 ctx.
stack_.back()->set(
"persist", n);
2138#line 2139 "dhcp4_parser.cc"
2142#line 1167 "dhcp4_parser.yy"
2144 ctx.
unique(
"lfc-interval", ctx.
loc2pos(yystack_[2].location));
2146 ctx.
stack_.back()->set(
"lfc-interval", n);
2148#line 2149 "dhcp4_parser.cc"
2152#line 1173 "dhcp4_parser.yy"
2156 ctx.
stack_.back()->set(
"readonly", n);
2158#line 2159 "dhcp4_parser.cc"
2162#line 1179 "dhcp4_parser.yy"
2164 ctx.
unique(
"connect-timeout", ctx.
loc2pos(yystack_[2].location));
2166 ctx.
stack_.back()->set(
"connect-timeout", n);
2168#line 2169 "dhcp4_parser.cc"
2172#line 1185 "dhcp4_parser.yy"
2174 ctx.
unique(
"read-timeout", ctx.
loc2pos(yystack_[2].location));
2176 ctx.
stack_.back()->set(
"read-timeout", n);
2178#line 2179 "dhcp4_parser.cc"
2182#line 1191 "dhcp4_parser.yy"
2184 ctx.
unique(
"write-timeout", ctx.
loc2pos(yystack_[2].location));
2186 ctx.
stack_.back()->set(
"write-timeout", n);
2188#line 2189 "dhcp4_parser.cc"
2192#line 1197 "dhcp4_parser.yy"
2194 ctx.
unique(
"tcp-user-timeout", ctx.
loc2pos(yystack_[2].location));
2196 ctx.
stack_.back()->set(
"tcp-user-timeout", n);
2198#line 2199 "dhcp4_parser.cc"
2202#line 1203 "dhcp4_parser.yy"
2204 ctx.
unique(
"max-reconnect-tries", ctx.
loc2pos(yystack_[2].location));
2206 ctx.
stack_.back()->set(
"max-reconnect-tries", n);
2208#line 2209 "dhcp4_parser.cc"
2212#line 1209 "dhcp4_parser.yy"
2214 ctx.
unique(
"reconnect-wait-time", ctx.
loc2pos(yystack_[2].location));
2216 ctx.
stack_.back()->set(
"reconnect-wait-time", n);
2218#line 2219 "dhcp4_parser.cc"
2222#line 1215 "dhcp4_parser.yy"
2227#line 2228 "dhcp4_parser.cc"
2231#line 1218 "dhcp4_parser.yy"
2236#line 2237 "dhcp4_parser.cc"
2240#line 1223 "dhcp4_parser.yy"
2242#line 2243 "dhcp4_parser.cc"
2246#line 1224 "dhcp4_parser.yy"
2248#line 2249 "dhcp4_parser.cc"
2252#line 1225 "dhcp4_parser.yy"
2254#line 2255 "dhcp4_parser.cc"
2258#line 1228 "dhcp4_parser.yy"
2260 ctx.
unique(
"retry-on-startup", ctx.
loc2pos(yystack_[2].location));
2262 ctx.
stack_.back()->set(
"retry-on-startup", n);
2264#line 2265 "dhcp4_parser.cc"
2268#line 1234 "dhcp4_parser.yy"
2270 ctx.
unique(
"max-row-errors", ctx.
loc2pos(yystack_[2].location));
2272 ctx.
stack_.back()->set(
"max-row-errors", n);
2274#line 2275 "dhcp4_parser.cc"
2278#line 1240 "dhcp4_parser.yy"
2280 ctx.
unique(
"trust-anchor", ctx.
loc2pos(yystack_[0].location));
2283#line 2284 "dhcp4_parser.cc"
2287#line 1243 "dhcp4_parser.yy"
2290 ctx.
stack_.back()->set(
"trust-anchor", ca);
2293#line 2294 "dhcp4_parser.cc"
2297#line 1249 "dhcp4_parser.yy"
2302#line 2303 "dhcp4_parser.cc"
2306#line 1252 "dhcp4_parser.yy"
2309 ctx.
stack_.back()->set(
"cert-file", cert);
2312#line 2313 "dhcp4_parser.cc"
2316#line 1258 "dhcp4_parser.yy"
2321#line 2322 "dhcp4_parser.cc"
2325#line 1261 "dhcp4_parser.yy"
2328 ctx.
stack_.back()->set(
"key-file", key);
2331#line 2332 "dhcp4_parser.cc"
2335#line 1267 "dhcp4_parser.yy"
2337 ctx.
unique(
"cipher-list", ctx.
loc2pos(yystack_[0].location));
2340#line 2341 "dhcp4_parser.cc"
2344#line 1270 "dhcp4_parser.yy"
2347 ctx.
stack_.back()->set(
"cipher-list", cl);
2350#line 2351 "dhcp4_parser.cc"
2354#line 1276 "dhcp4_parser.yy"
2356 ctx.
unique(
"host-reservation-identifiers", ctx.
loc2pos(yystack_[0].location));
2358 ctx.
stack_.back()->set(
"host-reservation-identifiers", l);
2362#line 2363 "dhcp4_parser.cc"
2366#line 1282 "dhcp4_parser.yy"
2371#line 2372 "dhcp4_parser.cc"
2375#line 1289 "dhcp4_parser.yy"
2379#line 2380 "dhcp4_parser.cc"
2383#line 1301 "dhcp4_parser.yy"
2386 ctx.
stack_.back()->add(duid);
2388#line 2389 "dhcp4_parser.cc"
2392#line 1306 "dhcp4_parser.yy"
2395 ctx.
stack_.back()->add(hwaddr);
2397#line 2398 "dhcp4_parser.cc"
2401#line 1311 "dhcp4_parser.yy"
2404 ctx.
stack_.back()->add(circuit);
2406#line 2407 "dhcp4_parser.cc"
2410#line 1316 "dhcp4_parser.yy"
2413 ctx.
stack_.back()->add(client);
2415#line 2416 "dhcp4_parser.cc"
2419#line 1321 "dhcp4_parser.yy"
2422 ctx.
stack_.back()->add(flex_id);
2424#line 2425 "dhcp4_parser.cc"
2428#line 1328 "dhcp4_parser.yy"
2430 ctx.
unique(
"multi-threading", ctx.
loc2pos(yystack_[0].location));
2432 ctx.
stack_.back()->set(
"multi-threading", mt);
2433 ctx.
stack_.push_back(mt);
2436#line 2437 "dhcp4_parser.cc"
2440#line 1334 "dhcp4_parser.yy"
2443 ctx.
require(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
2447#line 2448 "dhcp4_parser.cc"
2451#line 1343 "dhcp4_parser.yy"
2455#line 2456 "dhcp4_parser.cc"
2459#line 1356 "dhcp4_parser.yy"
2461 ctx.
unique(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location));
2463 ctx.
stack_.back()->set(
"enable-multi-threading", b);
2465#line 2466 "dhcp4_parser.cc"
2469#line 1362 "dhcp4_parser.yy"
2471 ctx.
unique(
"thread-pool-size", ctx.
loc2pos(yystack_[2].location));
2473 ctx.
stack_.back()->set(
"thread-pool-size", prf);
2475#line 2476 "dhcp4_parser.cc"
2479#line 1368 "dhcp4_parser.yy"
2481 ctx.
unique(
"packet-queue-size", ctx.
loc2pos(yystack_[2].location));
2483 ctx.
stack_.back()->set(
"packet-queue-size", prf);
2485#line 2486 "dhcp4_parser.cc"
2489#line 1374 "dhcp4_parser.yy"
2491 ctx.
unique(
"hooks-libraries", ctx.
loc2pos(yystack_[0].location));
2493 ctx.
stack_.back()->set(
"hooks-libraries", l);
2497#line 2498 "dhcp4_parser.cc"
2501#line 1380 "dhcp4_parser.yy"
2506#line 2507 "dhcp4_parser.cc"
2510#line 1391 "dhcp4_parser.yy"
2514#line 2515 "dhcp4_parser.cc"
2518#line 1396 "dhcp4_parser.yy"
2521 ctx.
stack_.back()->add(m);
2524#line 2525 "dhcp4_parser.cc"
2528#line 1400 "dhcp4_parser.yy"
2534#line 2535 "dhcp4_parser.cc"
2538#line 1406 "dhcp4_parser.yy"
2544#line 2545 "dhcp4_parser.cc"
2548#line 1410 "dhcp4_parser.yy"
2554#line 2555 "dhcp4_parser.cc"
2558#line 1418 "dhcp4_parser.yy"
2562#line 2563 "dhcp4_parser.cc"
2566#line 1428 "dhcp4_parser.yy"
2571#line 2572 "dhcp4_parser.cc"
2575#line 1431 "dhcp4_parser.yy"
2578 ctx.
stack_.back()->set(
"library", lib);
2581#line 2582 "dhcp4_parser.cc"
2585#line 1437 "dhcp4_parser.yy"
2587 ctx.
unique(
"parameters", ctx.
loc2pos(yystack_[0].location));
2590#line 2591 "dhcp4_parser.cc"
2594#line 1440 "dhcp4_parser.yy"
2596 ctx.
stack_.back()->set(
"parameters", yystack_[0].value.as <
ElementPtr > ());
2599#line 2600 "dhcp4_parser.cc"
2603#line 1446 "dhcp4_parser.yy"
2605 ctx.
unique(
"expired-leases-processing", ctx.
loc2pos(yystack_[0].location));
2607 ctx.
stack_.back()->set(
"expired-leases-processing", m);
2611#line 2612 "dhcp4_parser.cc"
2615#line 1452 "dhcp4_parser.yy"
2621#line 2622 "dhcp4_parser.cc"
2625#line 1460 "dhcp4_parser.yy"
2629#line 2630 "dhcp4_parser.cc"
2633#line 1473 "dhcp4_parser.yy"
2635 ctx.
unique(
"reclaim-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2637 ctx.
stack_.back()->set(
"reclaim-timer-wait-time", value);
2639#line 2640 "dhcp4_parser.cc"
2643#line 1479 "dhcp4_parser.yy"
2645 ctx.
unique(
"flush-reclaimed-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2647 ctx.
stack_.back()->set(
"flush-reclaimed-timer-wait-time", value);
2649#line 2650 "dhcp4_parser.cc"
2653#line 1485 "dhcp4_parser.yy"
2655 ctx.
unique(
"hold-reclaimed-time", ctx.
loc2pos(yystack_[2].location));
2657 ctx.
stack_.back()->set(
"hold-reclaimed-time", value);
2659#line 2660 "dhcp4_parser.cc"
2663#line 1491 "dhcp4_parser.yy"
2665 ctx.
unique(
"max-reclaim-leases", ctx.
loc2pos(yystack_[2].location));
2667 ctx.
stack_.back()->set(
"max-reclaim-leases", value);
2669#line 2670 "dhcp4_parser.cc"
2673#line 1497 "dhcp4_parser.yy"
2675 ctx.
unique(
"max-reclaim-time", ctx.
loc2pos(yystack_[2].location));
2677 ctx.
stack_.back()->set(
"max-reclaim-time", value);
2679#line 2680 "dhcp4_parser.cc"
2683#line 1503 "dhcp4_parser.yy"
2685 ctx.
unique(
"unwarned-reclaim-cycles", ctx.
loc2pos(yystack_[2].location));
2687 ctx.
stack_.back()->set(
"unwarned-reclaim-cycles", value);
2689#line 2690 "dhcp4_parser.cc"
2693#line 1512 "dhcp4_parser.yy"
2697 ctx.
stack_.back()->set(
"subnet4", l);
2701#line 2702 "dhcp4_parser.cc"
2705#line 1518 "dhcp4_parser.yy"
2710#line 2711 "dhcp4_parser.cc"
2714#line 1532 "dhcp4_parser.yy"
2718#line 2719 "dhcp4_parser.cc"
2722#line 1541 "dhcp4_parser.yy"
2725 ctx.
stack_.back()->add(m);
2728#line 2729 "dhcp4_parser.cc"
2732#line 1545 "dhcp4_parser.yy"
2754#line 2755 "dhcp4_parser.cc"
2758#line 1567 "dhcp4_parser.yy"
2764#line 2765 "dhcp4_parser.cc"
2768#line 1571 "dhcp4_parser.yy"
2774#line 2775 "dhcp4_parser.cc"
2778#line 1580 "dhcp4_parser.yy"
2782#line 2783 "dhcp4_parser.cc"
2786#line 1637 "dhcp4_parser.yy"
2791#line 2792 "dhcp4_parser.cc"
2795#line 1640 "dhcp4_parser.yy"
2798 ctx.
stack_.back()->set(
"subnet", subnet);
2801#line 2802 "dhcp4_parser.cc"
2805#line 1646 "dhcp4_parser.yy"
2807 ctx.
unique(
"4o6-interface", ctx.
loc2pos(yystack_[0].location));
2810#line 2811 "dhcp4_parser.cc"
2814#line 1649 "dhcp4_parser.yy"
2817 ctx.
stack_.back()->set(
"4o6-interface", iface);
2820#line 2821 "dhcp4_parser.cc"
2824#line 1655 "dhcp4_parser.yy"
2826 ctx.
unique(
"4o6-interface-id", ctx.
loc2pos(yystack_[0].location));
2829#line 2830 "dhcp4_parser.cc"
2833#line 1658 "dhcp4_parser.yy"
2836 ctx.
stack_.back()->set(
"4o6-interface-id", iface);
2839#line 2840 "dhcp4_parser.cc"
2843#line 1664 "dhcp4_parser.yy"
2845 ctx.
unique(
"4o6-subnet", ctx.
loc2pos(yystack_[0].location));
2848#line 2849 "dhcp4_parser.cc"
2852#line 1667 "dhcp4_parser.yy"
2855 ctx.
stack_.back()->set(
"4o6-subnet", iface);
2858#line 2859 "dhcp4_parser.cc"
2862#line 1673 "dhcp4_parser.yy"
2867#line 2868 "dhcp4_parser.cc"
2871#line 1676 "dhcp4_parser.yy"
2874 ctx.
stack_.back()->set(
"interface", iface);
2877#line 2878 "dhcp4_parser.cc"
2881#line 1682 "dhcp4_parser.yy"
2883 ctx.
unique(
"client-class", ctx.
loc2pos(yystack_[0].location));
2886#line 2887 "dhcp4_parser.cc"
2890#line 1685 "dhcp4_parser.yy"
2893 ctx.
stack_.back()->set(
"client-class", cls);
2896#line 2897 "dhcp4_parser.cc"
2900#line 1691 "dhcp4_parser.yy"
2902 ctx.
unique(
"require-client-classes", ctx.
loc2pos(yystack_[0].location));
2904 ctx.
stack_.back()->set(
"require-client-classes", c);
2908#line 2909 "dhcp4_parser.cc"
2912#line 1697 "dhcp4_parser.yy"
2917#line 2918 "dhcp4_parser.cc"
2921#line 1702 "dhcp4_parser.yy"
2923 ctx.
unique(
"reservations-global", ctx.
loc2pos(yystack_[2].location));
2925 ctx.
stack_.back()->set(
"reservations-global", b);
2927#line 2928 "dhcp4_parser.cc"
2931#line 1708 "dhcp4_parser.yy"
2933 ctx.
unique(
"reservations-in-subnet", ctx.
loc2pos(yystack_[2].location));
2935 ctx.
stack_.back()->set(
"reservations-in-subnet", b);
2937#line 2938 "dhcp4_parser.cc"
2941#line 1714 "dhcp4_parser.yy"
2943 ctx.
unique(
"reservations-out-of-pool", ctx.
loc2pos(yystack_[2].location));
2945 ctx.
stack_.back()->set(
"reservations-out-of-pool", b);
2947#line 2948 "dhcp4_parser.cc"
2951#line 1720 "dhcp4_parser.yy"
2953 ctx.
unique(
"reservation-mode", ctx.
loc2pos(yystack_[0].location));
2956#line 2957 "dhcp4_parser.cc"
2960#line 1723 "dhcp4_parser.yy"
2962 ctx.
stack_.back()->set(
"reservation-mode", yystack_[0].value.as <
ElementPtr > ());
2965#line 2966 "dhcp4_parser.cc"
2969#line 1728 "dhcp4_parser.yy"
2971#line 2972 "dhcp4_parser.cc"
2975#line 1729 "dhcp4_parser.yy"
2977#line 2978 "dhcp4_parser.cc"
2981#line 1730 "dhcp4_parser.yy"
2983#line 2984 "dhcp4_parser.cc"
2987#line 1731 "dhcp4_parser.yy"
2989#line 2990 "dhcp4_parser.cc"
2993#line 1734 "dhcp4_parser.yy"
2997 ctx.
stack_.back()->set(
"id",
id);
2999#line 3000 "dhcp4_parser.cc"
3003#line 1742 "dhcp4_parser.yy"
3005 ctx.
unique(
"shared-networks", ctx.
loc2pos(yystack_[0].location));
3007 ctx.
stack_.back()->set(
"shared-networks", l);
3011#line 3012 "dhcp4_parser.cc"
3015#line 1748 "dhcp4_parser.yy"
3020#line 3021 "dhcp4_parser.cc"
3024#line 1761 "dhcp4_parser.yy"
3028#line 3029 "dhcp4_parser.cc"
3032#line 1766 "dhcp4_parser.yy"
3035 ctx.
stack_.back()->add(m);
3038#line 3039 "dhcp4_parser.cc"
3042#line 1770 "dhcp4_parser.yy"
3046#line 3047 "dhcp4_parser.cc"
3050#line 1776 "dhcp4_parser.yy"
3054#line 3055 "dhcp4_parser.cc"
3058#line 1831 "dhcp4_parser.yy"
3060 ctx.
unique(
"option-def", ctx.
loc2pos(yystack_[0].location));
3062 ctx.
stack_.back()->set(
"option-def", l);
3066#line 3067 "dhcp4_parser.cc"
3070#line 1837 "dhcp4_parser.yy"
3075#line 3076 "dhcp4_parser.cc"
3079#line 1845 "dhcp4_parser.yy"
3084#line 3085 "dhcp4_parser.cc"
3088#line 1848 "dhcp4_parser.yy"
3092#line 3093 "dhcp4_parser.cc"
3096#line 1860 "dhcp4_parser.yy"
3100#line 3101 "dhcp4_parser.cc"
3104#line 1867 "dhcp4_parser.yy"
3107 ctx.
stack_.back()->add(m);
3110#line 3111 "dhcp4_parser.cc"
3114#line 1871 "dhcp4_parser.yy"
3122#line 3123 "dhcp4_parser.cc"
3126#line 1882 "dhcp4_parser.yy"
3132#line 3133 "dhcp4_parser.cc"
3136#line 1886 "dhcp4_parser.yy"
3144#line 3145 "dhcp4_parser.cc"
3148#line 1902 "dhcp4_parser.yy"
3152#line 3153 "dhcp4_parser.cc"
3156#line 1921 "dhcp4_parser.yy"
3160 ctx.
stack_.back()->set(
"code", code);
3162#line 3163 "dhcp4_parser.cc"
3166#line 1929 "dhcp4_parser.yy"
3171#line 3172 "dhcp4_parser.cc"
3175#line 1932 "dhcp4_parser.yy"
3178 ctx.
stack_.back()->set(
"type", prf);
3181#line 3182 "dhcp4_parser.cc"
3185#line 1938 "dhcp4_parser.yy"
3187 ctx.
unique(
"record-types", ctx.
loc2pos(yystack_[0].location));
3190#line 3191 "dhcp4_parser.cc"
3194#line 1941 "dhcp4_parser.yy"
3197 ctx.
stack_.back()->set(
"record-types", rtypes);
3200#line 3201 "dhcp4_parser.cc"
3204#line 1947 "dhcp4_parser.yy"
3209#line 3210 "dhcp4_parser.cc"
3213#line 1950 "dhcp4_parser.yy"
3216 ctx.
stack_.back()->set(
"space", space);
3219#line 3220 "dhcp4_parser.cc"
3223#line 1958 "dhcp4_parser.yy"
3225 ctx.
unique(
"encapsulate", ctx.
loc2pos(yystack_[0].location));
3228#line 3229 "dhcp4_parser.cc"
3232#line 1961 "dhcp4_parser.yy"
3235 ctx.
stack_.back()->set(
"encapsulate", encap);
3238#line 3239 "dhcp4_parser.cc"
3242#line 1967 "dhcp4_parser.yy"
3246 ctx.
stack_.back()->set(
"array", array);
3248#line 3249 "dhcp4_parser.cc"
3252#line 1977 "dhcp4_parser.yy"
3254 ctx.
unique(
"option-data", ctx.
loc2pos(yystack_[0].location));
3256 ctx.
stack_.back()->set(
"option-data", l);
3260#line 3261 "dhcp4_parser.cc"
3264#line 1983 "dhcp4_parser.yy"
3269#line 3270 "dhcp4_parser.cc"
3273#line 1998 "dhcp4_parser.yy"
3277#line 3278 "dhcp4_parser.cc"
3281#line 2005 "dhcp4_parser.yy"
3284 ctx.
stack_.back()->add(m);
3287#line 3288 "dhcp4_parser.cc"
3291#line 2009 "dhcp4_parser.yy"
3296#line 3297 "dhcp4_parser.cc"
3300#line 2017 "dhcp4_parser.yy"
3306#line 3307 "dhcp4_parser.cc"
3310#line 2021 "dhcp4_parser.yy"
3315#line 3316 "dhcp4_parser.cc"
3319#line 2037 "dhcp4_parser.yy"
3323#line 3324 "dhcp4_parser.cc"
3327#line 2058 "dhcp4_parser.yy"
3332#line 3333 "dhcp4_parser.cc"
3336#line 2061 "dhcp4_parser.yy"
3339 ctx.
stack_.back()->set(
"data", data);
3342#line 3343 "dhcp4_parser.cc"
3346#line 2071 "dhcp4_parser.yy"
3348 ctx.
unique(
"csv-format", ctx.
loc2pos(yystack_[2].location));
3350 ctx.
stack_.back()->set(
"csv-format", csv);
3352#line 3353 "dhcp4_parser.cc"
3356#line 2077 "dhcp4_parser.yy"
3358 ctx.
unique(
"always-send", ctx.
loc2pos(yystack_[2].location));
3360 ctx.
stack_.back()->set(
"always-send", persist);
3362#line 3363 "dhcp4_parser.cc"
3366#line 2083 "dhcp4_parser.yy"
3368 ctx.
unique(
"never-send", ctx.
loc2pos(yystack_[2].location));
3370 ctx.
stack_.back()->set(
"never-send", cancel);
3372#line 3373 "dhcp4_parser.cc"
3376#line 2092 "dhcp4_parser.yy"
3380 ctx.
stack_.back()->set(
"pools", l);
3384#line 3385 "dhcp4_parser.cc"
3388#line 2098 "dhcp4_parser.yy"
3393#line 3394 "dhcp4_parser.cc"
3397#line 2111 "dhcp4_parser.yy"
3401#line 3402 "dhcp4_parser.cc"
3405#line 2116 "dhcp4_parser.yy"
3408 ctx.
stack_.back()->add(m);
3411#line 3412 "dhcp4_parser.cc"
3415#line 2120 "dhcp4_parser.yy"
3421#line 3422 "dhcp4_parser.cc"
3425#line 2126 "dhcp4_parser.yy"
3431#line 3432 "dhcp4_parser.cc"
3435#line 2130 "dhcp4_parser.yy"
3441#line 3442 "dhcp4_parser.cc"
3445#line 2138 "dhcp4_parser.yy"
3449#line 3450 "dhcp4_parser.cc"
3453#line 2153 "dhcp4_parser.yy"
3458#line 3459 "dhcp4_parser.cc"
3462#line 2156 "dhcp4_parser.yy"
3465 ctx.
stack_.back()->set(
"pool", pool);
3468#line 3469 "dhcp4_parser.cc"
3472#line 2162 "dhcp4_parser.yy"
3476 ctx.
stack_.back()->set(
"pool-id",
id);
3478#line 3479 "dhcp4_parser.cc"
3482#line 2168 "dhcp4_parser.yy"
3486#line 3487 "dhcp4_parser.cc"
3490#line 2170 "dhcp4_parser.yy"
3499 if ((old->size() != 1) || !old->contains(
"comment")) {
3500 std::stringstream msg;
3501 msg <<
"duplicate user-context entries (previous at "
3502 << old->getPosition().str() <<
")";
3503 error(yystack_[3].location, msg.str());
3506 user_context->set(
"comment", old->get(
"comment"));
3510 parent->set(
"user-context", user_context);
3513#line 3514 "dhcp4_parser.cc"
3517#line 2193 "dhcp4_parser.yy"
3521#line 3522 "dhcp4_parser.cc"
3525#line 2195 "dhcp4_parser.yy"
3530 user_context->set(
"comment", comment);
3536 if (old->contains(
"comment")) {
3537 std::stringstream msg;
3538 msg <<
"duplicate user-context/comment entries (previous at "
3539 << old->getPosition().str() <<
")";
3540 error(yystack_[3].location, msg.str());
3543 merge(user_context, old);
3547 parent->set(
"user-context", user_context);
3550#line 3551 "dhcp4_parser.cc"
3554#line 2223 "dhcp4_parser.yy"
3556 ctx.
unique(
"reservations", ctx.
loc2pos(yystack_[0].location));
3558 ctx.
stack_.back()->set(
"reservations", l);
3562#line 3563 "dhcp4_parser.cc"
3566#line 2229 "dhcp4_parser.yy"
3571#line 3572 "dhcp4_parser.cc"
3575#line 2240 "dhcp4_parser.yy"
3579#line 3580 "dhcp4_parser.cc"
3583#line 2245 "dhcp4_parser.yy"
3586 ctx.
stack_.back()->add(m);
3589#line 3590 "dhcp4_parser.cc"
3593#line 2249 "dhcp4_parser.yy"
3598#line 3599 "dhcp4_parser.cc"
3602#line 2254 "dhcp4_parser.yy"
3608#line 3609 "dhcp4_parser.cc"
3612#line 2258 "dhcp4_parser.yy"
3617#line 3618 "dhcp4_parser.cc"
3621#line 2269 "dhcp4_parser.yy"
3625#line 3626 "dhcp4_parser.cc"
3629#line 2292 "dhcp4_parser.yy"
3631 ctx.
unique(
"next-server", ctx.
loc2pos(yystack_[0].location));
3634#line 3635 "dhcp4_parser.cc"
3638#line 2295 "dhcp4_parser.yy"
3641 ctx.
stack_.back()->set(
"next-server", next_server);
3644#line 3645 "dhcp4_parser.cc"
3648#line 2301 "dhcp4_parser.yy"
3650 ctx.
unique(
"server-hostname", ctx.
loc2pos(yystack_[0].location));
3653#line 3654 "dhcp4_parser.cc"
3657#line 2304 "dhcp4_parser.yy"
3660 ctx.
stack_.back()->set(
"server-hostname", srv);
3663#line 3664 "dhcp4_parser.cc"
3667#line 2310 "dhcp4_parser.yy"
3669 ctx.
unique(
"boot-file-name", ctx.
loc2pos(yystack_[0].location));
3672#line 3673 "dhcp4_parser.cc"
3676#line 2313 "dhcp4_parser.yy"
3679 ctx.
stack_.back()->set(
"boot-file-name", bootfile);
3682#line 3683 "dhcp4_parser.cc"
3686#line 2319 "dhcp4_parser.yy"
3688 ctx.
unique(
"ip-address", ctx.
loc2pos(yystack_[0].location));
3691#line 3692 "dhcp4_parser.cc"
3695#line 2322 "dhcp4_parser.yy"
3698 ctx.
stack_.back()->set(
"ip-address", addr);
3701#line 3702 "dhcp4_parser.cc"
3705#line 2328 "dhcp4_parser.yy"
3707 ctx.
unique(
"ip-addresses", ctx.
loc2pos(yystack_[0].location));
3709 ctx.
stack_.back()->set(
"ip-addresses", l);
3713#line 3714 "dhcp4_parser.cc"
3717#line 2334 "dhcp4_parser.yy"
3722#line 3723 "dhcp4_parser.cc"
3726#line 2339 "dhcp4_parser.yy"
3731#line 3732 "dhcp4_parser.cc"
3735#line 2342 "dhcp4_parser.yy"
3738 ctx.
stack_.back()->set(
"duid", d);
3741#line 3742 "dhcp4_parser.cc"
3745#line 2348 "dhcp4_parser.yy"
3747 ctx.
unique(
"hw-address", ctx.
loc2pos(yystack_[0].location));
3750#line 3751 "dhcp4_parser.cc"
3754#line 2351 "dhcp4_parser.yy"
3757 ctx.
stack_.back()->set(
"hw-address", hw);
3760#line 3761 "dhcp4_parser.cc"
3764#line 2357 "dhcp4_parser.yy"
3769#line 3770 "dhcp4_parser.cc"
3773#line 2360 "dhcp4_parser.yy"
3776 ctx.
stack_.back()->set(
"client-id", hw);
3779#line 3780 "dhcp4_parser.cc"
3783#line 2366 "dhcp4_parser.yy"
3785 ctx.
unique(
"circuit-id", ctx.
loc2pos(yystack_[0].location));
3788#line 3789 "dhcp4_parser.cc"
3792#line 2369 "dhcp4_parser.yy"
3795 ctx.
stack_.back()->set(
"circuit-id", hw);
3798#line 3799 "dhcp4_parser.cc"
3802#line 2375 "dhcp4_parser.yy"
3807#line 3808 "dhcp4_parser.cc"
3811#line 2378 "dhcp4_parser.yy"
3814 ctx.
stack_.back()->set(
"flex-id", hw);
3817#line 3818 "dhcp4_parser.cc"
3821#line 2384 "dhcp4_parser.yy"
3826#line 3827 "dhcp4_parser.cc"
3830#line 2387 "dhcp4_parser.yy"
3833 ctx.
stack_.back()->set(
"hostname", host);
3836#line 3837 "dhcp4_parser.cc"
3840#line 2393 "dhcp4_parser.yy"
3842 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3844 ctx.
stack_.back()->set(
"client-classes", c);
3848#line 3849 "dhcp4_parser.cc"
3852#line 2399 "dhcp4_parser.yy"
3857#line 3858 "dhcp4_parser.cc"
3861#line 2407 "dhcp4_parser.yy"
3865 ctx.
stack_.back()->set(
"relay", m);
3869#line 3870 "dhcp4_parser.cc"
3873#line 2413 "dhcp4_parser.yy"
3878#line 3879 "dhcp4_parser.cc"
3882#line 2425 "dhcp4_parser.yy"
3884 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3886 ctx.
stack_.back()->set(
"client-classes", l);
3890#line 3891 "dhcp4_parser.cc"
3894#line 2431 "dhcp4_parser.yy"
3899#line 3900 "dhcp4_parser.cc"
3903#line 2438 "dhcp4_parser.yy"
3907#line 3908 "dhcp4_parser.cc"
3911#line 2443 "dhcp4_parser.yy"
3914 ctx.
stack_.back()->add(m);
3917#line 3918 "dhcp4_parser.cc"
3921#line 2447 "dhcp4_parser.yy"
3927#line 3928 "dhcp4_parser.cc"
3931#line 2459 "dhcp4_parser.yy"
3935#line 3936 "dhcp4_parser.cc"
3939#line 2484 "dhcp4_parser.yy"
3944#line 3945 "dhcp4_parser.cc"
3948#line 2487 "dhcp4_parser.yy"
3951 ctx.
stack_.back()->set(
"test", test);
3954#line 3955 "dhcp4_parser.cc"
3958#line 2493 "dhcp4_parser.yy"
3960 ctx.
unique(
"template-test", ctx.
loc2pos(yystack_[0].location));
3963#line 3964 "dhcp4_parser.cc"
3967#line 2496 "dhcp4_parser.yy"
3970 ctx.
stack_.back()->set(
"template-test", template_test);
3973#line 3974 "dhcp4_parser.cc"
3977#line 2502 "dhcp4_parser.yy"
3979 ctx.
unique(
"only-if-required", ctx.
loc2pos(yystack_[2].location));
3981 ctx.
stack_.back()->set(
"only-if-required", b);
3983#line 3984 "dhcp4_parser.cc"
3987#line 2510 "dhcp4_parser.yy"
3989 ctx.
unique(
"dhcp4o6-port", ctx.
loc2pos(yystack_[2].location));
3991 ctx.
stack_.back()->set(
"dhcp4o6-port", time);
3993#line 3994 "dhcp4_parser.cc"
3997#line 2518 "dhcp4_parser.yy"
3999 ctx.
unique(
"control-socket", ctx.
loc2pos(yystack_[0].location));
4001 ctx.
stack_.back()->set(
"control-socket", m);
4005#line 4006 "dhcp4_parser.cc"
4009#line 2524 "dhcp4_parser.yy"
4014#line 4015 "dhcp4_parser.cc"
4018#line 2531 "dhcp4_parser.yy"
4022#line 4023 "dhcp4_parser.cc"
4026#line 2543 "dhcp4_parser.yy"
4028 ctx.
unique(
"socket-type", ctx.
loc2pos(yystack_[0].location));
4031#line 4032 "dhcp4_parser.cc"
4035#line 2546 "dhcp4_parser.yy"
4038 ctx.
stack_.back()->set(
"socket-type", stype);
4041#line 4042 "dhcp4_parser.cc"
4045#line 2552 "dhcp4_parser.yy"
4047 ctx.
unique(
"socket-name", ctx.
loc2pos(yystack_[0].location));
4050#line 4051 "dhcp4_parser.cc"
4054#line 2555 "dhcp4_parser.yy"
4057 ctx.
stack_.back()->set(
"socket-name", name);
4060#line 4061 "dhcp4_parser.cc"
4064#line 2564 "dhcp4_parser.yy"
4066 ctx.
unique(
"dhcp-queue-control", ctx.
loc2pos(yystack_[0].location));
4068 ctx.
stack_.back()->set(
"dhcp-queue-control", qc);
4069 ctx.
stack_.push_back(qc);
4072#line 4073 "dhcp4_parser.cc"
4076#line 2570 "dhcp4_parser.yy"
4083#line 4084 "dhcp4_parser.cc"
4087#line 2579 "dhcp4_parser.yy"
4091#line 4092 "dhcp4_parser.cc"
4095#line 2592 "dhcp4_parser.yy"
4097 ctx.
unique(
"enable-queue", ctx.
loc2pos(yystack_[2].location));
4099 ctx.
stack_.back()->set(
"enable-queue", b);
4101#line 4102 "dhcp4_parser.cc"
4105#line 2598 "dhcp4_parser.yy"
4107 ctx.
unique(
"queue-type", ctx.
loc2pos(yystack_[0].location));
4110#line 4111 "dhcp4_parser.cc"
4114#line 2601 "dhcp4_parser.yy"
4117 ctx.
stack_.back()->set(
"queue-type", qt);
4120#line 4121 "dhcp4_parser.cc"
4124#line 2607 "dhcp4_parser.yy"
4128 ctx.
stack_.back()->set(
"capacity", c);
4130#line 4131 "dhcp4_parser.cc"
4134#line 2613 "dhcp4_parser.yy"
4136 ctx.
unique(yystack_[0].value.as < std::string > (), ctx.
loc2pos(yystack_[0].location));
4139#line 4140 "dhcp4_parser.cc"
4143#line 2616 "dhcp4_parser.yy"
4145 ctx.
stack_.back()->set(yystack_[3].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
4148#line 4149 "dhcp4_parser.cc"
4152#line 2623 "dhcp4_parser.yy"
4156 ctx.
stack_.back()->set(
"dhcp-ddns", m);
4160#line 4161 "dhcp4_parser.cc"
4164#line 2629 "dhcp4_parser.yy"
4167 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
4171#line 4172 "dhcp4_parser.cc"
4175#line 2636 "dhcp4_parser.yy"
4181#line 4182 "dhcp4_parser.cc"
4185#line 2640 "dhcp4_parser.yy"
4188 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[3].location), ctx.
loc2pos(yystack_[0].location));
4191#line 4192 "dhcp4_parser.cc"
4195#line 2648 "dhcp4_parser.yy"
4199#line 4200 "dhcp4_parser.cc"
4203#line 2673 "dhcp4_parser.yy"
4205 ctx.
unique(
"enable-updates", ctx.
loc2pos(yystack_[2].location));
4207 ctx.
stack_.back()->set(
"enable-updates", b);
4209#line 4210 "dhcp4_parser.cc"
4213#line 2679 "dhcp4_parser.yy"
4218#line 4219 "dhcp4_parser.cc"
4222#line 2682 "dhcp4_parser.yy"
4225 ctx.
stack_.back()->set(
"server-ip", s);
4228#line 4229 "dhcp4_parser.cc"
4232#line 2688 "dhcp4_parser.yy"
4234 ctx.
unique(
"server-port", ctx.
loc2pos(yystack_[2].location));
4236 ctx.
stack_.back()->set(
"server-port", i);
4238#line 4239 "dhcp4_parser.cc"
4242#line 2694 "dhcp4_parser.yy"
4247#line 4248 "dhcp4_parser.cc"
4251#line 2697 "dhcp4_parser.yy"
4254 ctx.
stack_.back()->set(
"sender-ip", s);
4257#line 4258 "dhcp4_parser.cc"
4261#line 2703 "dhcp4_parser.yy"
4263 ctx.
unique(
"sender-port", ctx.
loc2pos(yystack_[2].location));
4265 ctx.
stack_.back()->set(
"sender-port", i);
4267#line 4268 "dhcp4_parser.cc"
4271#line 2709 "dhcp4_parser.yy"
4273 ctx.
unique(
"max-queue-size", ctx.
loc2pos(yystack_[2].location));
4275 ctx.
stack_.back()->set(
"max-queue-size", i);
4277#line 4278 "dhcp4_parser.cc"
4281#line 2715 "dhcp4_parser.yy"
4283 ctx.
unique(
"ncr-protocol", ctx.
loc2pos(yystack_[0].location));
4286#line 4287 "dhcp4_parser.cc"
4290#line 2718 "dhcp4_parser.yy"
4292 ctx.
stack_.back()->set(
"ncr-protocol", yystack_[0].value.as <
ElementPtr > ());
4295#line 4296 "dhcp4_parser.cc"
4299#line 2724 "dhcp4_parser.yy"
4301#line 4302 "dhcp4_parser.cc"
4305#line 2725 "dhcp4_parser.yy"
4307#line 4308 "dhcp4_parser.cc"
4311#line 2728 "dhcp4_parser.yy"
4313 ctx.
unique(
"ncr-format", ctx.
loc2pos(yystack_[0].location));
4316#line 4317 "dhcp4_parser.cc"
4320#line 2731 "dhcp4_parser.yy"
4323 ctx.
stack_.back()->set(
"ncr-format", json);
4326#line 4327 "dhcp4_parser.cc"
4330#line 2738 "dhcp4_parser.yy"
4332 ctx.
unique(
"qualifying-suffix", ctx.
loc2pos(yystack_[0].location));
4335#line 4336 "dhcp4_parser.cc"
4339#line 2741 "dhcp4_parser.yy"
4342 ctx.
stack_.back()->set(
"qualifying-suffix", s);
4345#line 4346 "dhcp4_parser.cc"
4349#line 2748 "dhcp4_parser.yy"
4351 ctx.
unique(
"override-no-update", ctx.
loc2pos(yystack_[2].location));
4353 ctx.
stack_.back()->set(
"override-no-update", b);
4355#line 4356 "dhcp4_parser.cc"
4359#line 2755 "dhcp4_parser.yy"
4361 ctx.
unique(
"override-client-update", ctx.
loc2pos(yystack_[2].location));
4363 ctx.
stack_.back()->set(
"override-client-update", b);
4365#line 4366 "dhcp4_parser.cc"
4369#line 2762 "dhcp4_parser.yy"
4371 ctx.
unique(
"replace-client-name", ctx.
loc2pos(yystack_[0].location));
4374#line 4375 "dhcp4_parser.cc"
4378#line 2765 "dhcp4_parser.yy"
4380 ctx.
stack_.back()->set(
"replace-client-name", yystack_[0].value.as <
ElementPtr > ());
4383#line 4384 "dhcp4_parser.cc"
4387#line 2771 "dhcp4_parser.yy"
4389 ctx.
unique(
"generated-prefix", ctx.
loc2pos(yystack_[0].location));
4392#line 4393 "dhcp4_parser.cc"
4396#line 2774 "dhcp4_parser.yy"
4399 ctx.
stack_.back()->set(
"generated-prefix", s);
4402#line 4403 "dhcp4_parser.cc"
4406#line 2781 "dhcp4_parser.yy"
4408 ctx.
unique(
"hostname-char-set", ctx.
loc2pos(yystack_[0].location));
4411#line 4412 "dhcp4_parser.cc"
4415#line 2784 "dhcp4_parser.yy"
4418 ctx.
stack_.back()->set(
"hostname-char-set", s);
4421#line 4422 "dhcp4_parser.cc"
4425#line 2791 "dhcp4_parser.yy"
4427 ctx.
unique(
"hostname-char-replacement", ctx.
loc2pos(yystack_[0].location));
4430#line 4431 "dhcp4_parser.cc"
4434#line 2794 "dhcp4_parser.yy"
4437 ctx.
stack_.back()->set(
"hostname-char-replacement", s);
4440#line 4441 "dhcp4_parser.cc"
4444#line 2803 "dhcp4_parser.yy"
4446 ctx.
unique(
"config-control", ctx.
loc2pos(yystack_[0].location));
4448 ctx.
stack_.back()->set(
"config-control", i);
4452#line 4453 "dhcp4_parser.cc"
4456#line 2809 "dhcp4_parser.yy"
4462#line 4463 "dhcp4_parser.cc"
4466#line 2815 "dhcp4_parser.yy"
4472#line 4473 "dhcp4_parser.cc"
4476#line 2819 "dhcp4_parser.yy"
4481#line 4482 "dhcp4_parser.cc"
4485#line 2827 "dhcp4_parser.yy"
4489#line 4490 "dhcp4_parser.cc"
4493#line 2837 "dhcp4_parser.yy"
4495 ctx.
unique(
"config-databases", ctx.
loc2pos(yystack_[0].location));
4497 ctx.
stack_.back()->set(
"config-databases", l);
4501#line 4502 "dhcp4_parser.cc"
4505#line 2843 "dhcp4_parser.yy"
4510#line 4511 "dhcp4_parser.cc"
4514#line 2848 "dhcp4_parser.yy"
4516 ctx.
unique(
"config-fetch-wait-time", ctx.
loc2pos(yystack_[2].location));
4518 ctx.
stack_.back()->set(
"config-fetch-wait-time", value);
4520#line 4521 "dhcp4_parser.cc"
4524#line 2856 "dhcp4_parser.yy"
4528 ctx.
stack_.back()->set(
"loggers", l);
4532#line 4533 "dhcp4_parser.cc"
4536#line 2862 "dhcp4_parser.yy"
4541#line 4542 "dhcp4_parser.cc"
4545#line 2871 "dhcp4_parser.yy"
4549#line 4550 "dhcp4_parser.cc"
4553#line 2877 "dhcp4_parser.yy"
4556 ctx.
stack_.back()->add(l);
4559#line 4560 "dhcp4_parser.cc"
4563#line 2881 "dhcp4_parser.yy"
4567#line 4568 "dhcp4_parser.cc"
4571#line 2887 "dhcp4_parser.yy"
4575#line 4576 "dhcp4_parser.cc"
4579#line 2901 "dhcp4_parser.yy"
4581 ctx.
unique(
"debuglevel", ctx.
loc2pos(yystack_[2].location));
4583 ctx.
stack_.back()->set(
"debuglevel", dl);
4585#line 4586 "dhcp4_parser.cc"
4589#line 2907 "dhcp4_parser.yy"
4594#line 4595 "dhcp4_parser.cc"
4598#line 2910 "dhcp4_parser.yy"
4601 ctx.
stack_.back()->set(
"severity", sev);
4604#line 4605 "dhcp4_parser.cc"
4608#line 2916 "dhcp4_parser.yy"
4610 ctx.
unique(
"output-options", ctx.
loc2pos(yystack_[0].location));
4612 ctx.
stack_.back()->set(
"output-options", l);
4616#line 4617 "dhcp4_parser.cc"
4620#line 2922 "dhcp4_parser.yy"
4625#line 4626 "dhcp4_parser.cc"
4629#line 2929 "dhcp4_parser.yy"
4633#line 4634 "dhcp4_parser.cc"
4637#line 2934 "dhcp4_parser.yy"
4640 ctx.
stack_.back()->add(m);
4643#line 4644 "dhcp4_parser.cc"
4647#line 2938 "dhcp4_parser.yy"
4651#line 4652 "dhcp4_parser.cc"
4655#line 2944 "dhcp4_parser.yy"
4659#line 4660 "dhcp4_parser.cc"
4663#line 2956 "dhcp4_parser.yy"
4668#line 4669 "dhcp4_parser.cc"
4672#line 2959 "dhcp4_parser.yy"
4675 ctx.
stack_.back()->set(
"output", sev);
4678#line 4679 "dhcp4_parser.cc"
4682#line 2965 "dhcp4_parser.yy"
4686 ctx.
stack_.back()->set(
"flush", flush);
4688#line 4689 "dhcp4_parser.cc"
4692#line 2971 "dhcp4_parser.yy"
4696 ctx.
stack_.back()->set(
"maxsize", maxsize);
4698#line 4699 "dhcp4_parser.cc"
4702#line 2977 "dhcp4_parser.yy"
4706 ctx.
stack_.back()->set(
"maxver", maxver);
4708#line 4709 "dhcp4_parser.cc"
4712#line 2983 "dhcp4_parser.yy"
4717#line 4718 "dhcp4_parser.cc"
4721#line 2986 "dhcp4_parser.yy"
4724 ctx.
stack_.back()->set(
"pattern", sev);
4727#line 4728 "dhcp4_parser.cc"
4731#line 2992 "dhcp4_parser.yy"
4733 ctx.
unique(
"compatibility", ctx.
loc2pos(yystack_[0].location));
4735 ctx.
stack_.back()->set(
"compatibility", i);
4739#line 4740 "dhcp4_parser.cc"
4743#line 2998 "dhcp4_parser.yy"
4748#line 4749 "dhcp4_parser.cc"
4752#line 3005 "dhcp4_parser.yy"
4756#line 4757 "dhcp4_parser.cc"
4760#line 3017 "dhcp4_parser.yy"
4762 ctx.
unique(
"lenient-option-parsing", ctx.
loc2pos(yystack_[2].location));
4764 ctx.
stack_.back()->set(
"lenient-option-parsing", b);
4766#line 4767 "dhcp4_parser.cc"
4770#line 3023 "dhcp4_parser.yy"
4772 ctx.
unique(
"ignore-dhcp-server-identifier", ctx.
loc2pos(yystack_[2].location));
4774 ctx.
stack_.back()->set(
"ignore-dhcp-server-identifier", b);
4776#line 4777 "dhcp4_parser.cc"
4780#line 3029 "dhcp4_parser.yy"
4782 ctx.
unique(
"ignore-rai-link-selection", ctx.
loc2pos(yystack_[2].location));
4784 ctx.
stack_.back()->set(
"ignore-rai-link-selection", b);
4786#line 4787 "dhcp4_parser.cc"
4790#line 3035 "dhcp4_parser.yy"
4792 ctx.
unique(
"exclude-first-last-24", ctx.
loc2pos(yystack_[2].location));
4794 ctx.
stack_.back()->set(
"exclude-first-last-24", b);
4796#line 4797 "dhcp4_parser.cc"
4800#line 4801 "dhcp4_parser.cc"
4809 YYCDEBUG <<
"Caught exception: " << yyexc.what() <<
'\n';
4819 yypush_ (YY_NULLPTR,
YY_MOVE (yylhs));
4833 std::string msg = yysyntax_error_ (yyctx);
4838 yyerror_range[1].location = yyla.
location;
4839 if (yyerrstatus_ == 3)
4847 else if (!yyla.
empty ())
4849 yy_destroy_ (
"Error: discarding", yyla);
4883 yyn = yypact_[+yystack_[0].state];
4884 if (!yy_pact_value_is_default_ (yyn))
4887 if (0 <= yyn && yyn <= yylast_
4890 yyn = yytable_[yyn];
4897 if (yystack_.size () == 1)
4900 yyerror_range[1].location = yystack_[0].location;
4901 yy_destroy_ (
"Error: popping", yystack_[0]);
4906 stack_symbol_type error_token;
4908 yyerror_range[2].location = yyla.
location;
4912 error_token.state = state_type (yyn);
4913 yypush_ (
"Shifting",
YY_MOVE (error_token));
4939 yy_destroy_ (
"Cleanup: discarding lookahead", yyla);
4945 while (1 < yystack_.size ())
4947 yy_destroy_ (
"Cleanup: popping", yystack_[0]);
4956 YYCDEBUG <<
"Exception caught: cleaning lookahead and stack\n";
4960 yy_destroy_ (YY_NULLPTR, yyla);
4962 while (1 < yystack_.size ())
4964 yy_destroy_ (YY_NULLPTR, yystack_[0]);
4984 Dhcp4Parser::yytnamerr_ (
const char *yystr)
4989 char const *yyp = yystr;
4996 goto do_not_strip_quotes;
5000 goto do_not_strip_quotes;
5012 do_not_strip_quotes: ;
5021 return yytnamerr_ (yytname_[yysymbol]);
5028 : yyparser_ (yyparser)
5038 const int yyn = yypact_[+yyparser_.yystack_[0].state];
5039 if (!yy_pact_value_is_default_ (yyn))
5044 const int yyxbegin = yyn < 0 ? -yyn : 0;
5046 const int yychecklim = yylast_ - yyn + 1;
5048 for (
int yyx = yyxbegin; yyx < yyxend; ++yyx)
5050 && !yy_table_value_is_error_ (yytable_[yyx + yyn]))
5054 else if (yycount == yyargn)
5061 if (yyarg && yycount == 0 && 0 < yyargn)
5072 Dhcp4Parser::yy_syntax_error_arguments_ (
const context& yyctx,
5103 yyarg[0] = yyctx.
token ();
5104 int yyn = yyctx.
expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1);
5112 Dhcp4Parser::yysyntax_error_ (
const context& yyctx)
const
5115 enum { YYARGS_MAX = 5 };
5118 int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX);
5120 char const* yyformat = YY_NULLPTR;
5123#define YYCASE_(N, S) \
5129 YYCASE_ (1,
YY_(
"syntax error, unexpected %s"));
5130 YYCASE_ (2,
YY_(
"syntax error, unexpected %s, expecting %s"));
5131 YYCASE_ (3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
5132 YYCASE_ (4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
5133 YYCASE_ (5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
5139 std::ptrdiff_t yyi = 0;
5140 for (
char const* yyp = yyformat; *yyp; ++yyp)
5141 if (yyp[0] ==
'%' && yyp[1] ==
's' && yyi < yycount)
5152 const short Dhcp4Parser::yypact_ninf_ = -1025;
5154 const signed char Dhcp4Parser::yytable_ninf_ = -1;
5157 Dhcp4Parser::yypact_[] =
5159 423, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5160 -1025, -1025, -1025, -1025, 37, 31, 24, 60, 64, 82,
5161 94, 174, 182, 216, 219, 226, 228, 271, -1025, -1025,
5162 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5163 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5164 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5165 -1025, -1025, -1025, -1025, 31, -176, 181, 130, 154, 273,
5166 -39, 535, -15, 550, 350, -114, 634, 103, -1025, 75,
5167 155, 268, 289, 297, -1025, 54, -1025, -1025, -1025, -1025,
5168 305, 321, 330, -1025, -1025, -1025, 331, -1025, -1025, -1025,
5169 334, 346, 348, 359, 369, 375, 378, 381, 382, 391,
5170 392, -1025, 401, 402, 403, 429, 430, -1025, -1025, -1025,
5171 438, 439, 441, 460, -1025, -1025, -1025, 464, -1025, -1025,
5172 -1025, -1025, -1025, -1025, 466, 469, 470, -1025, -1025, -1025,
5173 -1025, -1025, 471, -1025, -1025, -1025, -1025, -1025, -1025, 473,
5174 475, 477, -1025, -1025, 478, -1025, 62, -1025, -1025, -1025,
5175 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5176 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5177 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5178 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5179 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5180 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5181 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 480, 481,
5182 482, 484, -1025, 65, -1025, -1025, -1025, -1025, -1025, -1025,
5183 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5184 485, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5185 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5186 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5187 -1025, -1025, 72, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5188 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5189 -1025, -1025, -1025, -1025, -1025, -1025, 487, -1025, -1025, -1025,
5190 -1025, 83, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5191 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 341,
5192 367, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5193 -1025, -1025, -1025, 406, -1025, -1025, 488, -1025, -1025, -1025,
5194 489, -1025, -1025, 491, 494, -1025, -1025, -1025, -1025, -1025,
5195 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 497, 499,
5196 500, -1025, -1025, -1025, -1025, 503, 504, -1025, -1025, -1025,
5197 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5198 91, -1025, -1025, -1025, 511, -1025, -1025, 513, -1025, 516,
5199 517, -1025, -1025, 519, 521, -1025, -1025, -1025, -1025, -1025,
5200 -1025, -1025, 110, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5201 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5202 523, 120, -1025, -1025, -1025, -1025, 31, 31, -1025, 163,
5203 524, -1025, -1025, 525, 526, 527, 309, 312, 314, 536,
5204 537, 538, 317, 539, 540, 545, 332, 333, 335, 337,
5205 340, 327, 343, 347, 349, 342, 352, 548, 353, 356,
5206 339, 355, 357, 552, 582, 587, 372, 383, 370, 385,
5207 588, 595, 600, 388, 607, 608, 613, 615, 616, 617,
5208 398, 399, 400, 621, 622, 623, 624, 625, 422, 641,
5209 643, 646, 652, 653, 654, 435, 436, 440, 658, 665,
5210 -1025, 130, -1025, 666, 667, 668, 455, 458, 461, 462,
5211 154, -1025, 681, 682, 683, 684, 691, 692, 476, 693,
5212 695, 696, 273, -1025, 697, 483, -39, -1025, 698, 703,
5213 704, 705, 707, 708, 709, 710, -1025, 535, -1025, 711,
5214 712, 495, 714, 715, 731, 512, -1025, 550, 733, 514,
5215 528, 529, -1025, 350, 753, 754, 23, -1025, 541, 755,
5216 760, 546, 765, 551, 555, 766, 768, 557, 558, 770,
5217 775, 779, 780, 634, -1025, 784, 567, 103, -1025, -1025,
5218 -1025, 787, 785, 786, 788, 789, -1025, -1025, -1025, 576,
5219 577, 578, -1025, 793, 794, 797, -1025, -1025, -1025, -1025,
5220 -1025, -1025, -1025, -1025, -1025, -1025, -1025, 596, -1025, -1025,
5221 -1025, -1025, -1025, -136, 597, 598, -1025, -1025, -1025, -1025,
5222 815, 816, 817, -1025, 604, 345, 821, 820, 609, 336,
5223 -1025, -1025, -1025, 823, 824, 826, 827, 828, -1025, 829,
5224 830, 831, 832, 612, 619, -1025, -1025, -1025, 836, 835,
5225 -1025, 838, 157, 255, -1025, -1025, -1025, -1025, -1025, 626,
5226 629, 630, 839, 631, 632, -1025, 838, 633, 849, -1025,
5227 636, -1025, -1025, 838, 637, 638, 639, 640, 642, 644,
5228 645, -1025, 647, 648, -1025, 649, 650, 651, -1025, -1025,
5229 655, -1025, -1025, -1025, -1025, 656, 820, -1025, -1025, 657,
5230 660, -1025, 661, -1025, -1025, 5, 662, -1025, -1025, -136,
5231 663, 664, 669, -1025, 840, -1025, -1025, 31, 130, 103,
5232 154, 258, -1025, -1025, -1025, 376, 376, 855, -1025, -1025,
5233 -1025, -1025, -1025, -1025, -1025, -1025, -1025, 857, 860, 866,
5234 -1025, -1025, -1025, -1025, -1025, -1025, 867, -1025, -1025, -1025,
5235 -1025, -1025, -1025, -1025, -1025, -35, 868, 872, 876, 162,
5236 105, 77, 115, 634, -1025, -1025, 879, -95, -1025, -1025,
5237 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 880,
5238 -1025, -1025, -1025, -1025, 148, -1025, -1025, -1025, -1025, -1025,
5239 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5240 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5241 -1025, -1025, -1025, 855, -1025, 126, 128, 143, -1025, -1025,
5242 144, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 884, 885,
5243 887, 888, 889, 890, 891, 892, 893, 894, -1025, 895,
5244 896, -1025, -1025, -1025, -1025, -1025, 184, -1025, -1025, -1025,
5245 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5246 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5247 187, -1025, 897, 898, -1025, -1025, 899, 901, -1025, -1025,
5248 900, 904, -1025, -1025, 902, 906, -1025, -1025, 905, 907,
5249 -1025, -1025, -1025, -1025, -1025, -1025, 38, -1025, -1025, -1025,
5250 -1025, -1025, -1025, -1025, 87, -1025, -1025, 908, 909, -1025,
5251 -1025, 910, 912, -1025, 913, 914, 915, 916, 917, 918,
5252 231, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 919, 920,
5253 921, -1025, 265, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5254 -1025, -1025, -1025, -1025, 266, -1025, -1025, -1025, 922, -1025,
5255 923, -1025, -1025, -1025, 276, -1025, -1025, -1025, -1025, -1025,
5256 293, -1025, 127, -1025, 924, 925, 926, 927, -1025, 329,
5257 -1025, -1025, -1025, -1025, -1025, 713, -1025, 929, 930, -1025,
5258 -1025, -1025, -1025, 928, 931, -1025, -1025, -1025, 934, 935,
5259 258, -1025, 936, 937, 938, 939, 680, 610, 722, 689,
5260 723, 724, 725, 726, 727, 728, 947, 729, 730, 950,
5261 951, 952, 953, 376, -1025, -1025, 376, -1025, 855, 273,
5262 -1025, 857, 550, -1025, 860, 350, -1025, 866, 659, -1025,
5263 867, -35, -1025, 195, 868, -1025, 535, -1025, 872, -114,
5264 -1025, 876, 736, 737, 738, 739, 741, 742, 162, -1025,
5265 743, 744, 747, 105, -1025, 966, 970, 77, -1025, 761,
5266 973, 756, 984, 115, -1025, -1025, 214, 879, -1025, 771,
5267 781, 783, 802, -95, -1025, -1025, 998, 1007, -39, -1025,
5268 880, 1026, -1025, -1025, 813, 814, -1025, 208, 819, 847,
5269 852, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5270 -1025, -4, -1025, -1025, 911, 932, 933, 941, -1025, 364,
5271 -1025, 366, -1025, 1029, -1025, 1036, -1025, -1025, -1025, -1025,
5272 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5273 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5274 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5275 -1025, -1025, -1025, -1025, 368, -1025, -1025, -1025, -1025, -1025,
5276 -1025, -1025, -1025, -1025, -1025, -1025, -1025, 1043, -1025, -1025,
5277 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5278 -1025, 1040, 1047, -1025, -1025, -1025, -1025, -1025, -1025, 1052,
5279 -1025, 380, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5280 -1025, -1025, -1025, -1025, 942, 943, -1025, -1025, 944, -1025,
5281 31, -1025, -1025, 1057, -1025, -1025, -1025, -1025, -1025, 394,
5282 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5283 -1025, 948, 395, -1025, 838, -1025, -1025, -1025, -1025, -1025,
5284 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5285 -1025, -1025, -1025, -1025, -1025, -1025, 659, -1025, 1066, 1114,
5286 903, -1025, 195, -1025, -1025, -1025, -1025, -1025, -1025, 1116,
5287 946, 1117, 214, -1025, -1025, -1025, -1025, -1025, 949, 954,
5288 -1025, -1025, 1118, -1025, 955, -1025, -1025, -1025, 1119, -1025,
5289 -1025, 151, -1025, -16, 1119, -1025, -1025, 1121, 1124, 1125,
5290 -1025, 410, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 1126,
5291 956, 957, 959, 1127, -16, -1025, 961, -1025, -1025, -1025,
5292 962, -1025, -1025, -1025
5296 Dhcp4Parser::yydefact_[] =
5298 0, 2, 4, 6, 8, 10, 12, 14, 16, 18,
5299 20, 22, 24, 26, 0, 0, 0, 0, 0, 0,
5300 0, 0, 0, 0, 0, 0, 0, 0, 1, 44,
5301 36, 32, 31, 28, 29, 30, 35, 3, 33, 34,
5302 59, 5, 65, 7, 206, 9, 386, 11, 604, 13,
5303 633, 15, 522, 17, 531, 19, 570, 21, 348, 23,
5304 751, 25, 802, 27, 46, 39, 0, 0, 0, 0,
5305 0, 635, 0, 533, 572, 0, 0, 0, 48, 0,
5306 47, 0, 0, 40, 61, 0, 63, 800, 191, 224,
5307 0, 0, 0, 655, 657, 659, 0, 222, 235, 237,
5308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5309 0, 149, 0, 0, 0, 0, 0, 160, 167, 169,
5310 0, 0, 0, 0, 377, 520, 561, 0, 152, 173,
5311 464, 620, 622, 457, 0, 0, 0, 310, 683, 624,
5312 339, 360, 0, 325, 718, 732, 749, 180, 182, 0,
5313 0, 0, 812, 854, 0, 137, 0, 67, 70, 71,
5314 72, 73, 74, 108, 109, 110, 111, 112, 75, 103,
5315 134, 135, 92, 93, 94, 116, 117, 118, 119, 120,
5316 121, 122, 123, 124, 125, 114, 115, 126, 127, 128,
5317 130, 131, 132, 136, 78, 79, 100, 80, 81, 82,
5318 129, 86, 87, 76, 105, 106, 107, 104, 77, 84,
5319 85, 98, 99, 101, 95, 96, 97, 83, 88, 89,
5320 90, 91, 102, 113, 133, 208, 210, 214, 0, 0,
5321 0, 0, 205, 0, 193, 196, 197, 198, 199, 200,
5322 201, 202, 203, 204, 442, 444, 446, 595, 440, 448,
5323 0, 452, 450, 679, 439, 391, 392, 393, 394, 395,
5324 419, 420, 421, 422, 423, 437, 409, 410, 424, 425,
5325 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
5326 436, 438, 0, 388, 398, 414, 415, 416, 399, 401,
5327 402, 405, 406, 407, 404, 400, 396, 397, 417, 418,
5328 403, 411, 412, 413, 408, 617, 0, 616, 612, 613,
5329 611, 0, 606, 609, 610, 614, 615, 677, 665, 667,
5330 671, 669, 675, 673, 661, 654, 648, 652, 653, 0,
5331 636, 637, 649, 650, 651, 645, 640, 646, 642, 643,
5332 644, 647, 641, 0, 551, 284, 0, 555, 553, 558,
5333 0, 547, 548, 0, 534, 535, 538, 550, 539, 540,
5334 541, 557, 542, 543, 544, 545, 546, 588, 0, 0,
5335 0, 586, 587, 590, 591, 0, 573, 574, 577, 578,
5336 579, 580, 581, 582, 583, 584, 585, 356, 358, 353,
5337 0, 350, 354, 355, 0, 788, 775, 0, 778, 0,
5338 0, 782, 786, 0, 0, 792, 794, 796, 798, 773,
5339 771, 772, 0, 753, 756, 757, 758, 759, 760, 761,
5340 762, 763, 768, 764, 765, 766, 767, 769, 770, 809,
5341 0, 0, 804, 807, 808, 45, 50, 0, 37, 43,
5342 0, 64, 60, 0, 0, 0, 0, 0, 0, 0,
5343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5347 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5349 58, 69, 66, 0, 0, 0, 0, 0, 0, 0,
5350 195, 207, 0, 0, 0, 0, 0, 0, 0, 0,
5351 0, 0, 390, 387, 0, 0, 608, 605, 0, 0,
5352 0, 0, 0, 0, 0, 0, 634, 639, 523, 0,
5353 0, 0, 0, 0, 0, 0, 532, 537, 0, 0,
5354 0, 0, 571, 576, 0, 0, 352, 349, 0, 0,
5355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5356 0, 0, 0, 755, 752, 0, 0, 806, 803, 49,
5357 41, 0, 0, 0, 0, 0, 154, 155, 156, 0,
5358 0, 0, 190, 0, 0, 0, 138, 139, 140, 141,
5359 142, 143, 144, 145, 146, 147, 148, 0, 185, 186,
5360 157, 158, 159, 0, 0, 0, 171, 172, 179, 184,
5361 0, 0, 0, 151, 0, 0, 0, 0, 0, 0,
5362 454, 455, 456, 0, 0, 0, 0, 0, 717, 0,
5363 0, 0, 0, 0, 0, 187, 188, 189, 0, 0,
5364 68, 0, 0, 0, 218, 219, 220, 221, 194, 0,
5365 0, 0, 0, 0, 0, 463, 0, 0, 0, 389,
5366 0, 619, 607, 0, 0, 0, 0, 0, 0, 0,
5367 0, 638, 0, 0, 549, 0, 0, 0, 560, 536,
5368 0, 592, 593, 594, 575, 0, 0, 351, 774, 0,
5369 0, 777, 0, 780, 781, 0, 0, 790, 791, 0,
5370 0, 0, 0, 754, 0, 811, 805, 0, 0, 0,
5371 0, 0, 656, 658, 660, 0, 0, 239, 150, 162,
5372 163, 164, 165, 166, 161, 168, 170, 379, 524, 563,
5373 153, 175, 176, 177, 178, 174, 466, 38, 621, 623,
5374 459, 460, 461, 462, 458, 0, 0, 626, 341, 0,
5375 0, 0, 0, 0, 181, 183, 0, 0, 51, 209,
5376 212, 213, 211, 216, 217, 215, 443, 445, 447, 597,
5377 441, 449, 453, 451, 0, 618, 678, 666, 668, 672,
5378 670, 676, 674, 662, 552, 285, 556, 554, 559, 589,
5379 357, 359, 789, 776, 779, 784, 785, 783, 787, 793,
5380 795, 797, 799, 239, 42, 0, 0, 0, 231, 233,
5381 0, 226, 229, 230, 272, 277, 279, 281, 0, 0,
5382 0, 0, 0, 0, 0, 0, 0, 0, 295, 0,
5383 0, 302, 304, 306, 308, 271, 0, 246, 249, 250,
5384 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
5385 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
5386 0, 244, 0, 240, 241, 384, 0, 380, 381, 529,
5387 0, 525, 526, 568, 0, 564, 565, 471, 0, 467,
5388 468, 320, 321, 322, 323, 324, 0, 312, 315, 316,
5389 317, 318, 319, 688, 0, 685, 631, 0, 627, 628,
5390 346, 0, 342, 343, 0, 0, 0, 0, 0, 0,
5391 0, 362, 365, 366, 367, 368, 369, 370, 0, 0,
5392 0, 335, 0, 327, 330, 331, 332, 333, 334, 728,
5393 730, 727, 725, 726, 0, 720, 723, 724, 0, 744,
5394 0, 747, 740, 741, 0, 734, 737, 738, 739, 742,
5395 0, 817, 0, 814, 0, 0, 0, 0, 863, 0,
5396 856, 859, 860, 861, 862, 53, 602, 0, 598, 599,
5397 663, 681, 682, 0, 0, 62, 801, 192, 0, 0,
5398 228, 225, 0, 0, 0, 0, 0, 0, 0, 0,
5399 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5400 0, 0, 0, 248, 223, 236, 0, 238, 243, 0,
5401 378, 383, 533, 521, 528, 572, 562, 567, 0, 465,
5402 470, 314, 311, 690, 687, 684, 635, 625, 630, 0,
5403 340, 345, 0, 0, 0, 0, 0, 0, 364, 361,
5404 0, 0, 0, 329, 326, 0, 0, 722, 719, 0,
5405 0, 0, 0, 736, 733, 750, 0, 816, 813, 0,
5406 0, 0, 0, 858, 855, 55, 0, 54, 0, 596,
5407 601, 0, 680, 810, 0, 0, 227, 0, 0, 0,
5408 0, 283, 286, 287, 288, 289, 290, 291, 292, 293,
5409 294, 0, 300, 301, 0, 0, 0, 0, 247, 0,
5410 242, 0, 382, 0, 527, 0, 566, 519, 494, 495,
5411 496, 479, 480, 499, 500, 501, 502, 503, 517, 482,
5412 483, 504, 505, 506, 507, 508, 509, 510, 511, 512,
5413 513, 514, 515, 516, 518, 476, 477, 478, 492, 493,
5414 489, 490, 491, 488, 0, 473, 481, 497, 498, 484,
5415 485, 486, 487, 469, 313, 712, 714, 0, 706, 707,
5416 708, 709, 710, 711, 699, 700, 704, 705, 701, 702,
5417 703, 0, 691, 692, 695, 696, 697, 698, 686, 0,
5418 629, 0, 344, 371, 372, 373, 374, 375, 376, 363,
5419 336, 337, 338, 328, 0, 0, 721, 743, 0, 746,
5420 0, 735, 832, 0, 830, 828, 822, 826, 827, 0,
5421 819, 824, 825, 823, 815, 864, 865, 866, 867, 857,
5422 52, 57, 0, 600, 0, 232, 234, 274, 275, 276,
5423 273, 278, 280, 282, 297, 298, 299, 296, 303, 305,
5424 307, 309, 245, 385, 530, 569, 475, 472, 0, 0,
5425 0, 689, 694, 632, 347, 729, 731, 745, 748, 0,
5426 0, 0, 821, 818, 56, 603, 664, 474, 0, 0,
5427 716, 693, 0, 829, 0, 820, 713, 715, 0, 831,
5428 837, 0, 834, 0, 836, 833, 847, 0, 0, 0,
5429 852, 0, 839, 842, 843, 844, 845, 846, 835, 0,
5430 0, 0, 0, 0, 841, 838, 0, 849, 850, 851,
5435 Dhcp4Parser::yypgoto_[] =
5437 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5438 -1025, -1025, -1025, -1025, -1025, -59, -1025, -619, -1025, 427,
5439 -1025, -1025, -1025, -1025, -1025, -1025, -650, -1025, -1025, -1025,
5440 -67, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 204, 627,
5441 -30, -26, 26, -54, -37, -27, 0, 14, 16, 45,
5442 -1025, -1025, -1025, -1025, 48, -1025, -1025, 50, 51, 52,
5443 53, 55, 56, -1025, 415, 58, -1025, 63, -1025, 66,
5444 68, 69, -1025, -1025, 70, 71, -1025, 73, -1025, 74,
5445 -1025, -1025, -1025, -1025, -1025, 33, -1025, -1025, 405, 620,
5446 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5447 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 136,
5448 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 316, -1025,
5449 109, -1025, -724, 118, -1025, -1025, -1025, -1025, -1025, -1025,
5450 -1025, -1025, -1025, -1025, -45, -1025, -1025, -1025, -1025, -1025,
5451 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5452 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5453 -1025, 101, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5454 80, -1025, -1025, -1025, -1025, -1025, -1025, -1025, 93, -1025,
5455 -1025, -1025, 96, 580, -1025, -1025, -1025, -1025, -1025, -1025,
5456 -1025, 89, -1025, -1025, -1025, -1025, -1025, -1025, -1024, -1025,
5457 -1025, -1025, 117, -1025, -1025, -1025, 121, 628, -1025, -1025,
5458 -1025, -1025, -1025, -1025, -1025, -1025, -1022, -1025, 78, -1025,
5459 79, -1025, 76, 81, 84, 86, -1025, -1025, -1025, -1025,
5460 -1025, -1025, -1025, 111, -1025, -1025, -117, -62, -1025, -1025,
5461 -1025, -1025, -1025, 122, -1025, -1025, -1025, 123, -1025, 601,
5462 -1025, -63, -1025, -1025, -1025, -1025, -1025, -44, -1025, -1025,
5463 -1025, -1025, -1025, -23, -1025, -1025, -1025, 134, -1025, -1025,
5464 -1025, 124, -1025, 589, -1025, -1025, -1025, -1025, -1025, -1025,
5465 -1025, -1025, -1025, -1025, -1025, -1025, 67, -1025, -1025, -1025,
5466 85, 670, -1025, -1025, -1025, -49, -1025, -10, -1025, -56,
5467 -1025, -1025, -1025, 129, -1025, -1025, -1025, 132, -1025, 671,
5468 3, -1025, 13, -1025, 29, -1025, 390, -1025, -1025, -1025,
5469 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5470 -1025, -1025, -1025, -1025, -1021, -1025, -1025, -1025, -1025, -1025,
5471 141, -1025, -1025, -1025, -100, -1025, -1025, -1025, -1025, -1025,
5472 -1025, -1025, -1025, -1025, -1025, 107, -1025, -1025, -1025, -1025,
5473 -1025, -1025, -1025, 113, -1025, -1025, -1025, -1025, -1025, -1025,
5474 -1025, -1025, -1025, -1025, 414, 605, -1025, -1025, -1025, -1025,
5475 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5476 -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025, -1025,
5477 -1025, -1025, -1025, -1025, -1025, 463, 602, -1025, -1025, -1025,
5478 -1025, -1025, -1025, 114, -1025, -1025, -92, -1025, -1025, -1025,
5479 -1025, -1025, -1025, -111, -1025, -1025, -130, -1025, -1025, -1025,
5480 -1025, -1025, -1025, -1025, -1025, -1025, -1025, 112, -1025, -1025,
5485 Dhcp4Parser::yydefgoto_[] =
5487 0, 14, 15, 16, 17, 18, 19, 20, 21, 22,
5488 23, 24, 25, 26, 27, 36, 37, 38, 65, 758,
5489 82, 83, 39, 64, 79, 80, 779, 985, 1086, 1087,
5490 855, 41, 66, 85, 440, 86, 43, 67, 156, 157,
5491 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
5492 168, 169, 467, 170, 171, 484, 172, 173, 174, 175,
5493 176, 177, 178, 473, 744, 179, 474, 180, 475, 181,
5494 182, 183, 485, 755, 184, 185, 503, 186, 504, 187,
5495 188, 189, 190, 191, 192, 193, 194, 444, 233, 234,
5496 45, 68, 235, 513, 236, 514, 782, 237, 515, 785,
5497 238, 239, 240, 241, 195, 453, 196, 445, 830, 831,
5498 832, 998, 833, 999, 197, 454, 198, 455, 882, 883,
5499 884, 1026, 856, 857, 858, 1002, 1250, 859, 1003, 860,
5500 1004, 861, 1005, 862, 863, 550, 864, 865, 866, 867,
5501 868, 869, 870, 871, 872, 873, 1016, 1257, 874, 875,
5502 876, 1019, 877, 1020, 878, 1021, 879, 1022, 199, 493,
5503 906, 907, 908, 909, 910, 911, 912, 200, 499, 942,
5504 943, 944, 945, 946, 201, 496, 921, 922, 923, 1049,
5505 59, 75, 390, 391, 392, 564, 393, 565, 202, 497,
5506 930, 931, 932, 933, 934, 935, 936, 937, 203, 480,
5507 886, 887, 888, 1029, 47, 69, 282, 283, 284, 526,
5508 285, 522, 286, 523, 287, 524, 288, 527, 289, 530,
5509 290, 529, 204, 205, 206, 207, 489, 764, 295, 208,
5510 486, 898, 899, 900, 1038, 1164, 1165, 209, 481, 53,
5511 72, 890, 891, 892, 1032, 55, 73, 353, 354, 355,
5512 356, 357, 358, 359, 549, 360, 553, 361, 552, 362,
5513 363, 554, 364, 210, 482, 894, 895, 896, 1035, 57,
5514 74, 375, 376, 377, 378, 379, 558, 380, 381, 382,
5515 383, 384, 297, 525, 987, 988, 989, 1088, 49, 70,
5516 311, 312, 313, 534, 314, 211, 487, 212, 488, 213,
5517 495, 917, 918, 919, 1046, 51, 71, 329, 330, 331,
5518 214, 449, 215, 450, 216, 451, 335, 545, 992, 1091,
5519 336, 539, 337, 540, 338, 542, 339, 541, 340, 544,
5520 341, 543, 342, 538, 304, 531, 993, 217, 494, 914,
5521 915, 1043, 1191, 1192, 1193, 1194, 1195, 1268, 1196, 1269,
5522 1197, 218, 219, 500, 954, 955, 956, 1065, 957, 1066,
5523 220, 501, 964, 965, 966, 967, 1070, 968, 969, 1072,
5524 221, 502, 61, 76, 412, 413, 414, 415, 570, 416,
5525 417, 572, 418, 419, 420, 575, 817, 421, 576, 422,
5526 569, 423, 424, 425, 579, 426, 580, 427, 581, 428,
5527 582, 222, 443, 63, 77, 431, 432, 433, 585, 434,
5528 223, 508, 972, 973, 1076, 1229, 1230, 1231, 1232, 1281,
5529 1233, 1279, 1301, 1302, 1303, 1311, 1312, 1313, 1319, 1314,
5530 1315, 1316, 1317, 1323, 224, 509, 979, 980, 981, 982,
5535 Dhcp4Parser::yytable_[] =
5537 155, 232, 254, 307, 325, 78, 351, 371, 389, 409,
5538 343, 373, 880, 300, 1156, 258, 1157, 1172, 757, 242,
5539 298, 315, 327, 815, 365, 385, 792, 410, 352, 372,
5540 374, 40, 259, 796, 387, 388, 29, 28, 30, 255,
5541 31, 1041, 260, 256, 1042, 81, 296, 310, 326, 739,
5542 740, 741, 742, 1254, 1255, 1256, 126, 441, 243, 299,
5543 316, 328, 442, 366, 386, 511, 411, 42, 520, 261,
5544 512, 44, 301, 521, 332, 532, 305, 131, 132, 125,
5545 533, 435, 302, 262, 333, 263, 536, 757, 743, 46,
5546 1044, 537, 251, 1045, 566, 257, 252, 306, 303, 567,
5547 334, 48, 281, 901, 902, 903, 904, 154, 905, 974,
5548 975, 976, 977, 583, 264, 429, 430, 265, 584, 266,
5549 267, 268, 269, 587, 270, 271, 154, 272, 588, 511,
5550 1077, 587, 273, 1078, 995, 274, 996, 275, 276, 277,
5551 278, 87, 279, 280, 88, 291, 520, 1000, 308, 309,
5552 292, 997, 1001, 293, 1304, 294, 89, 1305, 436, 90,
5553 91, 92, 93, 94, 95, 96, 97, 98, 99, 225,
5554 226, 387, 388, 227, 780, 781, 228, 229, 230, 231,
5555 1306, 50, 154, 1307, 1308, 1309, 1310, 1023, 816, 52,
5556 1023, 84, 1024, 131, 132, 1025, 100, 101, 102, 103,
5557 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
5558 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
5559 124, 131, 132, 54, 125, 126, 56, 93, 94, 95,
5560 96, 131, 132, 58, 1058, 60, 127, 128, 129, 1059,
5561 949, 950, 1156, 130, 1157, 1172, 131, 132, 1247, 1248,
5562 1249, 133, 32, 33, 34, 35, 134, 135, 136, 137,
5563 138, 100, 101, 102, 938, 939, 940, 139, 1063, 1067,
5564 131, 132, 437, 1064, 1068, 783, 784, 140, 62, 1073,
5565 141, 958, 959, 960, 1074, 828, 829, 142, 143, 125,
5566 126, 345, 144, 324, 990, 145, 583, 438, 154, 146,
5567 439, 1075, 1119, 91, 92, 93, 94, 95, 96, 446,
5568 345, 131, 132, 924, 925, 926, 927, 928, 929, 147,
5569 148, 149, 150, 151, 152, 447, 154, 1175, 1176, 1177,
5570 131, 132, 1083, 153, 448, 452, 961, 1084, 456, 100,
5571 101, 102, 103, 104, 105, 106, 107, 108, 109, 546,
5572 457, 154, 458, 114, 115, 116, 117, 118, 119, 120,
5573 121, 122, 123, 459, 244, 245, 246, 1023, 126, 532,
5574 547, 1266, 1262, 460, 1263, 154, 1267, 589, 590, 461,
5575 128, 129, 462, 566, 591, 463, 464, 247, 1274, 131,
5576 132, 248, 249, 250, 133, 465, 466, 1282, 536, 134,
5577 135, 136, 1283, 1285, 251, 468, 469, 470, 252, 1222,
5578 139, 1223, 1224, 1324, 548, 834, 154, 253, 1325, 835,
5579 836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
5580 846, 847, 848, 471, 472, 154, 849, 850, 851, 852,
5581 853, 854, 476, 477, 155, 478, 345, 367, 346, 347,
5582 368, 369, 370, 232, 751, 752, 753, 754, 760, 761,
5583 762, 763, 147, 148, 479, 254, 131, 132, 483, 307,
5584 490, 242, 345, 491, 492, 498, 300, 505, 258, 506,
5585 325, 507, 510, 298, 516, 517, 518, 315, 519, 528,
5586 351, 535, 551, 555, 154, 259, 371, 557, 327, 556,
5587 373, 559, 255, 560, 561, 260, 256, 563, 365, 296,
5588 243, 562, 352, 310, 385, 568, 409, 571, 372, 374,
5589 573, 574, 299, 577, 326, 578, 316, 586, 592, 593,
5590 594, 595, 261, 596, 410, 301, 597, 328, 598, 602,
5591 599, 600, 601, 603, 604, 302, 262, 366, 263, 605,
5592 332, 611, 617, 386, 606, 607, 623, 608, 257, 609,
5593 333, 303, 610, 620, 615, 281, 612, 93, 94, 95,
5594 613, 154, 614, 411, 616, 618, 334, 264, 619, 621,
5595 265, 622, 266, 267, 268, 269, 624, 270, 271, 344,
5596 272, 625, 630, 628, 1286, 273, 626, 154, 274, 631,
5597 275, 276, 277, 278, 632, 279, 280, 627, 291, 629,
5598 633, 634, 635, 292, 308, 309, 293, 636, 294, 637,
5599 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
5600 126, 1, 2, 3, 4, 5, 6, 7, 8, 9,
5601 10, 11, 12, 13, 648, 649, 345, 650, 346, 347,
5602 651, 131, 132, 348, 349, 350, 652, 653, 654, 655,
5603 656, 155, 658, 232, 657, 317, 131, 132, 824, 659,
5604 661, 662, 663, 318, 319, 320, 321, 322, 323, 664,
5605 324, 242, 665, 666, 667, 669, 670, 671, 672, 91,
5606 92, 93, 94, 95, 96, 673, 674, 676, 675, 677,
5607 678, 680, 683, 941, 951, 681, 409, 684, 685, 686,
5608 978, 687, 688, 689, 690, 692, 693, 694, 695, 696,
5609 243, 947, 952, 962, 410, 100, 101, 102, 103, 104,
5610 105, 106, 107, 108, 109, 697, 698, 700, 701, 114,
5611 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5612 131, 132, 702, 703, 126, 345, 154, 705, 706, 709,
5613 948, 953, 963, 411, 710, 708, 128, 129, 711, 712,
5614 715, 154, 716, 713, 719, 131, 132, 714, 249, 720,
5615 133, 717, 718, 721, 722, 134, 135, 136, 724, 725,
5616 251, 727, 728, 729, 252, 730, 731, 732, 733, 734,
5617 735, 736, 737, 253, 394, 395, 396, 397, 398, 399,
5618 400, 401, 402, 403, 404, 405, 406, 738, 745, 746,
5619 747, 748, 749, 407, 408, 750, 756, 30, 765, 766,
5620 759, 767, 768, 774, 1102, 769, 770, 771, 772, 773,
5621 775, 776, 777, 778, 789, 823, 818, 786, 147, 148,
5622 787, 788, 790, 791, 793, 154, 794, 795, 797, 798,
5623 799, 800, 881, 801, 885, 802, 803, 889, 804, 805,
5624 806, 807, 808, 893, 897, 913, 809, 810, 812, 916,
5625 154, 813, 814, 920, 820, 821, 971, 986, 1006, 1007,
5626 822, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1017,
5627 1018, 1028, 1101, 1027, 1031, 1030, 1033, 1034, 1036, 1037,
5628 1040, 1039, 1048, 1104, 1047, 1051, 1050, 1052, 1053, 1054,
5629 1055, 1056, 1057, 1060, 1061, 1062, 1069, 1071, 1079, 1080,
5630 1081, 1082, 825, 1090, 1085, 1089, 1092, 1093, 1094, 1095,
5631 1097, 1098, 1099, 1100, 1103, 1105, 1106, 1107, 1108, 1109,
5632 1110, 1111, 1113, 1112, 1114, 1115, 1116, 1117, 1203, 1204,
5633 1205, 1206, 254, 1207, 1208, 351, 1211, 1210, 371, 1212,
5634 1214, 1127, 373, 300, 1215, 258, 1178, 1218, 1219, 325,
5635 298, 1184, 389, 365, 1131, 1217, 385, 352, 1220, 1167,
5636 372, 374, 259, 1155, 1186, 1235, 941, 327, 1183, 255,
5637 951, 1132, 260, 256, 1240, 1236, 296, 1237, 1128, 1225,
5638 1241, 1133, 1129, 1179, 947, 1166, 978, 1180, 952, 299,
5639 1185, 307, 366, 326, 962, 386, 1238, 1227, 1168, 261,
5640 1244, 1226, 301, 1187, 1245, 1246, 328, 1264, 1134, 315,
5641 1251, 1169, 302, 262, 1265, 263, 1188, 1270, 1271, 332,
5642 1272, 1170, 1135, 948, 1136, 257, 1189, 953, 303, 333,
5643 1273, 1280, 281, 963, 1130, 310, 1228, 1171, 1252, 1181,
5644 1288, 1154, 1190, 1253, 264, 334, 1182, 265, 316, 266,
5645 267, 268, 269, 1137, 270, 271, 1138, 272, 1139, 1140,
5646 1141, 1142, 273, 1143, 1144, 274, 1145, 275, 276, 277,
5647 278, 1146, 279, 280, 1147, 291, 1148, 1149, 1150, 1151,
5648 292, 1152, 1153, 293, 1160, 294, 1158, 1159, 1289, 1161,
5649 1292, 1294, 1162, 1298, 1163, 1320, 1300, 1290, 1321, 1322,
5650 1326, 1330, 1258, 811, 819, 827, 1096, 1120, 660, 994,
5651 668, 1118, 1174, 1213, 1202, 1201, 707, 1209, 1122, 1287,
5652 1121, 1173, 704, 1259, 1260, 1123, 1124, 1243, 699, 1125,
5653 679, 1278, 1261, 1275, 1276, 1277, 308, 309, 1293, 1284,
5654 1296, 1126, 1291, 1242, 1216, 1297, 1299, 1200, 1199, 1328,
5655 1327, 1329, 1332, 1333, 991, 1198, 1221, 970, 723, 726,
5656 1295, 1234, 826, 1318, 1331, 1239, 0, 0, 0, 1127,
5657 0, 0, 0, 0, 0, 1178, 682, 0, 0, 0,
5658 1184, 0, 1131, 0, 0, 1225, 0, 1167, 691, 0,
5659 0, 1155, 0, 1186, 0, 0, 0, 1183, 0, 1132,
5660 0, 0, 0, 1227, 0, 0, 1128, 1226, 0, 1133,
5661 1129, 0, 1179, 1166, 0, 0, 1180, 0, 0, 1185,
5662 0, 0, 0, 0, 0, 0, 1168, 0, 0, 0,
5663 0, 0, 1187, 0, 0, 0, 1134, 0, 0, 1169,
5664 0, 0, 1228, 0, 0, 1188, 0, 0, 0, 1170,
5665 1135, 0, 1136, 0, 0, 1189, 0, 0, 0, 0,
5666 0, 0, 1130, 0, 0, 1171, 0, 0, 1181, 1154,
5667 0, 1190, 0, 0, 0, 1182, 0, 0, 0, 0,
5668 0, 1137, 0, 0, 1138, 0, 1139, 1140, 1141, 1142,
5669 0, 1143, 1144, 0, 1145, 0, 0, 0, 0, 1146,
5670 0, 0, 1147, 0, 1148, 1149, 1150, 1151, 0, 1152,
5671 1153, 0, 1160, 0, 1158, 1159, 0, 1161, 0, 0,
5676 Dhcp4Parser::yycheck_[] =
5678 67, 68, 69, 70, 71, 64, 73, 74, 75, 76,
5679 72, 74, 736, 69, 1038, 69, 1038, 1038, 637, 68,
5680 69, 70, 71, 18, 73, 74, 676, 76, 73, 74,
5681 74, 7, 69, 683, 148, 149, 5, 0, 7, 69,
5682 9, 3, 69, 69, 6, 221, 69, 70, 71, 185,
5683 186, 187, 188, 57, 58, 59, 95, 3, 68, 69,
5684 70, 71, 8, 73, 74, 3, 76, 7, 3, 69,
5685 8, 7, 69, 8, 71, 3, 115, 116, 117, 94,
5686 8, 6, 69, 69, 71, 69, 3, 706, 224, 7,
5687 3, 8, 131, 6, 3, 69, 135, 136, 69, 8,
5688 71, 7, 69, 138, 139, 140, 141, 221, 143, 204,
5689 205, 206, 207, 3, 69, 12, 13, 69, 8, 69,
5690 69, 69, 69, 3, 69, 69, 221, 69, 8, 3,
5691 3, 3, 69, 6, 8, 69, 8, 69, 69, 69,
5692 69, 11, 69, 69, 14, 69, 3, 3, 70, 70,
5693 69, 8, 8, 69, 3, 69, 26, 6, 3, 29,
5694 30, 31, 32, 33, 34, 35, 36, 37, 38, 15,
5695 16, 148, 149, 19, 17, 18, 22, 23, 24, 25,
5696 196, 7, 221, 199, 200, 201, 202, 3, 183, 7,
5697 3, 10, 8, 116, 117, 8, 66, 67, 68, 69,
5698 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
5699 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
5700 90, 116, 117, 7, 94, 95, 7, 32, 33, 34,
5701 35, 116, 117, 7, 3, 7, 106, 107, 108, 8,
5702 163, 164, 1266, 113, 1266, 1266, 116, 117, 40, 41,
5703 42, 121, 221, 222, 223, 224, 126, 127, 128, 129,
5704 130, 66, 67, 68, 159, 160, 161, 137, 3, 3,
5705 116, 117, 4, 8, 8, 20, 21, 147, 7, 3,
5706 150, 166, 167, 168, 8, 27, 28, 157, 158, 94,
5707 95, 96, 162, 145, 146, 165, 3, 8, 221, 169,
5708 3, 8, 1026, 30, 31, 32, 33, 34, 35, 4,
5709 96, 116, 117, 151, 152, 153, 154, 155, 156, 189,
5710 190, 191, 192, 193, 194, 4, 221, 132, 133, 134,
5711 116, 117, 3, 203, 4, 4, 221, 8, 4, 66,
5712 67, 68, 69, 70, 71, 72, 73, 74, 75, 8,
5713 4, 221, 4, 80, 81, 82, 83, 84, 85, 86,
5714 87, 88, 89, 4, 91, 92, 93, 3, 95, 3,
5715 3, 3, 8, 4, 8, 221, 8, 436, 437, 4,
5716 107, 108, 4, 3, 221, 4, 4, 114, 8, 116,
5717 117, 118, 119, 120, 121, 4, 4, 3, 3, 126,
5718 127, 128, 8, 8, 131, 4, 4, 4, 135, 195,
5719 137, 197, 198, 3, 8, 39, 221, 144, 8, 43,
5720 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5721 54, 55, 56, 4, 4, 221, 60, 61, 62, 63,
5722 64, 65, 4, 4, 511, 4, 96, 97, 98, 99,
5723 100, 101, 102, 520, 109, 110, 111, 112, 122, 123,
5724 124, 125, 189, 190, 4, 532, 116, 117, 4, 536,
5725 4, 520, 96, 4, 4, 4, 532, 4, 532, 4,
5726 547, 4, 4, 532, 4, 4, 4, 536, 4, 4,
5727 557, 4, 4, 4, 221, 532, 563, 3, 547, 8,
5728 563, 4, 532, 4, 4, 532, 532, 3, 557, 532,
5729 520, 8, 557, 536, 563, 4, 583, 4, 563, 563,
5730 4, 4, 532, 4, 547, 4, 536, 4, 4, 4,
5731 4, 4, 532, 224, 583, 532, 224, 547, 224, 222,
5732 4, 4, 4, 4, 4, 532, 532, 557, 532, 4,
5733 547, 224, 4, 563, 222, 222, 4, 222, 532, 222,
5734 547, 532, 222, 224, 222, 532, 223, 32, 33, 34,
5735 223, 221, 223, 583, 222, 222, 547, 532, 222, 224,
5736 532, 224, 532, 532, 532, 532, 4, 532, 532, 39,
5737 532, 4, 4, 223, 1244, 532, 224, 221, 532, 4,
5738 532, 532, 532, 532, 4, 532, 532, 224, 532, 224,
5739 222, 4, 4, 532, 536, 536, 532, 4, 532, 4,
5740 4, 4, 224, 224, 224, 4, 4, 4, 4, 4,
5741 95, 208, 209, 210, 211, 212, 213, 214, 215, 216,
5742 217, 218, 219, 220, 222, 4, 96, 4, 98, 99,
5743 4, 116, 117, 103, 104, 105, 4, 4, 4, 224,
5744 224, 728, 4, 730, 224, 130, 116, 117, 727, 4,
5745 4, 4, 4, 138, 139, 140, 141, 142, 143, 224,
5746 145, 730, 224, 222, 222, 4, 4, 4, 4, 30,
5747 31, 32, 33, 34, 35, 4, 4, 4, 222, 4,
5748 4, 4, 4, 770, 771, 222, 773, 4, 4, 4,
5749 777, 4, 4, 4, 4, 4, 4, 222, 4, 4,
5750 730, 770, 771, 772, 773, 66, 67, 68, 69, 70,
5751 71, 72, 73, 74, 75, 4, 224, 4, 224, 80,
5752 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
5753 116, 117, 224, 224, 95, 96, 221, 4, 4, 4,
5754 770, 771, 772, 773, 4, 224, 107, 108, 222, 4,
5755 4, 221, 4, 222, 4, 116, 117, 222, 119, 4,
5756 121, 224, 224, 4, 4, 126, 127, 128, 4, 222,
5757 131, 4, 7, 7, 135, 7, 7, 221, 221, 221,
5758 7, 7, 5, 144, 170, 171, 172, 173, 174, 175,
5759 176, 177, 178, 179, 180, 181, 182, 221, 221, 221,
5760 5, 5, 5, 189, 190, 221, 5, 7, 5, 5,
5761 221, 5, 5, 221, 224, 7, 7, 7, 7, 7,
5762 221, 5, 7, 5, 5, 5, 184, 221, 189, 190,
5763 221, 221, 221, 221, 221, 221, 7, 221, 221, 221,
5764 221, 221, 7, 221, 7, 221, 221, 7, 221, 221,
5765 221, 221, 221, 7, 7, 7, 221, 221, 221, 7,
5766 221, 221, 221, 7, 221, 221, 7, 7, 4, 4,
5767 221, 4, 4, 4, 4, 4, 4, 4, 4, 4,
5768 4, 3, 222, 6, 3, 6, 6, 3, 6, 3,
5769 3, 6, 3, 224, 6, 3, 6, 4, 4, 4,
5770 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
5771 4, 4, 728, 3, 221, 6, 8, 6, 4, 4,
5772 4, 4, 4, 4, 222, 222, 222, 222, 222, 222,
5773 222, 4, 222, 224, 4, 4, 4, 4, 222, 222,
5774 222, 222, 1029, 222, 222, 1032, 222, 224, 1035, 222,
5775 4, 1038, 1035, 1029, 4, 1029, 1043, 4, 222, 1046,
5776 1029, 1043, 1049, 1032, 1038, 224, 1035, 1032, 4, 1038,
5777 1035, 1035, 1029, 1038, 1043, 224, 1063, 1046, 1043, 1029,
5778 1067, 1038, 1029, 1029, 6, 224, 1029, 224, 1038, 1076,
5779 3, 1038, 1038, 1043, 1063, 1038, 1083, 1043, 1067, 1029,
5780 1043, 1088, 1032, 1046, 1073, 1035, 224, 1076, 1038, 1029,
5781 4, 1076, 1029, 1043, 221, 221, 1046, 8, 1038, 1088,
5782 221, 1038, 1029, 1029, 8, 1029, 1043, 4, 8, 1046,
5783 3, 1038, 1038, 1063, 1038, 1029, 1043, 1067, 1029, 1046,
5784 8, 4, 1029, 1073, 1038, 1088, 1076, 1038, 221, 1043,
5785 4, 1038, 1043, 221, 1029, 1046, 1043, 1029, 1088, 1029,
5786 1029, 1029, 1029, 1038, 1029, 1029, 1038, 1029, 1038, 1038,
5787 1038, 1038, 1029, 1038, 1038, 1029, 1038, 1029, 1029, 1029,
5788 1029, 1038, 1029, 1029, 1038, 1029, 1038, 1038, 1038, 1038,
5789 1029, 1038, 1038, 1029, 1038, 1029, 1038, 1038, 4, 1038,
5790 4, 4, 1038, 5, 1038, 4, 7, 224, 4, 4,
5791 4, 4, 221, 706, 719, 730, 1000, 1028, 511, 823,
5792 520, 1023, 1041, 1063, 1051, 1049, 566, 1058, 1031, 1266,
5793 1029, 1040, 563, 221, 221, 1032, 1034, 1090, 557, 1035,
5794 532, 1220, 221, 221, 221, 221, 1088, 1088, 222, 221,
5795 221, 1037, 1272, 1088, 1067, 221, 221, 1048, 1046, 222,
5796 224, 222, 221, 221, 794, 1044, 1073, 773, 583, 587,
5797 1282, 1077, 729, 1304, 1324, 1083, -1, -1, -1, 1266,
5798 -1, -1, -1, -1, -1, 1272, 536, -1, -1, -1,
5799 1272, -1, 1266, -1, -1, 1282, -1, 1266, 547, -1,
5800 -1, 1266, -1, 1272, -1, -1, -1, 1272, -1, 1266,
5801 -1, -1, -1, 1282, -1, -1, 1266, 1282, -1, 1266,
5802 1266, -1, 1272, 1266, -1, -1, 1272, -1, -1, 1272,
5803 -1, -1, -1, -1, -1, -1, 1266, -1, -1, -1,
5804 -1, -1, 1272, -1, -1, -1, 1266, -1, -1, 1266,
5805 -1, -1, 1282, -1, -1, 1272, -1, -1, -1, 1266,
5806 1266, -1, 1266, -1, -1, 1272, -1, -1, -1, -1,
5807 -1, -1, 1266, -1, -1, 1266, -1, -1, 1272, 1266,
5808 -1, 1272, -1, -1, -1, 1272, -1, -1, -1, -1,
5809 -1, 1266, -1, -1, 1266, -1, 1266, 1266, 1266, 1266,
5810 -1, 1266, 1266, -1, 1266, -1, -1, -1, -1, 1266,
5811 -1, -1, 1266, -1, 1266, 1266, 1266, 1266, -1, 1266,
5812 1266, -1, 1266, -1, 1266, 1266, -1, 1266, -1, -1,
5817 Dhcp4Parser::yystos_[] =
5819 0, 208, 209, 210, 211, 212, 213, 214, 215, 216,
5820 217, 218, 219, 220, 226, 227, 228, 229, 230, 231,
5821 232, 233, 234, 235, 236, 237, 238, 239, 0, 5,
5822 7, 9, 221, 222, 223, 224, 240, 241, 242, 247,
5823 7, 256, 7, 261, 7, 315, 7, 429, 7, 513,
5824 7, 530, 7, 464, 7, 470, 7, 494, 7, 405,
5825 7, 597, 7, 628, 248, 243, 257, 262, 316, 430,
5826 514, 531, 465, 471, 495, 406, 598, 629, 240, 249,
5827 250, 221, 245, 246, 10, 258, 260, 11, 14, 26,
5828 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
5829 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
5830 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
5831 86, 87, 88, 89, 90, 94, 95, 106, 107, 108,
5832 113, 116, 117, 121, 126, 127, 128, 129, 130, 137,
5833 147, 150, 157, 158, 162, 165, 169, 189, 190, 191,
5834 192, 193, 194, 203, 221, 255, 263, 264, 265, 266,
5835 267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
5836 278, 279, 281, 282, 283, 284, 285, 286, 287, 290,
5837 292, 294, 295, 296, 299, 300, 302, 304, 305, 306,
5838 307, 308, 309, 310, 311, 329, 331, 339, 341, 383,
5839 392, 399, 413, 423, 447, 448, 449, 450, 454, 462,
5840 488, 520, 522, 524, 535, 537, 539, 562, 576, 577,
5841 585, 595, 626, 635, 659, 15, 16, 19, 22, 23,
5842 24, 25, 255, 313, 314, 317, 319, 322, 325, 326,
5843 327, 328, 520, 522, 91, 92, 93, 114, 118, 119,
5844 120, 131, 135, 144, 255, 265, 266, 267, 268, 269,
5845 270, 271, 272, 273, 274, 279, 282, 283, 284, 285,
5846 286, 287, 290, 292, 294, 295, 296, 299, 300, 302,
5847 304, 310, 431, 432, 433, 435, 437, 439, 441, 443,
5848 445, 447, 448, 449, 450, 453, 488, 507, 520, 522,
5849 524, 535, 537, 539, 559, 115, 136, 255, 443, 445,
5850 488, 515, 516, 517, 519, 520, 522, 130, 138, 139,
5851 140, 141, 142, 143, 145, 255, 488, 520, 522, 532,
5852 533, 534, 535, 537, 539, 541, 545, 547, 549, 551,
5853 553, 555, 557, 462, 39, 96, 98, 99, 103, 104,
5854 105, 255, 359, 472, 473, 474, 475, 476, 477, 478,
5855 480, 482, 484, 485, 487, 520, 522, 97, 100, 101,
5856 102, 255, 359, 476, 482, 496, 497, 498, 499, 500,
5857 502, 503, 504, 505, 506, 520, 522, 148, 149, 255,
5858 407, 408, 409, 411, 170, 171, 172, 173, 174, 175,
5859 176, 177, 178, 179, 180, 181, 182, 189, 190, 255,
5860 520, 522, 599, 600, 601, 602, 604, 605, 607, 608,
5861 609, 612, 614, 616, 617, 618, 620, 622, 624, 12,
5862 13, 630, 631, 632, 634, 6, 3, 4, 8, 3,
5863 259, 3, 8, 627, 312, 332, 4, 4, 4, 536,
5864 538, 540, 4, 330, 340, 342, 4, 4, 4, 4,
5865 4, 4, 4, 4, 4, 4, 4, 277, 4, 4,
5866 4, 4, 4, 288, 291, 293, 4, 4, 4, 4,
5867 424, 463, 489, 4, 280, 297, 455, 521, 523, 451,
5868 4, 4, 4, 384, 563, 525, 400, 414, 4, 393,
5869 578, 586, 596, 301, 303, 4, 4, 4, 636, 660,
5870 4, 3, 8, 318, 320, 323, 4, 4, 4, 4,
5871 3, 8, 436, 438, 440, 508, 434, 442, 4, 446,
5872 444, 560, 3, 8, 518, 4, 3, 8, 558, 546,
5873 548, 552, 550, 556, 554, 542, 8, 3, 8, 479,
5874 360, 4, 483, 481, 486, 4, 8, 3, 501, 4,
5875 4, 4, 8, 3, 410, 412, 3, 8, 4, 615,
5876 603, 4, 606, 4, 4, 610, 613, 4, 4, 619,
5877 621, 623, 625, 3, 8, 633, 4, 3, 8, 240,
5878 240, 221, 4, 4, 4, 4, 224, 224, 224, 4,
5879 4, 4, 222, 4, 4, 4, 222, 222, 222, 222,
5880 222, 224, 223, 223, 223, 222, 222, 4, 222, 222,
5881 224, 224, 224, 4, 4, 4, 224, 224, 223, 224,
5882 4, 4, 4, 222, 4, 4, 4, 4, 4, 4,
5883 224, 224, 224, 4, 4, 4, 4, 4, 222, 4,
5884 4, 4, 4, 4, 4, 224, 224, 224, 4, 4,
5885 264, 4, 4, 4, 224, 224, 222, 222, 314, 4,
5886 4, 4, 4, 4, 4, 222, 4, 4, 4, 432,
5887 4, 222, 516, 4, 4, 4, 4, 4, 4, 4,
5888 4, 534, 4, 4, 222, 4, 4, 4, 224, 474,
5889 4, 224, 224, 224, 498, 4, 4, 408, 224, 4,
5890 4, 222, 4, 222, 222, 4, 4, 224, 224, 4,
5891 4, 4, 4, 600, 4, 222, 631, 4, 7, 7,
5892 7, 7, 221, 221, 221, 7, 7, 5, 221, 185,
5893 186, 187, 188, 224, 289, 221, 221, 5, 5, 5,
5894 221, 109, 110, 111, 112, 298, 5, 242, 244, 221,
5895 122, 123, 124, 125, 452, 5, 5, 5, 5, 7,
5896 7, 7, 7, 7, 221, 221, 5, 7, 5, 251,
5897 17, 18, 321, 20, 21, 324, 221, 221, 221, 5,
5898 221, 221, 251, 221, 7, 221, 251, 221, 221, 221,
5899 221, 221, 221, 221, 221, 221, 221, 221, 221, 221,
5900 221, 244, 221, 221, 221, 18, 183, 611, 184, 289,
5901 221, 221, 221, 5, 240, 263, 630, 313, 27, 28,
5902 333, 334, 335, 337, 39, 43, 44, 45, 46, 47,
5903 48, 49, 50, 51, 52, 53, 54, 55, 56, 60,
5904 61, 62, 63, 64, 65, 255, 347, 348, 349, 352,
5905 354, 356, 358, 359, 361, 362, 363, 364, 365, 366,
5906 367, 368, 369, 370, 373, 374, 375, 377, 379, 381,
5907 347, 7, 343, 344, 345, 7, 425, 426, 427, 7,
5908 466, 467, 468, 7, 490, 491, 492, 7, 456, 457,
5909 458, 138, 139, 140, 141, 143, 385, 386, 387, 388,
5910 389, 390, 391, 7, 564, 565, 7, 526, 527, 528,
5911 7, 401, 402, 403, 151, 152, 153, 154, 155, 156,
5912 415, 416, 417, 418, 419, 420, 421, 422, 159, 160,
5913 161, 255, 394, 395, 396, 397, 398, 520, 522, 163,
5914 164, 255, 520, 522, 579, 580, 581, 583, 166, 167,
5915 168, 221, 520, 522, 587, 588, 589, 590, 592, 593,
5916 599, 7, 637, 638, 204, 205, 206, 207, 255, 661,
5917 662, 663, 664, 665, 666, 252, 7, 509, 510, 511,
5918 146, 541, 543, 561, 343, 8, 8, 8, 336, 338,
5919 3, 8, 350, 353, 355, 357, 4, 4, 4, 4,
5920 4, 4, 4, 4, 4, 4, 371, 4, 4, 376,
5921 378, 380, 382, 3, 8, 8, 346, 6, 3, 428,
5922 6, 3, 469, 6, 3, 493, 6, 3, 459, 6,
5923 3, 3, 6, 566, 3, 6, 529, 6, 3, 404,
5924 6, 3, 4, 4, 4, 4, 4, 4, 3, 8,
5925 4, 4, 4, 3, 8, 582, 584, 3, 8, 4,
5926 591, 4, 594, 3, 8, 8, 639, 3, 6, 4,
5927 4, 4, 4, 3, 8, 221, 253, 254, 512, 6,
5928 3, 544, 8, 6, 4, 4, 334, 4, 4, 4,
5929 4, 222, 224, 222, 224, 222, 222, 222, 222, 222,
5930 222, 4, 224, 222, 4, 4, 4, 4, 348, 347,
5931 345, 431, 427, 472, 468, 496, 492, 255, 265, 266,
5932 267, 268, 269, 270, 271, 272, 273, 274, 279, 282,
5933 283, 284, 285, 286, 287, 290, 292, 294, 295, 296,
5934 299, 300, 302, 304, 310, 359, 423, 441, 443, 445,
5935 447, 448, 449, 450, 460, 461, 488, 520, 522, 535,
5936 537, 539, 559, 458, 386, 132, 133, 134, 255, 265,
5937 266, 267, 310, 359, 462, 488, 520, 522, 535, 537,
5938 539, 567, 568, 569, 570, 571, 573, 575, 565, 532,
5939 528, 407, 403, 222, 222, 222, 222, 222, 222, 416,
5940 224, 222, 222, 395, 4, 4, 580, 224, 4, 222,
5941 4, 588, 195, 197, 198, 255, 359, 520, 522, 640,
5942 641, 642, 643, 645, 638, 224, 224, 224, 224, 662,
5943 6, 3, 515, 511, 4, 221, 221, 40, 41, 42,
5944 351, 221, 221, 221, 57, 58, 59, 372, 221, 221,
5945 221, 221, 8, 8, 8, 8, 3, 8, 572, 574,
5946 4, 8, 3, 8, 8, 221, 221, 221, 240, 646,
5947 4, 644, 3, 8, 221, 8, 251, 461, 4, 4,
5948 224, 569, 4, 222, 4, 641, 221, 221, 5, 221,
5949 7, 647, 648, 649, 3, 6, 196, 199, 200, 201,
5950 202, 650, 651, 652, 654, 655, 656, 657, 648, 653,
5951 4, 4, 4, 658, 3, 8, 4, 224, 222, 222,
5956 Dhcp4Parser::yyr1_[] =
5958 0, 225, 227, 226, 228, 226, 229, 226, 230, 226,
5959 231, 226, 232, 226, 233, 226, 234, 226, 235, 226,
5960 236, 226, 237, 226, 238, 226, 239, 226, 240, 240,
5961 240, 240, 240, 240, 240, 241, 243, 242, 244, 245,
5962 245, 246, 246, 246, 248, 247, 249, 249, 250, 250,
5963 250, 252, 251, 253, 253, 254, 254, 254, 255, 257,
5964 256, 259, 258, 258, 260, 262, 261, 263, 263, 263,
5965 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5966 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5967 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5968 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5969 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5970 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
5971 264, 264, 264, 264, 264, 264, 264, 264, 265, 266,
5972 267, 268, 269, 270, 271, 272, 273, 274, 275, 277,
5973 276, 278, 280, 279, 281, 282, 283, 284, 285, 286,
5974 288, 287, 289, 289, 289, 289, 289, 291, 290, 293,
5975 292, 294, 295, 297, 296, 298, 298, 298, 298, 299,
5976 301, 300, 303, 302, 304, 305, 306, 307, 308, 309,
5977 310, 312, 311, 313, 313, 313, 314, 314, 314, 314,
5978 314, 314, 314, 314, 314, 314, 316, 315, 318, 317,
5979 320, 319, 321, 321, 323, 322, 324, 324, 325, 326,
5980 327, 328, 330, 329, 332, 331, 333, 333, 333, 334,
5981 334, 336, 335, 338, 337, 340, 339, 342, 341, 343,
5982 343, 344, 344, 344, 346, 345, 347, 347, 347, 348,
5983 348, 348, 348, 348, 348, 348, 348, 348, 348, 348,
5984 348, 348, 348, 348, 348, 348, 348, 348, 348, 348,
5985 348, 348, 350, 349, 351, 351, 351, 353, 352, 355,
5986 354, 357, 356, 358, 360, 359, 361, 362, 363, 364,
5987 365, 366, 367, 368, 369, 371, 370, 372, 372, 372,
5988 373, 374, 376, 375, 378, 377, 380, 379, 382, 381,
5989 384, 383, 385, 385, 385, 386, 386, 386, 386, 386,
5990 387, 388, 389, 390, 391, 393, 392, 394, 394, 394,
5991 395, 395, 395, 395, 395, 395, 396, 397, 398, 400,
5992 399, 401, 401, 402, 402, 402, 404, 403, 406, 405,
5993 407, 407, 407, 407, 408, 408, 410, 409, 412, 411,
5994 414, 413, 415, 415, 415, 416, 416, 416, 416, 416,
5995 416, 417, 418, 419, 420, 421, 422, 424, 423, 425,
5996 425, 426, 426, 426, 428, 427, 430, 429, 431, 431,
5997 431, 432, 432, 432, 432, 432, 432, 432, 432, 432,
5998 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
5999 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6000 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6001 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6002 434, 433, 436, 435, 438, 437, 440, 439, 442, 441,
6003 444, 443, 446, 445, 447, 448, 449, 451, 450, 452,
6004 452, 452, 452, 453, 455, 454, 456, 456, 457, 457,
6005 457, 459, 458, 460, 460, 460, 461, 461, 461, 461,
6006 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
6007 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
6008 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
6009 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
6010 463, 462, 465, 464, 466, 466, 467, 467, 467, 469,
6011 468, 471, 470, 472, 472, 473, 473, 473, 474, 474,
6012 474, 474, 474, 474, 474, 474, 474, 474, 475, 476,
6013 477, 479, 478, 481, 480, 483, 482, 484, 486, 485,
6014 487, 489, 488, 490, 490, 491, 491, 491, 493, 492,
6015 495, 494, 496, 496, 497, 497, 497, 498, 498, 498,
6016 498, 498, 498, 498, 498, 498, 498, 499, 501, 500,
6017 502, 503, 504, 505, 506, 508, 507, 509, 509, 510,
6018 510, 510, 512, 511, 514, 513, 515, 515, 515, 516,
6019 516, 516, 516, 516, 516, 516, 516, 518, 517, 519,
6020 521, 520, 523, 522, 525, 524, 526, 526, 527, 527,
6021 527, 529, 528, 531, 530, 532, 532, 533, 533, 533,
6022 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
6023 534, 534, 534, 534, 534, 536, 535, 538, 537, 540,
6024 539, 542, 541, 544, 543, 546, 545, 548, 547, 550,
6025 549, 552, 551, 554, 553, 556, 555, 558, 557, 560,
6026 559, 561, 561, 563, 562, 564, 564, 564, 566, 565,
6027 567, 567, 568, 568, 568, 569, 569, 569, 569, 569,
6028 569, 569, 569, 569, 569, 569, 569, 569, 569, 569,
6029 569, 570, 572, 571, 574, 573, 575, 576, 578, 577,
6030 579, 579, 579, 580, 580, 580, 580, 580, 582, 581,
6031 584, 583, 586, 585, 587, 587, 587, 588, 588, 588,
6032 588, 588, 588, 589, 591, 590, 592, 594, 593, 596,
6033 595, 598, 597, 599, 599, 599, 600, 600, 600, 600,
6034 600, 600, 600, 600, 600, 600, 600, 600, 600, 600,
6035 600, 600, 600, 600, 601, 603, 602, 604, 606, 605,
6036 607, 608, 610, 609, 611, 611, 613, 612, 615, 614,
6037 616, 617, 619, 618, 621, 620, 623, 622, 625, 624,
6038 627, 626, 629, 628, 630, 630, 630, 631, 631, 633,
6039 632, 634, 636, 635, 637, 637, 637, 639, 638, 640,
6040 640, 640, 641, 641, 641, 641, 641, 641, 641, 642,
6041 644, 643, 646, 645, 647, 647, 647, 649, 648, 650,
6042 650, 650, 651, 651, 651, 651, 651, 653, 652, 654,
6043 655, 656, 658, 657, 660, 659, 661, 661, 661, 662,
6044 662, 662, 662, 662, 663, 664, 665, 666
6048 Dhcp4Parser::yyr2_[] =
6050 0, 2, 0, 3, 0, 3, 0, 3, 0, 3,
6051 0, 3, 0, 3, 0, 3, 0, 3, 0, 3,
6052 0, 3, 0, 3, 0, 3, 0, 3, 1, 1,
6053 1, 1, 1, 1, 1, 1, 0, 4, 1, 0,
6054 1, 3, 5, 2, 0, 4, 0, 1, 1, 3,
6055 2, 0, 4, 0, 1, 1, 3, 2, 2, 0,
6056 4, 0, 6, 1, 2, 0, 4, 1, 3, 2,
6057 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6058 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6059 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6060 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6061 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6062 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6063 1, 1, 1, 1, 1, 1, 1, 1, 3, 3,
6064 3, 3, 3, 3, 3, 3, 3, 3, 3, 0,
6065 4, 3, 0, 4, 3, 3, 3, 3, 3, 3,
6066 0, 4, 1, 1, 1, 1, 1, 0, 4, 0,
6067 4, 3, 3, 0, 4, 1, 1, 1, 1, 3,
6068 0, 4, 0, 4, 3, 3, 3, 3, 3, 3,
6069 3, 0, 6, 1, 3, 2, 1, 1, 1, 1,
6070 1, 1, 1, 1, 1, 1, 0, 4, 0, 4,
6071 0, 4, 1, 1, 0, 4, 1, 1, 3, 3,
6072 3, 3, 0, 6, 0, 6, 1, 3, 2, 1,
6073 1, 0, 4, 0, 4, 0, 6, 0, 6, 0,
6074 1, 1, 3, 2, 0, 4, 1, 3, 2, 1,
6075 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6076 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6077 1, 1, 0, 4, 1, 1, 1, 0, 4, 0,
6078 4, 0, 4, 3, 0, 4, 3, 3, 3, 3,
6079 3, 3, 3, 3, 3, 0, 4, 1, 1, 1,
6080 3, 3, 0, 4, 0, 4, 0, 4, 0, 4,
6081 0, 6, 1, 3, 2, 1, 1, 1, 1, 1,
6082 1, 1, 1, 1, 1, 0, 6, 1, 3, 2,
6083 1, 1, 1, 1, 1, 1, 3, 3, 3, 0,
6084 6, 0, 1, 1, 3, 2, 0, 4, 0, 4,
6085 1, 3, 2, 1, 1, 1, 0, 4, 0, 4,
6086 0, 6, 1, 3, 2, 1, 1, 1, 1, 1,
6087 1, 3, 3, 3, 3, 3, 3, 0, 6, 0,
6088 1, 1, 3, 2, 0, 4, 0, 4, 1, 3,
6089 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6090 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6091 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6092 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6093 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6094 0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
6095 0, 4, 0, 4, 3, 3, 3, 0, 4, 1,
6096 1, 1, 1, 3, 0, 6, 0, 1, 1, 3,
6097 2, 0, 4, 1, 3, 2, 1, 1, 1, 1,
6098 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6099 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6100 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6101 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6102 0, 6, 0, 4, 0, 1, 1, 3, 2, 0,
6103 4, 0, 4, 0, 1, 1, 3, 2, 1, 1,
6104 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
6105 1, 0, 4, 0, 4, 0, 4, 1, 0, 4,
6106 3, 0, 6, 0, 1, 1, 3, 2, 0, 4,
6107 0, 4, 0, 1, 1, 3, 2, 1, 1, 1,
6108 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
6109 1, 1, 3, 3, 3, 0, 6, 0, 1, 1,
6110 3, 2, 0, 4, 0, 4, 1, 3, 2, 1,
6111 1, 1, 1, 1, 1, 1, 1, 0, 4, 3,
6112 0, 4, 0, 4, 0, 6, 0, 1, 1, 3,
6113 2, 0, 4, 0, 4, 0, 1, 1, 3, 2,
6114 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6115 1, 1, 1, 1, 1, 0, 4, 0, 4, 0,
6116 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
6117 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
6118 6, 1, 1, 0, 6, 1, 3, 2, 0, 4,
6119 0, 1, 1, 3, 2, 1, 1, 1, 1, 1,
6120 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6121 1, 1, 0, 4, 0, 4, 3, 3, 0, 6,
6122 1, 3, 2, 1, 1, 1, 1, 1, 0, 4,
6123 0, 4, 0, 6, 1, 3, 2, 1, 1, 1,
6124 1, 1, 1, 3, 0, 4, 3, 0, 4, 0,
6125 6, 0, 4, 1, 3, 2, 1, 1, 1, 1,
6126 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6127 1, 1, 1, 1, 3, 0, 4, 3, 0, 4,
6128 3, 3, 0, 4, 1, 1, 0, 4, 0, 4,
6129 3, 3, 0, 4, 0, 4, 0, 4, 0, 4,
6130 0, 6, 0, 4, 1, 3, 2, 1, 1, 0,
6131 6, 3, 0, 6, 1, 3, 2, 0, 4, 1,
6132 3, 2, 1, 1, 1, 1, 1, 1, 1, 3,
6133 0, 4, 0, 6, 1, 3, 2, 0, 4, 1,
6134 3, 2, 1, 1, 1, 1, 1, 0, 4, 3,
6135 3, 3, 0, 4, 0, 6, 1, 3, 2, 1,
6136 1, 1, 1, 1, 3, 3, 3, 3
6140#if PARSER4_DEBUG || 1
6144 const Dhcp4Parser::yytname_[] =
6146 "\"end of file\"",
"error",
"\"invalid token\"",
"\",\"",
"\":\"",
6147 "\"[\"",
"\"]\"",
"\"{\"",
"\"}\"",
"\"null\"",
"\"Dhcp4\"",
6148 "\"config-control\"",
"\"config-databases\"",
6149 "\"config-fetch-wait-time\"",
"\"interfaces-config\"",
"\"interfaces\"",
6150 "\"dhcp-socket-type\"",
"\"raw\"",
"\"udp\"",
"\"outbound-interface\"",
6151 "\"same-as-inbound\"",
"\"use-routing\"",
"\"re-detect\"",
6152 "\"service-sockets-require-all\"",
"\"service-sockets-retry-wait-time\"",
6153 "\"service-sockets-max-retries\"",
"\"sanity-checks\"",
6154 "\"lease-checks\"",
"\"extended-info-checks\"",
"\"echo-client-id\"",
6155 "\"match-client-id\"",
"\"authoritative\"",
"\"next-server\"",
6156 "\"server-hostname\"",
"\"boot-file-name\"",
"\"offer-lifetime\"",
6157 "\"lease-database\"",
"\"hosts-database\"",
"\"hosts-databases\"",
6158 "\"type\"",
"\"memfile\"",
"\"mysql\"",
"\"postgresql\"",
"\"user\"",
6159 "\"password\"",
"\"host\"",
"\"port\"",
"\"persist\"",
6160 "\"lfc-interval\"",
"\"readonly\"",
"\"connect-timeout\"",
6161 "\"read-timeout\"",
"\"write-timeout\"",
"\"tcp-user-timeout\"",
6162 "\"max-reconnect-tries\"",
"\"reconnect-wait-time\"",
"\"on-fail\"",
6163 "\"stop-retry-exit\"",
"\"serve-retry-exit\"",
6164 "\"serve-retry-continue\"",
"\"retry-on-startup\"",
"\"max-row-errors\"",
6165 "\"trust-anchor\"",
"\"cert-file\"",
"\"key-file\"",
"\"cipher-list\"",
6166 "\"valid-lifetime\"",
"\"min-valid-lifetime\"",
"\"max-valid-lifetime\"",
6167 "\"renew-timer\"",
"\"rebind-timer\"",
"\"calculate-tee-times\"",
6168 "\"t1-percent\"",
"\"t2-percent\"",
"\"cache-threshold\"",
6169 "\"cache-max-age\"",
"\"decline-probation-period\"",
"\"server-tag\"",
6170 "\"statistic-default-sample-count\"",
"\"statistic-default-sample-age\"",
6171 "\"ddns-send-updates\"",
"\"ddns-override-no-update\"",
6172 "\"ddns-override-client-update\"",
"\"ddns-replace-client-name\"",
6173 "\"ddns-generated-prefix\"",
"\"ddns-qualifying-suffix\"",
6174 "\"ddns-update-on-renew\"",
"\"ddns-use-conflict-resolution\"",
6175 "\"ddns-ttl-percent\"",
"\"store-extended-info\"",
"\"subnet4\"",
6176 "\"4o6-interface\"",
"\"4o6-interface-id\"",
"\"4o6-subnet\"",
6177 "\"option-def\"",
"\"option-data\"",
"\"name\"",
"\"data\"",
"\"code\"",
6178 "\"space\"",
"\"csv-format\"",
"\"always-send\"",
"\"never-send\"",
6179 "\"record-types\"",
"\"encapsulate\"",
"\"array\"",
6180 "\"parked-packet-limit\"",
"\"allocator\"",
6181 "\"ddns-conflict-resolution-mode\"",
"\"check-with-dhcid\"",
6182 "\"no-check-with-dhcid\"",
"\"check-exists-with-dhcid\"",
6183 "\"no-check-without-dhcid\"",
"\"shared-networks\"",
"\"pools\"",
6184 "\"pool\"",
"\"user-context\"",
"\"comment\"",
"\"subnet\"",
6185 "\"interface\"",
"\"id\"",
"\"reservation-mode\"",
"\"disabled\"",
6186 "\"out-of-pool\"",
"\"global\"",
"\"all\"",
"\"reservations-global\"",
6187 "\"reservations-in-subnet\"",
"\"reservations-out-of-pool\"",
6188 "\"host-reservation-identifiers\"",
"\"client-classes\"",
6189 "\"require-client-classes\"",
"\"test\"",
"\"template-test\"",
6190 "\"only-if-required\"",
"\"client-class\"",
"\"pool-id\"",
6191 "\"reservations\"",
"\"duid\"",
"\"hw-address\"",
"\"circuit-id\"",
6192 "\"client-id\"",
"\"hostname\"",
"\"flex-id\"",
"\"relay\"",
6193 "\"ip-address\"",
"\"ip-addresses\"",
"\"hooks-libraries\"",
6194 "\"library\"",
"\"parameters\"",
"\"expired-leases-processing\"",
6195 "\"reclaim-timer-wait-time\"",
"\"flush-reclaimed-timer-wait-time\"",
6196 "\"hold-reclaimed-time\"",
"\"max-reclaim-leases\"",
6197 "\"max-reclaim-time\"",
"\"unwarned-reclaim-cycles\"",
6198 "\"dhcp4o6-port\"",
"\"multi-threading\"",
"\"enable-multi-threading\"",
6199 "\"thread-pool-size\"",
"\"packet-queue-size\"",
"\"control-socket\"",
6200 "\"socket-type\"",
"\"socket-name\"",
"\"dhcp-queue-control\"",
6201 "\"enable-queue\"",
"\"queue-type\"",
"\"capacity\"",
"\"dhcp-ddns\"",
6202 "\"enable-updates\"",
"\"qualifying-suffix\"",
"\"server-ip\"",
6203 "\"server-port\"",
"\"sender-ip\"",
"\"sender-port\"",
6204 "\"max-queue-size\"",
"\"ncr-protocol\"",
"\"ncr-format\"",
6205 "\"override-no-update\"",
"\"override-client-update\"",
6206 "\"replace-client-name\"",
"\"generated-prefix\"",
"\"tcp\"",
"\"JSON\"",
6207 "\"when-present\"",
"\"never\"",
"\"always\"",
"\"when-not-present\"",
6208 "\"hostname-char-set\"",
"\"hostname-char-replacement\"",
6209 "\"early-global-reservations-lookup\"",
"\"ip-reservations-unique\"",
6210 "\"reservations-lookup-first\"",
"\"loggers\"",
"\"output-options\"",
6211 "\"output\"",
"\"debuglevel\"",
"\"severity\"",
"\"flush\"",
6212 "\"maxsize\"",
"\"maxver\"",
"\"pattern\"",
"\"compatibility\"",
6213 "\"lenient-option-parsing\"",
"\"ignore-dhcp-server-identifier\"",
6214 "\"ignore-rai-link-selection\"",
"\"exclude-first-last-24\"",
6215 "TOPLEVEL_JSON",
"TOPLEVEL_DHCP4",
"SUB_DHCP4",
"SUB_INTERFACES4",
6216 "SUB_SUBNET4",
"SUB_POOL4",
"SUB_RESERVATION",
"SUB_OPTION_DEFS",
6217 "SUB_OPTION_DEF",
"SUB_OPTION_DATA",
"SUB_HOOKS_LIBRARY",
6218 "SUB_DHCP_DDNS",
"SUB_CONFIG_CONTROL",
"\"constant string\"",
6219 "\"integer\"",
"\"floating point\"",
"\"boolean\"",
"$accept",
"start",
6220 "$@1",
"$@2",
"$@3",
"$@4",
"$@5",
"$@6",
"$@7",
"$@8",
"$@9",
"$@10",
6221 "$@11",
"$@12",
"$@13",
"value",
"sub_json",
"map2",
"$@14",
"map_value",
6222 "map_content",
"not_empty_map",
"list_generic",
"$@15",
"list_content",
6223 "not_empty_list",
"list_strings",
"$@16",
"list_strings_content",
6224 "not_empty_list_strings",
"unknown_map_entry",
"syntax_map",
"$@17",
6225 "global_object",
"$@18",
"global_object_comma",
"sub_dhcp4",
"$@19",
6226 "global_params",
"global_param",
"valid_lifetime",
"min_valid_lifetime",
6227 "max_valid_lifetime",
"renew_timer",
"rebind_timer",
6228 "calculate_tee_times",
"t1_percent",
"t2_percent",
"cache_threshold",
6229 "cache_max_age",
"decline_probation_period",
"server_tag",
"$@20",
6230 "parked_packet_limit",
"allocator",
"$@21",
"echo_client_id",
6231 "match_client_id",
"authoritative",
"ddns_send_updates",
6232 "ddns_override_no_update",
"ddns_override_client_update",
6233 "ddns_replace_client_name",
"$@22",
"ddns_replace_client_name_value",
6234 "ddns_generated_prefix",
"$@23",
"ddns_qualifying_suffix",
"$@24",
6235 "ddns_update_on_renew",
"ddns_use_conflict_resolution",
6236 "ddns_conflict_resolution_mode",
"$@25",
6237 "ddns_conflict_resolution_mode_value",
"ddns_ttl_percent",
6238 "hostname_char_set",
"$@26",
"hostname_char_replacement",
"$@27",
6239 "store_extended_info",
"statistic_default_sample_count",
6240 "statistic_default_sample_age",
"early_global_reservations_lookup",
6241 "ip_reservations_unique",
"reservations_lookup_first",
"offer_lifetime",
6242 "interfaces_config",
"$@28",
"interfaces_config_params",
6243 "interfaces_config_param",
"sub_interfaces4",
"$@29",
"interfaces_list",
6244 "$@30",
"dhcp_socket_type",
"$@31",
"socket_type",
"outbound_interface",
6245 "$@32",
"outbound_interface_value",
"re_detect",
6246 "service_sockets_require_all",
"service_sockets_retry_wait_time",
6247 "service_sockets_max_retries",
"lease_database",
"$@33",
"sanity_checks",
6248 "$@34",
"sanity_checks_params",
"sanity_checks_param",
"lease_checks",
6249 "$@35",
"extended_info_checks",
"$@36",
"hosts_database",
"$@37",
6250 "hosts_databases",
"$@38",
"database_list",
"not_empty_database_list",
6251 "database",
"$@39",
"database_map_params",
"database_map_param",
6252 "database_type",
"$@40",
"db_type",
"user",
"$@41",
"password",
"$@42",
6253 "host",
"$@43",
"port",
"name",
"$@44",
"persist",
"lfc_interval",
6254 "readonly",
"connect_timeout",
"read_timeout",
"write_timeout",
6255 "tcp_user_timeout",
"max_reconnect_tries",
"reconnect_wait_time",
6256 "on_fail",
"$@45",
"on_fail_mode",
"retry_on_startup",
"max_row_errors",
6257 "trust_anchor",
"$@46",
"cert_file",
"$@47",
"key_file",
"$@48",
6258 "cipher_list",
"$@49",
"host_reservation_identifiers",
"$@50",
6259 "host_reservation_identifiers_list",
"host_reservation_identifier",
6260 "duid_id",
"hw_address_id",
"circuit_id",
"client_id",
"flex_id",
6261 "dhcp_multi_threading",
"$@51",
"multi_threading_params",
6262 "multi_threading_param",
"enable_multi_threading",
"thread_pool_size",
6263 "packet_queue_size",
"hooks_libraries",
"$@52",
"hooks_libraries_list",
6264 "not_empty_hooks_libraries_list",
"hooks_library",
"$@53",
6265 "sub_hooks_library",
"$@54",
"hooks_params",
"hooks_param",
"library",
6266 "$@55",
"parameters",
"$@56",
"expired_leases_processing",
"$@57",
6267 "expired_leases_params",
"expired_leases_param",
6268 "reclaim_timer_wait_time",
"flush_reclaimed_timer_wait_time",
6269 "hold_reclaimed_time",
"max_reclaim_leases",
"max_reclaim_time",
6270 "unwarned_reclaim_cycles",
"subnet4_list",
"$@58",
6271 "subnet4_list_content",
"not_empty_subnet4_list",
"subnet4",
"$@59",
6272 "sub_subnet4",
"$@60",
"subnet4_params",
"subnet4_param",
"subnet",
6273 "$@61",
"subnet_4o6_interface",
"$@62",
"subnet_4o6_interface_id",
6274 "$@63",
"subnet_4o6_subnet",
"$@64",
"interface",
"$@65",
"client_class",
6275 "$@66",
"require_client_classes",
"$@67",
"reservations_global",
6276 "reservations_in_subnet",
"reservations_out_of_pool",
"reservation_mode",
6277 "$@68",
"hr_mode",
"id",
"shared_networks",
"$@69",
6278 "shared_networks_content",
"shared_networks_list",
"shared_network",
6279 "$@70",
"shared_network_params",
"shared_network_param",
6280 "option_def_list",
"$@71",
"sub_option_def_list",
"$@72",
6281 "option_def_list_content",
"not_empty_option_def_list",
6282 "option_def_entry",
"$@73",
"sub_option_def",
"$@74",
6283 "option_def_params",
"not_empty_option_def_params",
"option_def_param",
6284 "option_def_name",
"code",
"option_def_code",
"option_def_type",
"$@75",
6285 "option_def_record_types",
"$@76",
"space",
"$@77",
"option_def_space",
6286 "option_def_encapsulate",
"$@78",
"option_def_array",
"option_data_list",
6287 "$@79",
"option_data_list_content",
"not_empty_option_data_list",
6288 "option_data_entry",
"$@80",
"sub_option_data",
"$@81",
6289 "option_data_params",
"not_empty_option_data_params",
6290 "option_data_param",
"option_data_name",
"option_data_data",
"$@82",
6291 "option_data_code",
"option_data_space",
"option_data_csv_format",
6292 "option_data_always_send",
"option_data_never_send",
"pools_list",
6293 "$@83",
"pools_list_content",
"not_empty_pools_list",
"pool_list_entry",
6294 "$@84",
"sub_pool4",
"$@85",
"pool_params",
"pool_param",
"pool_entry",
6295 "$@86",
"pool_id",
"user_context",
"$@87",
"comment",
"$@88",
6296 "reservations",
"$@89",
"reservations_list",
6297 "not_empty_reservations_list",
"reservation",
"$@90",
"sub_reservation",
6298 "$@91",
"reservation_params",
"not_empty_reservation_params",
6299 "reservation_param",
"next_server",
"$@92",
"server_hostname",
"$@93",
6300 "boot_file_name",
"$@94",
"ip_address",
"$@95",
"ip_addresses",
"$@96",
6301 "duid",
"$@97",
"hw_address",
"$@98",
"client_id_value",
"$@99",
6302 "circuit_id_value",
"$@100",
"flex_id_value",
"$@101",
"hostname",
6303 "$@102",
"reservation_client_classes",
"$@103",
"relay",
"$@104",
6304 "relay_map",
"client_classes",
"$@105",
"client_classes_list",
6305 "client_class_entry",
"$@106",
"client_class_params",
6306 "not_empty_client_class_params",
"client_class_param",
6307 "client_class_name",
"client_class_test",
"$@107",
6308 "client_class_template_test",
"$@108",
"only_if_required",
6309 "dhcp4o6_port",
"control_socket",
"$@109",
"control_socket_params",
6310 "control_socket_param",
"control_socket_type",
"$@110",
6311 "control_socket_name",
"$@111",
"dhcp_queue_control",
"$@112",
6312 "queue_control_params",
"queue_control_param",
"enable_queue",
6313 "queue_type",
"$@113",
"capacity",
"arbitrary_map_entry",
"$@114",
6314 "dhcp_ddns",
"$@115",
"sub_dhcp_ddns",
"$@116",
"dhcp_ddns_params",
6315 "dhcp_ddns_param",
"enable_updates",
"server_ip",
"$@117",
"server_port",
6316 "sender_ip",
"$@118",
"sender_port",
"max_queue_size",
"ncr_protocol",
6317 "$@119",
"ncr_protocol_value",
"ncr_format",
"$@120",
6318 "dep_qualifying_suffix",
"$@121",
"dep_override_no_update",
6319 "dep_override_client_update",
"dep_replace_client_name",
"$@122",
6320 "dep_generated_prefix",
"$@123",
"dep_hostname_char_set",
"$@124",
6321 "dep_hostname_char_replacement",
"$@125",
"config_control",
"$@126",
6322 "sub_config_control",
"$@127",
"config_control_params",
6323 "config_control_param",
"config_databases",
"$@128",
6324 "config_fetch_wait_time",
"loggers",
"$@129",
"loggers_entries",
6325 "logger_entry",
"$@130",
"logger_params",
"logger_param",
"debuglevel",
6326 "severity",
"$@131",
"output_options_list",
"$@132",
6327 "output_options_list_content",
"output_entry",
"$@133",
6328 "output_params_list",
"output_params",
"output",
"$@134",
"flush",
6329 "maxsize",
"maxver",
"pattern",
"$@135",
"compatibility",
"$@136",
6330 "compatibility_params",
"compatibility_param",
"lenient_option_parsing",
6331 "ignore_dhcp_server_identifier",
"ignore_rai_link_selection",
6332 "exclude_first_last_24", YY_NULLPTR
6339 Dhcp4Parser::yyrline_[] =
6341 0, 320, 320, 320, 321, 321, 322, 322, 323, 323,
6342 324, 324, 325, 325, 326, 326, 327, 327, 328, 328,
6343 329, 329, 330, 330, 331, 331, 332, 332, 340, 341,
6344 342, 343, 344, 345, 346, 349, 354, 354, 365, 368,
6345 369, 372, 377, 383, 388, 388, 395, 396, 399, 403,
6346 407, 413, 413, 420, 421, 424, 428, 432, 442, 451,
6347 451, 466, 466, 480, 483, 489, 489, 498, 499, 500,
6348 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
6349 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
6350 527, 528, 529, 530, 531, 532, 533, 534, 535, 536,
6351 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
6352 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
6353 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
6354 567, 568, 569, 570, 571, 572, 573, 574, 577, 583,
6355 589, 595, 601, 607, 613, 619, 625, 631, 637, 643,
6356 643, 652, 658, 658, 667, 673, 679, 685, 691, 697,
6357 703, 703, 712, 715, 718, 721, 724, 730, 730, 739,
6358 739, 748, 757, 767, 767, 776, 779, 782, 785, 790,
6359 796, 796, 805, 805, 814, 820, 826, 832, 838, 844,
6360 850, 856, 856, 868, 869, 870, 875, 876, 877, 878,
6361 879, 880, 881, 882, 883, 884, 887, 887, 896, 896,
6362 907, 907, 915, 916, 919, 919, 927, 929, 933, 939,
6363 945, 951, 957, 957, 970, 970, 981, 982, 983, 988,
6364 989, 992, 992, 1011, 1011, 1029, 1029, 1042, 1042, 1053,
6365 1054, 1057, 1058, 1059, 1064, 1064, 1074, 1075, 1076, 1081,
6366 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
6367 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101,
6368 1102, 1103, 1106, 1106, 1114, 1115, 1116, 1119, 1119, 1128,
6369 1128, 1137, 1137, 1146, 1152, 1152, 1161, 1167, 1173, 1179,
6370 1185, 1191, 1197, 1203, 1209, 1215, 1215, 1223, 1224, 1225,
6371 1228, 1234, 1240, 1240, 1249, 1249, 1258, 1258, 1267, 1267,
6372 1276, 1276, 1287, 1288, 1289, 1294, 1295, 1296, 1297, 1298,
6373 1301, 1306, 1311, 1316, 1321, 1328, 1328, 1341, 1342, 1343,
6374 1348, 1349, 1350, 1351, 1352, 1353, 1356, 1362, 1368, 1374,
6375 1374, 1385, 1386, 1389, 1390, 1391, 1396, 1396, 1406, 1406,
6376 1416, 1417, 1418, 1421, 1424, 1425, 1428, 1428, 1437, 1437,
6377 1446, 1446, 1458, 1459, 1460, 1465, 1466, 1467, 1468, 1469,
6378 1470, 1473, 1479, 1485, 1491, 1497, 1503, 1512, 1512, 1526,
6379 1527, 1530, 1531, 1532, 1541, 1541, 1567, 1567, 1578, 1579,
6380 1580, 1586, 1587, 1588, 1589, 1590, 1591, 1592, 1593, 1594,
6381 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1602, 1603, 1604,
6382 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614,
6383 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624,
6384 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634,
6385 1637, 1637, 1646, 1646, 1655, 1655, 1664, 1664, 1673, 1673,
6386 1682, 1682, 1691, 1691, 1702, 1708, 1714, 1720, 1720, 1728,
6387 1729, 1730, 1731, 1734, 1742, 1742, 1754, 1755, 1759, 1760,
6388 1761, 1766, 1766, 1774, 1775, 1776, 1781, 1782, 1783, 1784,
6389 1785, 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793, 1794,
6390 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803, 1804,
6391 1805, 1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813, 1814,
6392 1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824,
6393 1831, 1831, 1845, 1845, 1854, 1855, 1858, 1859, 1860, 1867,
6394 1867, 1882, 1882, 1896, 1897, 1900, 1901, 1902, 1907, 1908,
6395 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916, 1919, 1921,
6396 1927, 1929, 1929, 1938, 1938, 1947, 1947, 1956, 1958, 1958,
6397 1967, 1977, 1977, 1990, 1991, 1996, 1997, 1998, 2005, 2005,
6398 2017, 2017, 2029, 2030, 2035, 2036, 2037, 2044, 2045, 2046,
6399 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2056, 2058, 2058,
6400 2067, 2069, 2071, 2077, 2083, 2092, 2092, 2105, 2106, 2109,
6401 2110, 2111, 2116, 2116, 2126, 2126, 2136, 2137, 2138, 2143,
6402 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2153, 2153, 2162,
6403 2168, 2168, 2193, 2193, 2223, 2223, 2234, 2235, 2238, 2239,
6404 2240, 2245, 2245, 2254, 2254, 2263, 2264, 2267, 2268, 2269,
6405 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284,
6406 2285, 2286, 2287, 2288, 2289, 2292, 2292, 2301, 2301, 2310,
6407 2310, 2319, 2319, 2328, 2328, 2339, 2339, 2348, 2348, 2357,
6408 2357, 2366, 2366, 2375, 2375, 2384, 2384, 2393, 2393, 2407,
6409 2407, 2418, 2419, 2425, 2425, 2436, 2437, 2438, 2443, 2443,
6410 2453, 2454, 2457, 2458, 2459, 2464, 2465, 2466, 2467, 2468,
6411 2469, 2470, 2471, 2472, 2473, 2474, 2475, 2476, 2477, 2478,
6412 2479, 2482, 2484, 2484, 2493, 2493, 2502, 2510, 2518, 2518,
6413 2529, 2530, 2531, 2536, 2537, 2538, 2539, 2540, 2543, 2543,
6414 2552, 2552, 2564, 2564, 2577, 2578, 2579, 2584, 2585, 2586,
6415 2587, 2588, 2589, 2592, 2598, 2598, 2607, 2613, 2613, 2623,
6416 2623, 2636, 2636, 2646, 2647, 2648, 2653, 2654, 2655, 2656,
6417 2657, 2658, 2659, 2660, 2661, 2662, 2663, 2664, 2665, 2666,
6418 2667, 2668, 2669, 2670, 2673, 2679, 2679, 2688, 2694, 2694,
6419 2703, 2709, 2715, 2715, 2724, 2725, 2728, 2728, 2738, 2738,
6420 2748, 2755, 2762, 2762, 2771, 2771, 2781, 2781, 2791, 2791,
6421 2803, 2803, 2815, 2815, 2825, 2826, 2827, 2833, 2834, 2837,
6422 2837, 2848, 2856, 2856, 2869, 2870, 2871, 2877, 2877, 2885,
6423 2886, 2887, 2892, 2893, 2894, 2895, 2896, 2897, 2898, 2901,
6424 2907, 2907, 2916, 2916, 2927, 2928, 2929, 2934, 2934, 2942,
6425 2943, 2944, 2949, 2950, 2951, 2952, 2953, 2956, 2956, 2965,
6426 2971, 2977, 2983, 2983, 2992, 2992, 3003, 3004, 3005, 3010,
6427 3011, 3012, 3013, 3014, 3017, 3023, 3029, 3035
6431 Dhcp4Parser::yy_stack_print_ ()
const
6433 *yycdebug_ <<
"Stack now";
6434 for (stack_type::const_iterator
6435 i = yystack_.begin (),
6436 i_end = yystack_.end ();
6438 *yycdebug_ <<
' ' << int (i->state);
6443 Dhcp4Parser::yy_reduce_print_ (
int yyrule)
const
6445 int yylno = yyrline_[yyrule];
6446 int yynrhs = yyr2_[yyrule];
6448 *yycdebug_ <<
"Reducing stack by rule " << yyrule - 1
6449 <<
" (line " << yylno <<
"):\n";
6451 for (
int yyi = 0; yyi < yynrhs; yyi++)
6453 yystack_[(yynrhs) - (yyi + 1)]);
6458#line 14 "dhcp4_parser.yy"
6460#line 6461 "dhcp4_parser.cc"
6462#line 3041 "dhcp4_parser.yy"
6467 const std::string& what)
6469 ctx.error(loc, what);
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YY_REDUCE_PRINT(Rule)
#define YY_SYMBOL_PRINT(Title, Symbol)
#define YY_CAST(Type, Val)
#define YY_MOVE_REF(Type)
Notes: IntElement type is changed to int64_t.
symbol_kind_type token() const YY_NOEXCEPT
context(const Dhcp4Parser &yyparser, const symbol_type &yyla)
const symbol_type & lookahead() const YY_NOEXCEPT
int expected_tokens(symbol_kind_type yyarg[], int yyargn) const
Put in YYARG at most YYARGN of the expected tokens, and return the number of tokens stored in YYARG.
Present a slice of the top of a stack.
virtual void error(const location_type &loc, const std::string &msg)
Report a syntax error.
virtual int parse()
Parse.
location location_type
Symbol locations.
symbol_kind::symbol_kind_type symbol_kind_type
(Internal) symbol kind.
static const symbol_kind_type YYNTOKENS
The number of tokens.
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.
Evaluation context, an interface to the expression evaluation.
void require(const std::string &name, isc::data::Element::Position open_loc, isc::data::Element::Position close_loc)
Check if a required parameter is present.
isc::data::Element::Position loc2pos(isc::dhcp::location &loc)
Converts bison's position to one understandable by isc::data::Element.
void leave()
Leave a syntactic context.
void unique(const std::string &name, isc::data::Element::Position loc)
Check if a parameter is already present.
void enter(const ParserContext &ctx)
Enter a new syntactic context.
void warning(const isc::dhcp::location &loc, const std::string &what)
Warning handler.
void warnAboutExtraCommas(const isc::dhcp::location &loc)
Warning for extra commas.
const std::string contextName()
Get the syntactic context name.
@ SUBNET4
Used while parsing Dhcp4/Subnet4 structures.
@ DATABASE_TYPE
Used while parsing Dhcp4/*-database/type.
@ POOLS
Used while parsing Dhcp4/subnet4/pools structures.
@ CLIENT_CLASSES
Used while parsing Dhcp4/client-classes structures.
@ RESERVATIONS
Used while parsing Dhcp4/reservations structures.
@ HOSTS_DATABASE
Used while parsing Dhcp4/hosts-database[s] structures.
@ NCR_PROTOCOL
Used while parsing Dhcp4/dhcp-ddns/ncr-protocol.
@ LOGGERS
Used while parsing Dhcp4/loggers structures.
@ DATABASE_ON_FAIL
Used while parsing Dhcp4/*-database/on-fail.
@ NCR_FORMAT
Used while parsing Dhcp4/dhcp-ddns/ncr-format.
@ DDNS_CONFLICT_RESOLUTION_MODE
Used while parsing Dhcp4/ib-ddns-conflict-resolution-mode.
@ COMPATIBILITY
Used while parsing compatibility parameters.
@ OUTBOUND_INTERFACE
Used while parsing Dhcp4/interfaces/outbound-interface structures.
@ CONFIG
Used while parsing content of Dhcp4.
@ OUTPUT_OPTIONS
Used while parsing Dhcp4/loggers/output-options structures.
@ RESERVATION_MODE
Used while parsing Dhcp4/reservation-mode.
@ CONTROL_SOCKET
Used while parsing Dhcp4/control-socket structures.
@ DHCP_DDNS
Used while parsing Dhcp4/dhcp-ddns.
@ OPTION_DATA
Used while parsing Dhcp4/option-data, Dhcp4/subnet4/option-data or anywhere option-data is present (c...
@ DHCP_MULTI_THREADING
Used while parsing Dhcp4/multi-threading structures.
@ LEASE_DATABASE
Used while parsing Dhcp4/lease-database structures.
@ SHARED_NETWORK
Used while parsing shared-networks structures.
@ EXPIRED_LEASES_PROCESSING
Used while parsing Dhcp4/expired-leases-processing.
@ SANITY_CHECKS
Sanity checks.
@ CONFIG_CONTROL
Used while parsing Dhcp4/config-control.
@ INTERFACES_CONFIG
Used while parsing Dhcp4/interfaces structures.
@ HOST_RESERVATION_IDENTIFIERS
Used while parsing Dhcp4/host-reservation-identifiers.
@ OPTION_DEF
Used while parsing Dhcp4/option-def structures.
@ CONFIG_DATABASE
Used while parsing config-control/config-databases.
@ NO_KEYWORD
This one is used in pure JSON mode.
@ HOOKS_LIBRARIES
Used while parsing Dhcp4/hooks-libraries.
@ DHCP_QUEUE_CONTROL
Used while parsing Dhcp4/dhcp-queue-control structures.
@ REPLACE_CLIENT_NAME
Used while parsing Dhcp4/dhcp-ddns/replace-client-name.
@ RELAY
Used while parsing Dhcp4/subnet4relay structures.
@ DHCP_SOCKET_TYPE
Used while parsing Dhcp4/interfaces/dhcp-socket-type structures.
std::vector< isc::data::ElementPtr > stack_
JSON elements being parsed.
ParserContext ctx_
Current syntactic context.
Define the isc::dhcp::parser class.
void merge(ElementPtr element, ConstElementPtr other)
Merges the data from other into element.
boost::shared_ptr< const Element > ConstElementPtr
boost::shared_ptr< Element > ElementPtr
Defines the logger used by the top-level component of kea-lfc.
location_type location
The location.
bool empty() const YY_NOEXCEPT
Whether empty.
void move(basic_symbol &s)
Destructive move, s is emptied into this.
void clear() YY_NOEXCEPT
Destroy contents, and record that is empty.
@ S_ddns_conflict_resolution_mode_value
@ S_ddns_replace_client_name_value
@ S_outbound_interface_value
"External" symbols: returned by the scanner.
Syntax errors thrown from user actions.
~syntax_error() YY_NOEXCEPT YY_NOTHROW