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 315 "dhcp4_parser.yy"
415 { yyoutput << yysym.value.template as < std::string > (); }
416#line 417 "dhcp4_parser.cc"
420#line 315 "dhcp4_parser.yy"
421 { yyoutput << yysym.value.template as < int64_t > (); }
422#line 423 "dhcp4_parser.cc"
426#line 315 "dhcp4_parser.yy"
427 { yyoutput << yysym.value.template as < double > (); }
428#line 429 "dhcp4_parser.cc"
432#line 315 "dhcp4_parser.yy"
433 { yyoutput << yysym.value.template as < bool > (); }
434#line 435 "dhcp4_parser.cc"
438#line 315 "dhcp4_parser.yy"
439 { yyoutput << yysym.value.template as < ElementPtr > (); }
440#line 441 "dhcp4_parser.cc"
444#line 315 "dhcp4_parser.yy"
445 { yyoutput << yysym.value.template as < ElementPtr > (); }
446#line 447 "dhcp4_parser.cc"
450#line 315 "dhcp4_parser.yy"
451 { yyoutput << yysym.value.template as < ElementPtr > (); }
452#line 453 "dhcp4_parser.cc"
456#line 315 "dhcp4_parser.yy"
457 { yyoutput << yysym.value.template as < ElementPtr > (); }
458#line 459 "dhcp4_parser.cc"
462#line 315 "dhcp4_parser.yy"
463 { yyoutput << yysym.value.template as < ElementPtr > (); }
464#line 465 "dhcp4_parser.cc"
468#line 315 "dhcp4_parser.yy"
469 { yyoutput << yysym.value.template as < ElementPtr > (); }
470#line 471 "dhcp4_parser.cc"
474#line 315 "dhcp4_parser.yy"
475 { yyoutput << yysym.value.template as < ElementPtr > (); }
476#line 477 "dhcp4_parser.cc"
480#line 315 "dhcp4_parser.yy"
481 { yyoutput << yysym.value.template as < ElementPtr > (); }
482#line 483 "dhcp4_parser.cc"
486#line 315 "dhcp4_parser.yy"
487 { yyoutput << yysym.value.template as < ElementPtr > (); }
488#line 489 "dhcp4_parser.cc"
492#line 315 "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 324 "dhcp4_parser.yy"
776#line 777 "dhcp4_parser.cc"
780#line 325 "dhcp4_parser.yy"
782#line 783 "dhcp4_parser.cc"
786#line 326 "dhcp4_parser.yy"
788#line 789 "dhcp4_parser.cc"
792#line 327 "dhcp4_parser.yy"
794#line 795 "dhcp4_parser.cc"
798#line 328 "dhcp4_parser.yy"
800#line 801 "dhcp4_parser.cc"
804#line 329 "dhcp4_parser.yy"
806#line 807 "dhcp4_parser.cc"
810#line 330 "dhcp4_parser.yy"
812#line 813 "dhcp4_parser.cc"
816#line 331 "dhcp4_parser.yy"
818#line 819 "dhcp4_parser.cc"
822#line 332 "dhcp4_parser.yy"
824#line 825 "dhcp4_parser.cc"
828#line 333 "dhcp4_parser.yy"
830#line 831 "dhcp4_parser.cc"
834#line 334 "dhcp4_parser.yy"
836#line 837 "dhcp4_parser.cc"
840#line 335 "dhcp4_parser.yy"
842#line 843 "dhcp4_parser.cc"
846#line 336 "dhcp4_parser.yy"
848#line 849 "dhcp4_parser.cc"
852#line 344 "dhcp4_parser.yy"
854#line 855 "dhcp4_parser.cc"
858#line 345 "dhcp4_parser.yy"
860#line 861 "dhcp4_parser.cc"
864#line 346 "dhcp4_parser.yy"
866#line 867 "dhcp4_parser.cc"
870#line 347 "dhcp4_parser.yy"
872#line 873 "dhcp4_parser.cc"
876#line 348 "dhcp4_parser.yy"
878#line 879 "dhcp4_parser.cc"
882#line 349 "dhcp4_parser.yy"
884#line 885 "dhcp4_parser.cc"
888#line 350 "dhcp4_parser.yy"
890#line 891 "dhcp4_parser.cc"
894#line 353 "dhcp4_parser.yy"
899#line 900 "dhcp4_parser.cc"
903#line 358 "dhcp4_parser.yy"
910#line 911 "dhcp4_parser.cc"
914#line 363 "dhcp4_parser.yy"
920#line 921 "dhcp4_parser.cc"
924#line 369 "dhcp4_parser.yy"
926#line 927 "dhcp4_parser.cc"
930#line 376 "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 381 "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 387 "dhcp4_parser.yy"
955#line 956 "dhcp4_parser.cc"
959#line 392 "dhcp4_parser.yy"
964#line 965 "dhcp4_parser.cc"
968#line 395 "dhcp4_parser.yy"
972#line 973 "dhcp4_parser.cc"
976#line 403 "dhcp4_parser.yy"
981#line 982 "dhcp4_parser.cc"
985#line 407 "dhcp4_parser.yy"
990#line 991 "dhcp4_parser.cc"
994#line 411 "dhcp4_parser.yy"
998#line 999 "dhcp4_parser.cc"
1002#line 417 "dhcp4_parser.yy"
1006#line 1007 "dhcp4_parser.cc"
1010#line 419 "dhcp4_parser.yy"
1015#line 1016 "dhcp4_parser.cc"
1019#line 428 "dhcp4_parser.yy"
1022 ctx.
stack_.back()->add(s);
1024#line 1025 "dhcp4_parser.cc"
1028#line 432 "dhcp4_parser.yy"
1031 ctx.
stack_.back()->add(s);
1033#line 1034 "dhcp4_parser.cc"
1037#line 436 "dhcp4_parser.yy"
1041#line 1042 "dhcp4_parser.cc"
1045#line 446 "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 455 "dhcp4_parser.yy"
1063#line 1064 "dhcp4_parser.cc"
1067#line 460 "dhcp4_parser.yy"
1076#line 1077 "dhcp4_parser.cc"
1080#line 470 "dhcp4_parser.yy"
1087 ctx.
stack_.back()->set(
"Dhcp4", m);
1091#line 1092 "dhcp4_parser.cc"
1095#line 479 "dhcp4_parser.yy"
1101#line 1102 "dhcp4_parser.cc"
1105#line 487 "dhcp4_parser.yy"
1109#line 1110 "dhcp4_parser.cc"
1113#line 493 "dhcp4_parser.yy"
1119#line 1120 "dhcp4_parser.cc"
1123#line 497 "dhcp4_parser.yy"
1128#line 1129 "dhcp4_parser.cc"
1132#line 504 "dhcp4_parser.yy"
1136#line 1137 "dhcp4_parser.cc"
1140#line 582 "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 588 "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 594 "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 600 "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 606 "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 612 "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 618 "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 624 "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 630 "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 636 "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 642 "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 648 "dhcp4_parser.yy"
1252 ctx.
unique(
"server-tag", ctx.
loc2pos(yystack_[0].location));
1255#line 1256 "dhcp4_parser.cc"
1259#line 651 "dhcp4_parser.yy"
1262 ctx.
stack_.back()->set(
"server-tag", stag);
1265#line 1266 "dhcp4_parser.cc"
1269#line 657 "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 663 "dhcp4_parser.yy"
1284#line 1285 "dhcp4_parser.cc"
1288#line 666 "dhcp4_parser.yy"
1291 ctx.
stack_.back()->set(
"allocator", al);
1294#line 1295 "dhcp4_parser.cc"
1298#line 672 "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 678 "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 684 "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 690 "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 696 "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 702 "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 708 "dhcp4_parser.yy"
1361 ctx.
unique(
"ddns-replace-client-name", ctx.
loc2pos(yystack_[0].location));
1363#line 1364 "dhcp4_parser.cc"
1367#line 711 "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 717 "dhcp4_parser.yy"
1380#line 1381 "dhcp4_parser.cc"
1384#line 720 "dhcp4_parser.yy"
1388#line 1389 "dhcp4_parser.cc"
1392#line 723 "dhcp4_parser.yy"
1396#line 1397 "dhcp4_parser.cc"
1400#line 726 "dhcp4_parser.yy"
1404#line 1405 "dhcp4_parser.cc"
1408#line 729 "dhcp4_parser.yy"
1410 error(yystack_[0].location,
"boolean values for the ddns-replace-client-name are "
1411 "no longer supported");
1413#line 1414 "dhcp4_parser.cc"
1417#line 735 "dhcp4_parser.yy"
1419 ctx.
unique(
"ddns-generated-prefix", ctx.
loc2pos(yystack_[0].location));
1422#line 1423 "dhcp4_parser.cc"
1426#line 738 "dhcp4_parser.yy"
1429 ctx.
stack_.back()->set(
"ddns-generated-prefix", s);
1432#line 1433 "dhcp4_parser.cc"
1436#line 744 "dhcp4_parser.yy"
1438 ctx.
unique(
"ddns-qualifying-suffix", ctx.
loc2pos(yystack_[0].location));
1441#line 1442 "dhcp4_parser.cc"
1445#line 747 "dhcp4_parser.yy"
1448 ctx.
stack_.back()->set(
"ddns-qualifying-suffix", s);
1451#line 1452 "dhcp4_parser.cc"
1455#line 753 "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 762 "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 772 "dhcp4_parser.yy"
1481 ctx.
unique(
"ddns-conflict-resolution-mode", ctx.
loc2pos(yystack_[0].location));
1484#line 1485 "dhcp4_parser.cc"
1488#line 775 "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 781 "dhcp4_parser.yy"
1501#line 1502 "dhcp4_parser.cc"
1505#line 784 "dhcp4_parser.yy"
1509#line 1510 "dhcp4_parser.cc"
1513#line 787 "dhcp4_parser.yy"
1517#line 1518 "dhcp4_parser.cc"
1521#line 790 "dhcp4_parser.yy"
1525#line 1526 "dhcp4_parser.cc"
1529#line 795 "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 801 "dhcp4_parser.yy"
1541 ctx.
unique(
"hostname-char-set", ctx.
loc2pos(yystack_[0].location));
1544#line 1545 "dhcp4_parser.cc"
1548#line 804 "dhcp4_parser.yy"
1551 ctx.
stack_.back()->set(
"hostname-char-set", s);
1554#line 1555 "dhcp4_parser.cc"
1558#line 810 "dhcp4_parser.yy"
1560 ctx.
unique(
"hostname-char-replacement", ctx.
loc2pos(yystack_[0].location));
1563#line 1564 "dhcp4_parser.cc"
1567#line 813 "dhcp4_parser.yy"
1570 ctx.
stack_.back()->set(
"hostname-char-replacement", s);
1573#line 1574 "dhcp4_parser.cc"
1577#line 819 "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 825 "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 831 "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 837 "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 843 "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 849 "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 855 "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 861 "dhcp4_parser.yy"
1649 ctx.
unique(
"stash-agent-options", ctx.
loc2pos(yystack_[2].location));
1651 ctx.
stack_.back()->set(
"stash-agent-options", stash);
1653#line 1654 "dhcp4_parser.cc"
1657#line 867 "dhcp4_parser.yy"
1659 ctx.
unique(
"interfaces-config", ctx.
loc2pos(yystack_[0].location));
1661 ctx.
stack_.back()->set(
"interfaces-config", i);
1665#line 1666 "dhcp4_parser.cc"
1669#line 873 "dhcp4_parser.yy"
1675#line 1676 "dhcp4_parser.cc"
1679#line 881 "dhcp4_parser.yy"
1683#line 1684 "dhcp4_parser.cc"
1687#line 898 "dhcp4_parser.yy"
1693#line 1694 "dhcp4_parser.cc"
1697#line 902 "dhcp4_parser.yy"
1702#line 1703 "dhcp4_parser.cc"
1706#line 907 "dhcp4_parser.yy"
1708 ctx.
unique(
"interfaces", ctx.
loc2pos(yystack_[0].location));
1710 ctx.
stack_.back()->set(
"interfaces", l);
1714#line 1715 "dhcp4_parser.cc"
1718#line 913 "dhcp4_parser.yy"
1723#line 1724 "dhcp4_parser.cc"
1727#line 918 "dhcp4_parser.yy"
1729 ctx.
unique(
"dhcp-socket-type", ctx.
loc2pos(yystack_[0].location));
1732#line 1733 "dhcp4_parser.cc"
1736#line 921 "dhcp4_parser.yy"
1738 ctx.
stack_.back()->set(
"dhcp-socket-type", yystack_[0].value.as <
ElementPtr > ());
1741#line 1742 "dhcp4_parser.cc"
1745#line 926 "dhcp4_parser.yy"
1747#line 1748 "dhcp4_parser.cc"
1751#line 927 "dhcp4_parser.yy"
1753#line 1754 "dhcp4_parser.cc"
1757#line 930 "dhcp4_parser.yy"
1759 ctx.
unique(
"outbound-interface", ctx.
loc2pos(yystack_[0].location));
1762#line 1763 "dhcp4_parser.cc"
1766#line 933 "dhcp4_parser.yy"
1768 ctx.
stack_.back()->set(
"outbound-interface", yystack_[0].value.as <
ElementPtr > ());
1771#line 1772 "dhcp4_parser.cc"
1775#line 938 "dhcp4_parser.yy"
1779#line 1780 "dhcp4_parser.cc"
1783#line 940 "dhcp4_parser.yy"
1787#line 1788 "dhcp4_parser.cc"
1791#line 944 "dhcp4_parser.yy"
1795 ctx.
stack_.back()->set(
"re-detect", b);
1797#line 1798 "dhcp4_parser.cc"
1801#line 950 "dhcp4_parser.yy"
1803 ctx.
unique(
"service-sockets-require-all", ctx.
loc2pos(yystack_[2].location));
1805 ctx.
stack_.back()->set(
"service-sockets-require-all", b);
1807#line 1808 "dhcp4_parser.cc"
1811#line 956 "dhcp4_parser.yy"
1813 ctx.
unique(
"service-sockets-retry-wait-time", ctx.
loc2pos(yystack_[2].location));
1815 ctx.
stack_.back()->set(
"service-sockets-retry-wait-time", n);
1817#line 1818 "dhcp4_parser.cc"
1821#line 962 "dhcp4_parser.yy"
1823 ctx.
unique(
"service-sockets-max-retries", ctx.
loc2pos(yystack_[2].location));
1825 ctx.
stack_.back()->set(
"service-sockets-max-retries", n);
1827#line 1828 "dhcp4_parser.cc"
1831#line 968 "dhcp4_parser.yy"
1833 ctx.
unique(
"lease-database", ctx.
loc2pos(yystack_[0].location));
1835 ctx.
stack_.back()->set(
"lease-database", i);
1839#line 1840 "dhcp4_parser.cc"
1843#line 974 "dhcp4_parser.yy"
1850#line 1851 "dhcp4_parser.cc"
1854#line 981 "dhcp4_parser.yy"
1856 ctx.
unique(
"sanity-checks", ctx.
loc2pos(yystack_[0].location));
1858 ctx.
stack_.back()->set(
"sanity-checks", m);
1862#line 1863 "dhcp4_parser.cc"
1866#line 987 "dhcp4_parser.yy"
1871#line 1872 "dhcp4_parser.cc"
1875#line 994 "dhcp4_parser.yy"
1879#line 1880 "dhcp4_parser.cc"
1883#line 1003 "dhcp4_parser.yy"
1885 ctx.
unique(
"lease-checks", ctx.
loc2pos(yystack_[0].location));
1888#line 1889 "dhcp4_parser.cc"
1892#line 1006 "dhcp4_parser.yy"
1895 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
1896 (
string(yystack_[0].value.as < std::string > ()) ==
"warn") ||
1897 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
1898 (
string(yystack_[0].value.as < std::string > ()) ==
"fix-del") ||
1899 (
string(yystack_[0].value.as < std::string > ()) ==
"del")) {
1901 ctx.
stack_.back()->set(
"lease-checks", user);
1904 error(yystack_[0].location,
"Unsupported 'lease-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
1905 ", supported values are: none, warn, fix, fix-del, del");
1908#line 1909 "dhcp4_parser.cc"
1912#line 1022 "dhcp4_parser.yy"
1914 ctx.
unique(
"extended-info-checks", ctx.
loc2pos(yystack_[0].location));
1917#line 1918 "dhcp4_parser.cc"
1921#line 1025 "dhcp4_parser.yy"
1924 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
1925 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
1926 (
string(yystack_[0].value.as < std::string > ()) ==
"strict") ||
1927 (
string(yystack_[0].value.as < std::string > ()) ==
"pedantic")) {
1929 ctx.
stack_.back()->set(
"extended-info-checks", user);
1932 error(yystack_[0].location,
"Unsupported 'extended-info-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
1933 ", supported values are: none, fix, strict, pedantic");
1936#line 1937 "dhcp4_parser.cc"
1940#line 1040 "dhcp4_parser.yy"
1942 ctx.
unique(
"hosts-database", ctx.
loc2pos(yystack_[0].location));
1944 ctx.
stack_.back()->set(
"hosts-database", i);
1948#line 1949 "dhcp4_parser.cc"
1952#line 1046 "dhcp4_parser.yy"
1959#line 1960 "dhcp4_parser.cc"
1963#line 1053 "dhcp4_parser.yy"
1965 ctx.
unique(
"hosts-databases", ctx.
loc2pos(yystack_[0].location));
1967 ctx.
stack_.back()->set(
"hosts-databases", l);
1971#line 1972 "dhcp4_parser.cc"
1975#line 1059 "dhcp4_parser.yy"
1980#line 1981 "dhcp4_parser.cc"
1984#line 1070 "dhcp4_parser.yy"
1988#line 1989 "dhcp4_parser.cc"
1992#line 1075 "dhcp4_parser.yy"
1995 ctx.
stack_.back()->add(m);
1998#line 1999 "dhcp4_parser.cc"
2002#line 1079 "dhcp4_parser.yy"
2008#line 2009 "dhcp4_parser.cc"
2012#line 1087 "dhcp4_parser.yy"
2016#line 2017 "dhcp4_parser.cc"
2020#line 1117 "dhcp4_parser.yy"
2025#line 2026 "dhcp4_parser.cc"
2029#line 1120 "dhcp4_parser.yy"
2032 ctx.
stack_.back()->set(
"type", db_type);
2035#line 2036 "dhcp4_parser.cc"
2039#line 1126 "dhcp4_parser.yy"
2044#line 2045 "dhcp4_parser.cc"
2048#line 1129 "dhcp4_parser.yy"
2051 ctx.
stack_.back()->set(
"user", user);
2054#line 2055 "dhcp4_parser.cc"
2058#line 1135 "dhcp4_parser.yy"
2063#line 2064 "dhcp4_parser.cc"
2067#line 1138 "dhcp4_parser.yy"
2070 ctx.
stack_.back()->set(
"password", pwd);
2073#line 2074 "dhcp4_parser.cc"
2077#line 1144 "dhcp4_parser.yy"
2082#line 2083 "dhcp4_parser.cc"
2086#line 1147 "dhcp4_parser.yy"
2089 ctx.
stack_.back()->set(
"host", h);
2092#line 2093 "dhcp4_parser.cc"
2096#line 1153 "dhcp4_parser.yy"
2100 ctx.
stack_.back()->set(
"port", p);
2102#line 2103 "dhcp4_parser.cc"
2106#line 1159 "dhcp4_parser.yy"
2111#line 2112 "dhcp4_parser.cc"
2115#line 1162 "dhcp4_parser.yy"
2118 ctx.
stack_.back()->set(
"name", name);
2121#line 2122 "dhcp4_parser.cc"
2125#line 1168 "dhcp4_parser.yy"
2129 ctx.
stack_.back()->set(
"persist", n);
2131#line 2132 "dhcp4_parser.cc"
2135#line 1174 "dhcp4_parser.yy"
2137 ctx.
unique(
"lfc-interval", ctx.
loc2pos(yystack_[2].location));
2139 ctx.
stack_.back()->set(
"lfc-interval", n);
2141#line 2142 "dhcp4_parser.cc"
2145#line 1180 "dhcp4_parser.yy"
2149 ctx.
stack_.back()->set(
"readonly", n);
2151#line 2152 "dhcp4_parser.cc"
2155#line 1186 "dhcp4_parser.yy"
2157 ctx.
unique(
"connect-timeout", ctx.
loc2pos(yystack_[2].location));
2159 ctx.
stack_.back()->set(
"connect-timeout", n);
2161#line 2162 "dhcp4_parser.cc"
2165#line 1192 "dhcp4_parser.yy"
2167 ctx.
unique(
"read-timeout", ctx.
loc2pos(yystack_[2].location));
2169 ctx.
stack_.back()->set(
"read-timeout", n);
2171#line 2172 "dhcp4_parser.cc"
2175#line 1198 "dhcp4_parser.yy"
2177 ctx.
unique(
"write-timeout", ctx.
loc2pos(yystack_[2].location));
2179 ctx.
stack_.back()->set(
"write-timeout", n);
2181#line 2182 "dhcp4_parser.cc"
2185#line 1204 "dhcp4_parser.yy"
2187 ctx.
unique(
"tcp-user-timeout", ctx.
loc2pos(yystack_[2].location));
2189 ctx.
stack_.back()->set(
"tcp-user-timeout", n);
2191#line 2192 "dhcp4_parser.cc"
2195#line 1210 "dhcp4_parser.yy"
2197 ctx.
unique(
"max-reconnect-tries", ctx.
loc2pos(yystack_[2].location));
2199 ctx.
stack_.back()->set(
"max-reconnect-tries", n);
2201#line 2202 "dhcp4_parser.cc"
2205#line 1216 "dhcp4_parser.yy"
2207 ctx.
unique(
"reconnect-wait-time", ctx.
loc2pos(yystack_[2].location));
2209 ctx.
stack_.back()->set(
"reconnect-wait-time", n);
2211#line 2212 "dhcp4_parser.cc"
2215#line 1222 "dhcp4_parser.yy"
2220#line 2221 "dhcp4_parser.cc"
2224#line 1225 "dhcp4_parser.yy"
2229#line 2230 "dhcp4_parser.cc"
2233#line 1230 "dhcp4_parser.yy"
2235#line 2236 "dhcp4_parser.cc"
2239#line 1231 "dhcp4_parser.yy"
2241#line 2242 "dhcp4_parser.cc"
2245#line 1232 "dhcp4_parser.yy"
2247#line 2248 "dhcp4_parser.cc"
2251#line 1235 "dhcp4_parser.yy"
2253 ctx.
unique(
"retry-on-startup", ctx.
loc2pos(yystack_[2].location));
2255 ctx.
stack_.back()->set(
"retry-on-startup", n);
2257#line 2258 "dhcp4_parser.cc"
2261#line 1241 "dhcp4_parser.yy"
2263 ctx.
unique(
"max-row-errors", ctx.
loc2pos(yystack_[2].location));
2265 ctx.
stack_.back()->set(
"max-row-errors", n);
2267#line 2268 "dhcp4_parser.cc"
2271#line 1247 "dhcp4_parser.yy"
2273 ctx.
unique(
"trust-anchor", ctx.
loc2pos(yystack_[0].location));
2276#line 2277 "dhcp4_parser.cc"
2280#line 1250 "dhcp4_parser.yy"
2283 ctx.
stack_.back()->set(
"trust-anchor", ca);
2286#line 2287 "dhcp4_parser.cc"
2290#line 1256 "dhcp4_parser.yy"
2295#line 2296 "dhcp4_parser.cc"
2299#line 1259 "dhcp4_parser.yy"
2302 ctx.
stack_.back()->set(
"cert-file", cert);
2305#line 2306 "dhcp4_parser.cc"
2309#line 1265 "dhcp4_parser.yy"
2314#line 2315 "dhcp4_parser.cc"
2318#line 1268 "dhcp4_parser.yy"
2321 ctx.
stack_.back()->set(
"key-file", key);
2324#line 2325 "dhcp4_parser.cc"
2328#line 1274 "dhcp4_parser.yy"
2330 ctx.
unique(
"cipher-list", ctx.
loc2pos(yystack_[0].location));
2333#line 2334 "dhcp4_parser.cc"
2337#line 1277 "dhcp4_parser.yy"
2340 ctx.
stack_.back()->set(
"cipher-list", cl);
2343#line 2344 "dhcp4_parser.cc"
2347#line 1283 "dhcp4_parser.yy"
2349 ctx.
unique(
"host-reservation-identifiers", ctx.
loc2pos(yystack_[0].location));
2351 ctx.
stack_.back()->set(
"host-reservation-identifiers", l);
2355#line 2356 "dhcp4_parser.cc"
2359#line 1289 "dhcp4_parser.yy"
2364#line 2365 "dhcp4_parser.cc"
2368#line 1296 "dhcp4_parser.yy"
2372#line 2373 "dhcp4_parser.cc"
2376#line 1308 "dhcp4_parser.yy"
2379 ctx.
stack_.back()->add(duid);
2381#line 2382 "dhcp4_parser.cc"
2385#line 1313 "dhcp4_parser.yy"
2388 ctx.
stack_.back()->add(hwaddr);
2390#line 2391 "dhcp4_parser.cc"
2394#line 1318 "dhcp4_parser.yy"
2397 ctx.
stack_.back()->add(circuit);
2399#line 2400 "dhcp4_parser.cc"
2403#line 1323 "dhcp4_parser.yy"
2406 ctx.
stack_.back()->add(client);
2408#line 2409 "dhcp4_parser.cc"
2412#line 1328 "dhcp4_parser.yy"
2415 ctx.
stack_.back()->add(flex_id);
2417#line 2418 "dhcp4_parser.cc"
2421#line 1335 "dhcp4_parser.yy"
2423 ctx.
unique(
"multi-threading", ctx.
loc2pos(yystack_[0].location));
2425 ctx.
stack_.back()->set(
"multi-threading", mt);
2426 ctx.
stack_.push_back(mt);
2429#line 2430 "dhcp4_parser.cc"
2433#line 1341 "dhcp4_parser.yy"
2436 ctx.
require(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
2440#line 2441 "dhcp4_parser.cc"
2444#line 1350 "dhcp4_parser.yy"
2448#line 2449 "dhcp4_parser.cc"
2452#line 1363 "dhcp4_parser.yy"
2454 ctx.
unique(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location));
2456 ctx.
stack_.back()->set(
"enable-multi-threading", b);
2458#line 2459 "dhcp4_parser.cc"
2462#line 1369 "dhcp4_parser.yy"
2464 ctx.
unique(
"thread-pool-size", ctx.
loc2pos(yystack_[2].location));
2466 ctx.
stack_.back()->set(
"thread-pool-size", prf);
2468#line 2469 "dhcp4_parser.cc"
2472#line 1375 "dhcp4_parser.yy"
2474 ctx.
unique(
"packet-queue-size", ctx.
loc2pos(yystack_[2].location));
2476 ctx.
stack_.back()->set(
"packet-queue-size", prf);
2478#line 2479 "dhcp4_parser.cc"
2482#line 1381 "dhcp4_parser.yy"
2484 ctx.
unique(
"hooks-libraries", ctx.
loc2pos(yystack_[0].location));
2486 ctx.
stack_.back()->set(
"hooks-libraries", l);
2490#line 2491 "dhcp4_parser.cc"
2494#line 1387 "dhcp4_parser.yy"
2499#line 2500 "dhcp4_parser.cc"
2503#line 1398 "dhcp4_parser.yy"
2507#line 2508 "dhcp4_parser.cc"
2511#line 1403 "dhcp4_parser.yy"
2514 ctx.
stack_.back()->add(m);
2517#line 2518 "dhcp4_parser.cc"
2521#line 1407 "dhcp4_parser.yy"
2527#line 2528 "dhcp4_parser.cc"
2531#line 1413 "dhcp4_parser.yy"
2537#line 2538 "dhcp4_parser.cc"
2541#line 1417 "dhcp4_parser.yy"
2547#line 2548 "dhcp4_parser.cc"
2551#line 1425 "dhcp4_parser.yy"
2555#line 2556 "dhcp4_parser.cc"
2559#line 1435 "dhcp4_parser.yy"
2564#line 2565 "dhcp4_parser.cc"
2568#line 1438 "dhcp4_parser.yy"
2571 ctx.
stack_.back()->set(
"library", lib);
2574#line 2575 "dhcp4_parser.cc"
2578#line 1444 "dhcp4_parser.yy"
2580 ctx.
unique(
"parameters", ctx.
loc2pos(yystack_[0].location));
2583#line 2584 "dhcp4_parser.cc"
2587#line 1447 "dhcp4_parser.yy"
2589 ctx.
stack_.back()->set(
"parameters", yystack_[0].value.as <
ElementPtr > ());
2592#line 2593 "dhcp4_parser.cc"
2596#line 1453 "dhcp4_parser.yy"
2598 ctx.
unique(
"expired-leases-processing", ctx.
loc2pos(yystack_[0].location));
2600 ctx.
stack_.back()->set(
"expired-leases-processing", m);
2604#line 2605 "dhcp4_parser.cc"
2608#line 1459 "dhcp4_parser.yy"
2614#line 2615 "dhcp4_parser.cc"
2618#line 1467 "dhcp4_parser.yy"
2622#line 2623 "dhcp4_parser.cc"
2626#line 1480 "dhcp4_parser.yy"
2628 ctx.
unique(
"reclaim-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2630 ctx.
stack_.back()->set(
"reclaim-timer-wait-time", value);
2632#line 2633 "dhcp4_parser.cc"
2636#line 1486 "dhcp4_parser.yy"
2638 ctx.
unique(
"flush-reclaimed-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2640 ctx.
stack_.back()->set(
"flush-reclaimed-timer-wait-time", value);
2642#line 2643 "dhcp4_parser.cc"
2646#line 1492 "dhcp4_parser.yy"
2648 ctx.
unique(
"hold-reclaimed-time", ctx.
loc2pos(yystack_[2].location));
2650 ctx.
stack_.back()->set(
"hold-reclaimed-time", value);
2652#line 2653 "dhcp4_parser.cc"
2656#line 1498 "dhcp4_parser.yy"
2658 ctx.
unique(
"max-reclaim-leases", ctx.
loc2pos(yystack_[2].location));
2660 ctx.
stack_.back()->set(
"max-reclaim-leases", value);
2662#line 2663 "dhcp4_parser.cc"
2666#line 1504 "dhcp4_parser.yy"
2668 ctx.
unique(
"max-reclaim-time", ctx.
loc2pos(yystack_[2].location));
2670 ctx.
stack_.back()->set(
"max-reclaim-time", value);
2672#line 2673 "dhcp4_parser.cc"
2676#line 1510 "dhcp4_parser.yy"
2678 ctx.
unique(
"unwarned-reclaim-cycles", ctx.
loc2pos(yystack_[2].location));
2680 ctx.
stack_.back()->set(
"unwarned-reclaim-cycles", value);
2682#line 2683 "dhcp4_parser.cc"
2686#line 1519 "dhcp4_parser.yy"
2690 ctx.
stack_.back()->set(
"subnet4", l);
2694#line 2695 "dhcp4_parser.cc"
2698#line 1525 "dhcp4_parser.yy"
2703#line 2704 "dhcp4_parser.cc"
2707#line 1539 "dhcp4_parser.yy"
2711#line 2712 "dhcp4_parser.cc"
2715#line 1548 "dhcp4_parser.yy"
2718 ctx.
stack_.back()->add(m);
2721#line 2722 "dhcp4_parser.cc"
2725#line 1552 "dhcp4_parser.yy"
2747#line 2748 "dhcp4_parser.cc"
2751#line 1574 "dhcp4_parser.yy"
2757#line 2758 "dhcp4_parser.cc"
2761#line 1578 "dhcp4_parser.yy"
2767#line 2768 "dhcp4_parser.cc"
2771#line 1587 "dhcp4_parser.yy"
2775#line 2776 "dhcp4_parser.cc"
2779#line 1644 "dhcp4_parser.yy"
2784#line 2785 "dhcp4_parser.cc"
2788#line 1647 "dhcp4_parser.yy"
2791 ctx.
stack_.back()->set(
"subnet", subnet);
2794#line 2795 "dhcp4_parser.cc"
2798#line 1653 "dhcp4_parser.yy"
2800 ctx.
unique(
"4o6-interface", ctx.
loc2pos(yystack_[0].location));
2803#line 2804 "dhcp4_parser.cc"
2807#line 1656 "dhcp4_parser.yy"
2810 ctx.
stack_.back()->set(
"4o6-interface", iface);
2813#line 2814 "dhcp4_parser.cc"
2817#line 1662 "dhcp4_parser.yy"
2819 ctx.
unique(
"4o6-interface-id", ctx.
loc2pos(yystack_[0].location));
2822#line 2823 "dhcp4_parser.cc"
2826#line 1665 "dhcp4_parser.yy"
2829 ctx.
stack_.back()->set(
"4o6-interface-id", iface);
2832#line 2833 "dhcp4_parser.cc"
2836#line 1671 "dhcp4_parser.yy"
2838 ctx.
unique(
"4o6-subnet", ctx.
loc2pos(yystack_[0].location));
2841#line 2842 "dhcp4_parser.cc"
2845#line 1674 "dhcp4_parser.yy"
2848 ctx.
stack_.back()->set(
"4o6-subnet", iface);
2851#line 2852 "dhcp4_parser.cc"
2855#line 1680 "dhcp4_parser.yy"
2860#line 2861 "dhcp4_parser.cc"
2864#line 1683 "dhcp4_parser.yy"
2867 ctx.
stack_.back()->set(
"interface", iface);
2870#line 2871 "dhcp4_parser.cc"
2874#line 1689 "dhcp4_parser.yy"
2876 ctx.
unique(
"client-class", ctx.
loc2pos(yystack_[0].location));
2879#line 2880 "dhcp4_parser.cc"
2883#line 1692 "dhcp4_parser.yy"
2886 ctx.
stack_.back()->set(
"client-class", cls);
2889#line 2890 "dhcp4_parser.cc"
2893#line 1699 "dhcp4_parser.yy"
2895 ctx.
unique(
"require-client-classes", ctx.
loc2pos(yystack_[0].location));
2897 ctx.
stack_.back()->set(
"require-client-classes", c);
2901#line 2902 "dhcp4_parser.cc"
2905#line 1705 "dhcp4_parser.yy"
2910#line 2911 "dhcp4_parser.cc"
2914#line 1710 "dhcp4_parser.yy"
2916 ctx.
unique(
"evaluate-additional-classes", ctx.
loc2pos(yystack_[0].location));
2918 ctx.
stack_.back()->set(
"evaluate-additional-classes", c);
2922#line 2923 "dhcp4_parser.cc"
2926#line 1716 "dhcp4_parser.yy"
2931#line 2932 "dhcp4_parser.cc"
2935#line 1721 "dhcp4_parser.yy"
2937 ctx.
unique(
"reservations-global", ctx.
loc2pos(yystack_[2].location));
2939 ctx.
stack_.back()->set(
"reservations-global", b);
2941#line 2942 "dhcp4_parser.cc"
2945#line 1727 "dhcp4_parser.yy"
2947 ctx.
unique(
"reservations-in-subnet", ctx.
loc2pos(yystack_[2].location));
2949 ctx.
stack_.back()->set(
"reservations-in-subnet", b);
2951#line 2952 "dhcp4_parser.cc"
2955#line 1733 "dhcp4_parser.yy"
2957 ctx.
unique(
"reservations-out-of-pool", ctx.
loc2pos(yystack_[2].location));
2959 ctx.
stack_.back()->set(
"reservations-out-of-pool", b);
2961#line 2962 "dhcp4_parser.cc"
2965#line 1739 "dhcp4_parser.yy"
2969 ctx.
stack_.back()->set(
"id",
id);
2971#line 2972 "dhcp4_parser.cc"
2975#line 1747 "dhcp4_parser.yy"
2977 ctx.
unique(
"shared-networks", ctx.
loc2pos(yystack_[0].location));
2979 ctx.
stack_.back()->set(
"shared-networks", l);
2983#line 2984 "dhcp4_parser.cc"
2987#line 1753 "dhcp4_parser.yy"
2992#line 2993 "dhcp4_parser.cc"
2996#line 1766 "dhcp4_parser.yy"
3000#line 3001 "dhcp4_parser.cc"
3004#line 1771 "dhcp4_parser.yy"
3007 ctx.
stack_.back()->add(m);
3010#line 3011 "dhcp4_parser.cc"
3014#line 1775 "dhcp4_parser.yy"
3018#line 3019 "dhcp4_parser.cc"
3022#line 1781 "dhcp4_parser.yy"
3026#line 3027 "dhcp4_parser.cc"
3030#line 1836 "dhcp4_parser.yy"
3032 ctx.
unique(
"option-def", ctx.
loc2pos(yystack_[0].location));
3034 ctx.
stack_.back()->set(
"option-def", l);
3038#line 3039 "dhcp4_parser.cc"
3042#line 1842 "dhcp4_parser.yy"
3047#line 3048 "dhcp4_parser.cc"
3051#line 1850 "dhcp4_parser.yy"
3056#line 3057 "dhcp4_parser.cc"
3060#line 1853 "dhcp4_parser.yy"
3064#line 3065 "dhcp4_parser.cc"
3068#line 1865 "dhcp4_parser.yy"
3072#line 3073 "dhcp4_parser.cc"
3076#line 1872 "dhcp4_parser.yy"
3079 ctx.
stack_.back()->add(m);
3082#line 3083 "dhcp4_parser.cc"
3086#line 1876 "dhcp4_parser.yy"
3094#line 3095 "dhcp4_parser.cc"
3098#line 1887 "dhcp4_parser.yy"
3104#line 3105 "dhcp4_parser.cc"
3108#line 1891 "dhcp4_parser.yy"
3116#line 3117 "dhcp4_parser.cc"
3120#line 1907 "dhcp4_parser.yy"
3124#line 3125 "dhcp4_parser.cc"
3128#line 1926 "dhcp4_parser.yy"
3132 ctx.
stack_.back()->set(
"code", code);
3134#line 3135 "dhcp4_parser.cc"
3138#line 1934 "dhcp4_parser.yy"
3143#line 3144 "dhcp4_parser.cc"
3147#line 1937 "dhcp4_parser.yy"
3150 ctx.
stack_.back()->set(
"type", prf);
3153#line 3154 "dhcp4_parser.cc"
3157#line 1943 "dhcp4_parser.yy"
3159 ctx.
unique(
"record-types", ctx.
loc2pos(yystack_[0].location));
3162#line 3163 "dhcp4_parser.cc"
3166#line 1946 "dhcp4_parser.yy"
3169 ctx.
stack_.back()->set(
"record-types", rtypes);
3172#line 3173 "dhcp4_parser.cc"
3176#line 1952 "dhcp4_parser.yy"
3181#line 3182 "dhcp4_parser.cc"
3185#line 1955 "dhcp4_parser.yy"
3188 ctx.
stack_.back()->set(
"space", space);
3191#line 3192 "dhcp4_parser.cc"
3195#line 1963 "dhcp4_parser.yy"
3197 ctx.
unique(
"encapsulate", ctx.
loc2pos(yystack_[0].location));
3200#line 3201 "dhcp4_parser.cc"
3204#line 1966 "dhcp4_parser.yy"
3207 ctx.
stack_.back()->set(
"encapsulate", encap);
3210#line 3211 "dhcp4_parser.cc"
3214#line 1972 "dhcp4_parser.yy"
3218 ctx.
stack_.back()->set(
"array", array);
3220#line 3221 "dhcp4_parser.cc"
3224#line 1982 "dhcp4_parser.yy"
3226 ctx.
unique(
"option-data", ctx.
loc2pos(yystack_[0].location));
3228 ctx.
stack_.back()->set(
"option-data", l);
3232#line 3233 "dhcp4_parser.cc"
3236#line 1988 "dhcp4_parser.yy"
3241#line 3242 "dhcp4_parser.cc"
3245#line 2003 "dhcp4_parser.yy"
3249#line 3250 "dhcp4_parser.cc"
3253#line 2010 "dhcp4_parser.yy"
3256 ctx.
stack_.back()->add(m);
3259#line 3260 "dhcp4_parser.cc"
3263#line 2014 "dhcp4_parser.yy"
3268#line 3269 "dhcp4_parser.cc"
3272#line 2022 "dhcp4_parser.yy"
3278#line 3279 "dhcp4_parser.cc"
3282#line 2026 "dhcp4_parser.yy"
3287#line 3288 "dhcp4_parser.cc"
3291#line 2042 "dhcp4_parser.yy"
3295#line 3296 "dhcp4_parser.cc"
3299#line 2064 "dhcp4_parser.yy"
3304#line 3305 "dhcp4_parser.cc"
3308#line 2067 "dhcp4_parser.yy"
3311 ctx.
stack_.back()->set(
"data", data);
3314#line 3315 "dhcp4_parser.cc"
3318#line 2077 "dhcp4_parser.yy"
3320 ctx.
unique(
"csv-format", ctx.
loc2pos(yystack_[2].location));
3322 ctx.
stack_.back()->set(
"csv-format", csv);
3324#line 3325 "dhcp4_parser.cc"
3328#line 2083 "dhcp4_parser.yy"
3330 ctx.
unique(
"always-send", ctx.
loc2pos(yystack_[2].location));
3332 ctx.
stack_.back()->set(
"always-send", persist);
3334#line 3335 "dhcp4_parser.cc"
3338#line 2089 "dhcp4_parser.yy"
3340 ctx.
unique(
"never-send", ctx.
loc2pos(yystack_[2].location));
3342 ctx.
stack_.back()->set(
"never-send", cancel);
3344#line 3345 "dhcp4_parser.cc"
3348#line 2095 "dhcp4_parser.yy"
3350 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3352 ctx.
stack_.back()->set(
"client-classes", c);
3356#line 3357 "dhcp4_parser.cc"
3360#line 2101 "dhcp4_parser.yy"
3365#line 3366 "dhcp4_parser.cc"
3369#line 2109 "dhcp4_parser.yy"
3373 ctx.
stack_.back()->set(
"pools", l);
3377#line 3378 "dhcp4_parser.cc"
3381#line 2115 "dhcp4_parser.yy"
3386#line 3387 "dhcp4_parser.cc"
3390#line 2128 "dhcp4_parser.yy"
3394#line 3395 "dhcp4_parser.cc"
3398#line 2133 "dhcp4_parser.yy"
3401 ctx.
stack_.back()->add(m);
3404#line 3405 "dhcp4_parser.cc"
3408#line 2137 "dhcp4_parser.yy"
3414#line 3415 "dhcp4_parser.cc"
3418#line 2143 "dhcp4_parser.yy"
3424#line 3425 "dhcp4_parser.cc"
3428#line 2147 "dhcp4_parser.yy"
3434#line 3435 "dhcp4_parser.cc"
3438#line 2155 "dhcp4_parser.yy"
3442#line 3443 "dhcp4_parser.cc"
3446#line 2171 "dhcp4_parser.yy"
3451#line 3452 "dhcp4_parser.cc"
3455#line 2174 "dhcp4_parser.yy"
3458 ctx.
stack_.back()->set(
"pool", pool);
3461#line 3462 "dhcp4_parser.cc"
3465#line 2180 "dhcp4_parser.yy"
3469 ctx.
stack_.back()->set(
"pool-id",
id);
3471#line 3472 "dhcp4_parser.cc"
3475#line 2186 "dhcp4_parser.yy"
3479#line 3480 "dhcp4_parser.cc"
3483#line 2188 "dhcp4_parser.yy"
3492 if ((old->size() != 1) || !old->contains(
"comment")) {
3493 std::stringstream msg;
3494 msg <<
"duplicate user-context entries (previous at "
3495 << old->getPosition().str() <<
")";
3496 error(yystack_[3].location, msg.str());
3499 user_context->set(
"comment", old->get(
"comment"));
3503 parent->set(
"user-context", user_context);
3506#line 3507 "dhcp4_parser.cc"
3510#line 2211 "dhcp4_parser.yy"
3514#line 3515 "dhcp4_parser.cc"
3518#line 2213 "dhcp4_parser.yy"
3523 user_context->set(
"comment", comment);
3529 if (old->contains(
"comment")) {
3530 std::stringstream msg;
3531 msg <<
"duplicate user-context/comment entries (previous at "
3532 << old->getPosition().str() <<
")";
3533 error(yystack_[3].location, msg.str());
3536 merge(user_context, old);
3540 parent->set(
"user-context", user_context);
3543#line 3544 "dhcp4_parser.cc"
3547#line 2241 "dhcp4_parser.yy"
3549 ctx.
unique(
"reservations", ctx.
loc2pos(yystack_[0].location));
3551 ctx.
stack_.back()->set(
"reservations", l);
3555#line 3556 "dhcp4_parser.cc"
3559#line 2247 "dhcp4_parser.yy"
3564#line 3565 "dhcp4_parser.cc"
3568#line 2258 "dhcp4_parser.yy"
3572#line 3573 "dhcp4_parser.cc"
3576#line 2263 "dhcp4_parser.yy"
3579 ctx.
stack_.back()->add(m);
3582#line 3583 "dhcp4_parser.cc"
3586#line 2267 "dhcp4_parser.yy"
3591#line 3592 "dhcp4_parser.cc"
3595#line 2272 "dhcp4_parser.yy"
3601#line 3602 "dhcp4_parser.cc"
3605#line 2276 "dhcp4_parser.yy"
3610#line 3611 "dhcp4_parser.cc"
3614#line 2287 "dhcp4_parser.yy"
3618#line 3619 "dhcp4_parser.cc"
3622#line 2310 "dhcp4_parser.yy"
3624 ctx.
unique(
"next-server", ctx.
loc2pos(yystack_[0].location));
3627#line 3628 "dhcp4_parser.cc"
3631#line 2313 "dhcp4_parser.yy"
3634 ctx.
stack_.back()->set(
"next-server", next_server);
3637#line 3638 "dhcp4_parser.cc"
3641#line 2319 "dhcp4_parser.yy"
3643 ctx.
unique(
"server-hostname", ctx.
loc2pos(yystack_[0].location));
3646#line 3647 "dhcp4_parser.cc"
3650#line 2322 "dhcp4_parser.yy"
3653 ctx.
stack_.back()->set(
"server-hostname", srv);
3656#line 3657 "dhcp4_parser.cc"
3660#line 2328 "dhcp4_parser.yy"
3662 ctx.
unique(
"boot-file-name", ctx.
loc2pos(yystack_[0].location));
3665#line 3666 "dhcp4_parser.cc"
3669#line 2331 "dhcp4_parser.yy"
3672 ctx.
stack_.back()->set(
"boot-file-name", bootfile);
3675#line 3676 "dhcp4_parser.cc"
3679#line 2337 "dhcp4_parser.yy"
3681 ctx.
unique(
"ip-address", ctx.
loc2pos(yystack_[0].location));
3684#line 3685 "dhcp4_parser.cc"
3688#line 2340 "dhcp4_parser.yy"
3691 ctx.
stack_.back()->set(
"ip-address", addr);
3694#line 3695 "dhcp4_parser.cc"
3698#line 2346 "dhcp4_parser.yy"
3703#line 3704 "dhcp4_parser.cc"
3707#line 2349 "dhcp4_parser.yy"
3710 ctx.
stack_.back()->set(
"duid", d);
3713#line 3714 "dhcp4_parser.cc"
3717#line 2355 "dhcp4_parser.yy"
3719 ctx.
unique(
"hw-address", ctx.
loc2pos(yystack_[0].location));
3722#line 3723 "dhcp4_parser.cc"
3726#line 2358 "dhcp4_parser.yy"
3729 ctx.
stack_.back()->set(
"hw-address", hw);
3732#line 3733 "dhcp4_parser.cc"
3736#line 2364 "dhcp4_parser.yy"
3741#line 3742 "dhcp4_parser.cc"
3745#line 2367 "dhcp4_parser.yy"
3748 ctx.
stack_.back()->set(
"client-id", hw);
3751#line 3752 "dhcp4_parser.cc"
3755#line 2373 "dhcp4_parser.yy"
3757 ctx.
unique(
"circuit-id", ctx.
loc2pos(yystack_[0].location));
3760#line 3761 "dhcp4_parser.cc"
3764#line 2376 "dhcp4_parser.yy"
3767 ctx.
stack_.back()->set(
"circuit-id", hw);
3770#line 3771 "dhcp4_parser.cc"
3774#line 2382 "dhcp4_parser.yy"
3779#line 3780 "dhcp4_parser.cc"
3783#line 2385 "dhcp4_parser.yy"
3786 ctx.
stack_.back()->set(
"flex-id", hw);
3789#line 3790 "dhcp4_parser.cc"
3793#line 2391 "dhcp4_parser.yy"
3798#line 3799 "dhcp4_parser.cc"
3802#line 2394 "dhcp4_parser.yy"
3805 ctx.
stack_.back()->set(
"hostname", host);
3808#line 3809 "dhcp4_parser.cc"
3812#line 2400 "dhcp4_parser.yy"
3814 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3816 ctx.
stack_.back()->set(
"client-classes", c);
3820#line 3821 "dhcp4_parser.cc"
3824#line 2406 "dhcp4_parser.yy"
3829#line 3830 "dhcp4_parser.cc"
3833#line 2414 "dhcp4_parser.yy"
3837 ctx.
stack_.back()->set(
"relay", m);
3841#line 3842 "dhcp4_parser.cc"
3845#line 2420 "dhcp4_parser.yy"
3850#line 3851 "dhcp4_parser.cc"
3854#line 2428 "dhcp4_parser.yy"
3856 ctx.
unique(
"ip-addresses", ctx.
loc2pos(yystack_[0].location));
3858 ctx.
stack_.back()->set(
"ip-addresses", l);
3862#line 3863 "dhcp4_parser.cc"
3866#line 2434 "dhcp4_parser.yy"
3871#line 3872 "dhcp4_parser.cc"
3875#line 2442 "dhcp4_parser.yy"
3877 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3879 ctx.
stack_.back()->set(
"client-classes", l);
3883#line 3884 "dhcp4_parser.cc"
3887#line 2448 "dhcp4_parser.yy"
3892#line 3893 "dhcp4_parser.cc"
3896#line 2455 "dhcp4_parser.yy"
3900#line 3901 "dhcp4_parser.cc"
3904#line 2460 "dhcp4_parser.yy"
3907 ctx.
stack_.back()->add(m);
3910#line 3911 "dhcp4_parser.cc"
3914#line 2464 "dhcp4_parser.yy"
3920#line 3921 "dhcp4_parser.cc"
3924#line 2476 "dhcp4_parser.yy"
3928#line 3929 "dhcp4_parser.cc"
3932#line 2502 "dhcp4_parser.yy"
3937#line 3938 "dhcp4_parser.cc"
3941#line 2505 "dhcp4_parser.yy"
3944 ctx.
stack_.back()->set(
"test", test);
3947#line 3948 "dhcp4_parser.cc"
3951#line 2511 "dhcp4_parser.yy"
3953 ctx.
unique(
"template-test", ctx.
loc2pos(yystack_[0].location));
3956#line 3957 "dhcp4_parser.cc"
3960#line 2514 "dhcp4_parser.yy"
3963 ctx.
stack_.back()->set(
"template-test", template_test);
3966#line 3967 "dhcp4_parser.cc"
3970#line 2521 "dhcp4_parser.yy"
3972 ctx.
unique(
"only-if-required", ctx.
loc2pos(yystack_[2].location));
3974 ctx.
stack_.back()->set(
"only-if-required", b);
3976#line 3977 "dhcp4_parser.cc"
3980#line 2527 "dhcp4_parser.yy"
3982 ctx.
unique(
"only-in-additional-list", ctx.
loc2pos(yystack_[2].location));
3984 ctx.
stack_.back()->set(
"only-in-additional-list", b);
3986#line 3987 "dhcp4_parser.cc"
3990#line 2535 "dhcp4_parser.yy"
3992 ctx.
unique(
"dhcp4o6-port", ctx.
loc2pos(yystack_[2].location));
3994 ctx.
stack_.back()->set(
"dhcp4o6-port", time);
3996#line 3997 "dhcp4_parser.cc"
4000#line 2543 "dhcp4_parser.yy"
4002 ctx.
unique(
"control-socket", ctx.
loc2pos(yystack_[0].location));
4003 ctx.
unique(
"control-sockets", ctx.
loc2pos(yystack_[0].location));
4005 ctx.
stack_.back()->set(
"control-socket", m);
4009#line 4010 "dhcp4_parser.cc"
4013#line 2550 "dhcp4_parser.yy"
4018#line 4019 "dhcp4_parser.cc"
4022#line 2555 "dhcp4_parser.yy"
4024 ctx.
unique(
"control-sockets", ctx.
loc2pos(yystack_[0].location));
4025 ctx.
unique(
"control-socket", ctx.
loc2pos(yystack_[0].location));
4027 ctx.
stack_.back()->set(
"control-sockets", l);
4031#line 4032 "dhcp4_parser.cc"
4035#line 2562 "dhcp4_parser.yy"
4040#line 4041 "dhcp4_parser.cc"
4044#line 2573 "dhcp4_parser.yy"
4048#line 4049 "dhcp4_parser.cc"
4052#line 2578 "dhcp4_parser.yy"
4055 ctx.
stack_.back()->add(m);
4058#line 4059 "dhcp4_parser.cc"
4062#line 2582 "dhcp4_parser.yy"
4066#line 4067 "dhcp4_parser.cc"
4070#line 2588 "dhcp4_parser.yy"
4074#line 4075 "dhcp4_parser.cc"
4078#line 2607 "dhcp4_parser.yy"
4080 ctx.
unique(
"socket-type", ctx.
loc2pos(yystack_[0].location));
4083#line 4084 "dhcp4_parser.cc"
4087#line 2610 "dhcp4_parser.yy"
4089 ctx.
stack_.back()->set(
"socket-type", yystack_[0].value.as <
ElementPtr > ());
4092#line 4093 "dhcp4_parser.cc"
4096#line 2616 "dhcp4_parser.yy"
4098#line 4099 "dhcp4_parser.cc"
4102#line 2617 "dhcp4_parser.yy"
4104#line 4105 "dhcp4_parser.cc"
4108#line 2618 "dhcp4_parser.yy"
4110#line 4111 "dhcp4_parser.cc"
4114#line 2621 "dhcp4_parser.yy"
4116 ctx.
unique(
"socket-name", ctx.
loc2pos(yystack_[0].location));
4117 ctx.
unique(
"socket-address", ctx.
loc2pos(yystack_[0].location));
4120#line 4121 "dhcp4_parser.cc"
4124#line 2625 "dhcp4_parser.yy"
4127 ctx.
stack_.back()->set(
"socket-name", name);
4130#line 4131 "dhcp4_parser.cc"
4134#line 2631 "dhcp4_parser.yy"
4136 ctx.
unique(
"socket-address", ctx.
loc2pos(yystack_[0].location));
4137 ctx.
unique(
"socket-name", ctx.
loc2pos(yystack_[0].location));
4140#line 4141 "dhcp4_parser.cc"
4144#line 2635 "dhcp4_parser.yy"
4147 ctx.
stack_.back()->set(
"socket-address", address);
4150#line 4151 "dhcp4_parser.cc"
4154#line 2641 "dhcp4_parser.yy"
4156 ctx.
unique(
"socket-port", ctx.
loc2pos(yystack_[2].location));
4158 ctx.
stack_.back()->set(
"socket-port", port);
4160#line 4161 "dhcp4_parser.cc"
4164#line 2647 "dhcp4_parser.yy"
4166 ctx.
unique(
"cert-required", ctx.
loc2pos(yystack_[2].location));
4168 ctx.
stack_.back()->set(
"cert-required", req);
4170#line 4171 "dhcp4_parser.cc"
4174#line 2655 "dhcp4_parser.yy"
4176 ctx.
unique(
"authentication", ctx.
loc2pos(yystack_[0].location));
4178 ctx.
stack_.back()->set(
"authentication", m);
4182#line 4183 "dhcp4_parser.cc"
4186#line 2661 "dhcp4_parser.yy"
4193#line 4194 "dhcp4_parser.cc"
4197#line 2670 "dhcp4_parser.yy"
4201#line 4202 "dhcp4_parser.cc"
4205#line 2684 "dhcp4_parser.yy"
4210#line 4211 "dhcp4_parser.cc"
4214#line 2687 "dhcp4_parser.yy"
4219#line 4220 "dhcp4_parser.cc"
4223#line 2692 "dhcp4_parser.yy"
4225#line 4226 "dhcp4_parser.cc"
4229#line 2695 "dhcp4_parser.yy"
4234#line 4235 "dhcp4_parser.cc"
4238#line 2698 "dhcp4_parser.yy"
4241 ctx.
stack_.back()->set(
"realm", realm);
4244#line 4245 "dhcp4_parser.cc"
4248#line 2704 "dhcp4_parser.yy"
4253#line 4254 "dhcp4_parser.cc"
4257#line 2707 "dhcp4_parser.yy"
4260 ctx.
stack_.back()->set(
"directory", directory);
4263#line 4264 "dhcp4_parser.cc"
4267#line 2713 "dhcp4_parser.yy"
4271 ctx.
stack_.back()->set(
"clients", l);
4275#line 4276 "dhcp4_parser.cc"
4279#line 2719 "dhcp4_parser.yy"
4284#line 4285 "dhcp4_parser.cc"
4288#line 2730 "dhcp4_parser.yy"
4292#line 4293 "dhcp4_parser.cc"
4296#line 2735 "dhcp4_parser.yy"
4299 ctx.
stack_.back()->add(m);
4302#line 4303 "dhcp4_parser.cc"
4306#line 2739 "dhcp4_parser.yy"
4310#line 4311 "dhcp4_parser.cc"
4314#line 2745 "dhcp4_parser.yy"
4318#line 4319 "dhcp4_parser.cc"
4322#line 2759 "dhcp4_parser.yy"
4327#line 4328 "dhcp4_parser.cc"
4331#line 2762 "dhcp4_parser.yy"
4334 ctx.
stack_.back()->set(
"user-file", user);
4337#line 4338 "dhcp4_parser.cc"
4341#line 2768 "dhcp4_parser.yy"
4343 ctx.
unique(
"password-file", ctx.
loc2pos(yystack_[0].location));
4346#line 4347 "dhcp4_parser.cc"
4350#line 2771 "dhcp4_parser.yy"
4353 ctx.
stack_.back()->set(
"password-file", password);
4356#line 4357 "dhcp4_parser.cc"
4360#line 2779 "dhcp4_parser.yy"
4362 ctx.
unique(
"dhcp-queue-control", ctx.
loc2pos(yystack_[0].location));
4364 ctx.
stack_.back()->set(
"dhcp-queue-control", qc);
4365 ctx.
stack_.push_back(qc);
4368#line 4369 "dhcp4_parser.cc"
4372#line 2785 "dhcp4_parser.yy"
4379#line 4380 "dhcp4_parser.cc"
4383#line 2794 "dhcp4_parser.yy"
4387#line 4388 "dhcp4_parser.cc"
4391#line 2807 "dhcp4_parser.yy"
4393 ctx.
unique(
"enable-queue", ctx.
loc2pos(yystack_[2].location));
4395 ctx.
stack_.back()->set(
"enable-queue", b);
4397#line 4398 "dhcp4_parser.cc"
4401#line 2813 "dhcp4_parser.yy"
4403 ctx.
unique(
"queue-type", ctx.
loc2pos(yystack_[0].location));
4406#line 4407 "dhcp4_parser.cc"
4410#line 2816 "dhcp4_parser.yy"
4413 ctx.
stack_.back()->set(
"queue-type", qt);
4416#line 4417 "dhcp4_parser.cc"
4420#line 2822 "dhcp4_parser.yy"
4424 ctx.
stack_.back()->set(
"capacity", c);
4426#line 4427 "dhcp4_parser.cc"
4430#line 2828 "dhcp4_parser.yy"
4432 ctx.
unique(yystack_[0].value.as < std::string > (), ctx.
loc2pos(yystack_[0].location));
4435#line 4436 "dhcp4_parser.cc"
4439#line 2831 "dhcp4_parser.yy"
4441 ctx.
stack_.back()->set(yystack_[3].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
4444#line 4445 "dhcp4_parser.cc"
4448#line 2838 "dhcp4_parser.yy"
4452 ctx.
stack_.back()->set(
"dhcp-ddns", m);
4456#line 4457 "dhcp4_parser.cc"
4460#line 2844 "dhcp4_parser.yy"
4463 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
4467#line 4468 "dhcp4_parser.cc"
4471#line 2851 "dhcp4_parser.yy"
4477#line 4478 "dhcp4_parser.cc"
4481#line 2855 "dhcp4_parser.yy"
4484 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[3].location), ctx.
loc2pos(yystack_[0].location));
4487#line 4488 "dhcp4_parser.cc"
4491#line 2863 "dhcp4_parser.yy"
4495#line 4496 "dhcp4_parser.cc"
4499#line 2881 "dhcp4_parser.yy"
4501 ctx.
unique(
"enable-updates", ctx.
loc2pos(yystack_[2].location));
4503 ctx.
stack_.back()->set(
"enable-updates", b);
4505#line 4506 "dhcp4_parser.cc"
4509#line 2887 "dhcp4_parser.yy"
4514#line 4515 "dhcp4_parser.cc"
4518#line 2890 "dhcp4_parser.yy"
4521 ctx.
stack_.back()->set(
"server-ip", s);
4524#line 4525 "dhcp4_parser.cc"
4528#line 2896 "dhcp4_parser.yy"
4530 ctx.
unique(
"server-port", ctx.
loc2pos(yystack_[2].location));
4532 ctx.
stack_.back()->set(
"server-port", i);
4534#line 4535 "dhcp4_parser.cc"
4538#line 2902 "dhcp4_parser.yy"
4543#line 4544 "dhcp4_parser.cc"
4547#line 2905 "dhcp4_parser.yy"
4550 ctx.
stack_.back()->set(
"sender-ip", s);
4553#line 4554 "dhcp4_parser.cc"
4557#line 2911 "dhcp4_parser.yy"
4559 ctx.
unique(
"sender-port", ctx.
loc2pos(yystack_[2].location));
4561 ctx.
stack_.back()->set(
"sender-port", i);
4563#line 4564 "dhcp4_parser.cc"
4567#line 2917 "dhcp4_parser.yy"
4569 ctx.
unique(
"max-queue-size", ctx.
loc2pos(yystack_[2].location));
4571 ctx.
stack_.back()->set(
"max-queue-size", i);
4573#line 4574 "dhcp4_parser.cc"
4577#line 2923 "dhcp4_parser.yy"
4579 ctx.
unique(
"ncr-protocol", ctx.
loc2pos(yystack_[0].location));
4582#line 4583 "dhcp4_parser.cc"
4586#line 2926 "dhcp4_parser.yy"
4588 ctx.
stack_.back()->set(
"ncr-protocol", yystack_[0].value.as <
ElementPtr > ());
4591#line 4592 "dhcp4_parser.cc"
4595#line 2932 "dhcp4_parser.yy"
4597#line 4598 "dhcp4_parser.cc"
4601#line 2933 "dhcp4_parser.yy"
4603#line 4604 "dhcp4_parser.cc"
4607#line 2936 "dhcp4_parser.yy"
4609 ctx.
unique(
"ncr-format", ctx.
loc2pos(yystack_[0].location));
4612#line 4613 "dhcp4_parser.cc"
4616#line 2939 "dhcp4_parser.yy"
4619 ctx.
stack_.back()->set(
"ncr-format", json);
4622#line 4623 "dhcp4_parser.cc"
4626#line 2947 "dhcp4_parser.yy"
4628 ctx.
unique(
"config-control", ctx.
loc2pos(yystack_[0].location));
4630 ctx.
stack_.back()->set(
"config-control", i);
4634#line 4635 "dhcp4_parser.cc"
4638#line 2953 "dhcp4_parser.yy"
4644#line 4645 "dhcp4_parser.cc"
4648#line 2959 "dhcp4_parser.yy"
4654#line 4655 "dhcp4_parser.cc"
4658#line 2963 "dhcp4_parser.yy"
4663#line 4664 "dhcp4_parser.cc"
4667#line 2971 "dhcp4_parser.yy"
4671#line 4672 "dhcp4_parser.cc"
4675#line 2981 "dhcp4_parser.yy"
4677 ctx.
unique(
"config-databases", ctx.
loc2pos(yystack_[0].location));
4679 ctx.
stack_.back()->set(
"config-databases", l);
4683#line 4684 "dhcp4_parser.cc"
4687#line 2987 "dhcp4_parser.yy"
4692#line 4693 "dhcp4_parser.cc"
4696#line 2992 "dhcp4_parser.yy"
4698 ctx.
unique(
"config-fetch-wait-time", ctx.
loc2pos(yystack_[2].location));
4700 ctx.
stack_.back()->set(
"config-fetch-wait-time", value);
4702#line 4703 "dhcp4_parser.cc"
4706#line 3000 "dhcp4_parser.yy"
4710 ctx.
stack_.back()->set(
"loggers", l);
4714#line 4715 "dhcp4_parser.cc"
4718#line 3006 "dhcp4_parser.yy"
4723#line 4724 "dhcp4_parser.cc"
4727#line 3015 "dhcp4_parser.yy"
4731#line 4732 "dhcp4_parser.cc"
4735#line 3021 "dhcp4_parser.yy"
4738 ctx.
stack_.back()->add(l);
4741#line 4742 "dhcp4_parser.cc"
4745#line 3025 "dhcp4_parser.yy"
4749#line 4750 "dhcp4_parser.cc"
4753#line 3031 "dhcp4_parser.yy"
4757#line 4758 "dhcp4_parser.cc"
4761#line 3045 "dhcp4_parser.yy"
4763 ctx.
unique(
"debuglevel", ctx.
loc2pos(yystack_[2].location));
4765 ctx.
stack_.back()->set(
"debuglevel", dl);
4767#line 4768 "dhcp4_parser.cc"
4771#line 3051 "dhcp4_parser.yy"
4776#line 4777 "dhcp4_parser.cc"
4780#line 3054 "dhcp4_parser.yy"
4783 ctx.
stack_.back()->set(
"severity", sev);
4786#line 4787 "dhcp4_parser.cc"
4790#line 3060 "dhcp4_parser.yy"
4792 ctx.
unique(
"output-options", ctx.
loc2pos(yystack_[0].location));
4794 ctx.
stack_.back()->set(
"output-options", l);
4798#line 4799 "dhcp4_parser.cc"
4802#line 3066 "dhcp4_parser.yy"
4807#line 4808 "dhcp4_parser.cc"
4811#line 3073 "dhcp4_parser.yy"
4815#line 4816 "dhcp4_parser.cc"
4819#line 3078 "dhcp4_parser.yy"
4822 ctx.
stack_.back()->add(m);
4825#line 4826 "dhcp4_parser.cc"
4829#line 3082 "dhcp4_parser.yy"
4833#line 4834 "dhcp4_parser.cc"
4837#line 3088 "dhcp4_parser.yy"
4841#line 4842 "dhcp4_parser.cc"
4845#line 3100 "dhcp4_parser.yy"
4850#line 4851 "dhcp4_parser.cc"
4854#line 3103 "dhcp4_parser.yy"
4857 ctx.
stack_.back()->set(
"output", sev);
4860#line 4861 "dhcp4_parser.cc"
4864#line 3109 "dhcp4_parser.yy"
4868 ctx.
stack_.back()->set(
"flush", flush);
4870#line 4871 "dhcp4_parser.cc"
4874#line 3115 "dhcp4_parser.yy"
4878 ctx.
stack_.back()->set(
"maxsize", maxsize);
4880#line 4881 "dhcp4_parser.cc"
4884#line 3121 "dhcp4_parser.yy"
4888 ctx.
stack_.back()->set(
"maxver", maxver);
4890#line 4891 "dhcp4_parser.cc"
4894#line 3127 "dhcp4_parser.yy"
4899#line 4900 "dhcp4_parser.cc"
4903#line 3130 "dhcp4_parser.yy"
4906 ctx.
stack_.back()->set(
"pattern", sev);
4909#line 4910 "dhcp4_parser.cc"
4913#line 3136 "dhcp4_parser.yy"
4915 ctx.
unique(
"compatibility", ctx.
loc2pos(yystack_[0].location));
4917 ctx.
stack_.back()->set(
"compatibility", i);
4921#line 4922 "dhcp4_parser.cc"
4925#line 3142 "dhcp4_parser.yy"
4930#line 4931 "dhcp4_parser.cc"
4934#line 3149 "dhcp4_parser.yy"
4938#line 4939 "dhcp4_parser.cc"
4942#line 3161 "dhcp4_parser.yy"
4944 ctx.
unique(
"lenient-option-parsing", ctx.
loc2pos(yystack_[2].location));
4946 ctx.
stack_.back()->set(
"lenient-option-parsing", b);
4948#line 4949 "dhcp4_parser.cc"
4952#line 3167 "dhcp4_parser.yy"
4954 ctx.
unique(
"ignore-dhcp-server-identifier", ctx.
loc2pos(yystack_[2].location));
4956 ctx.
stack_.back()->set(
"ignore-dhcp-server-identifier", b);
4958#line 4959 "dhcp4_parser.cc"
4962#line 3173 "dhcp4_parser.yy"
4964 ctx.
unique(
"ignore-rai-link-selection", ctx.
loc2pos(yystack_[2].location));
4966 ctx.
stack_.back()->set(
"ignore-rai-link-selection", b);
4968#line 4969 "dhcp4_parser.cc"
4972#line 3179 "dhcp4_parser.yy"
4974 ctx.
unique(
"exclude-first-last-24", ctx.
loc2pos(yystack_[2].location));
4976 ctx.
stack_.back()->set(
"exclude-first-last-24", b);
4978#line 4979 "dhcp4_parser.cc"
4982#line 4983 "dhcp4_parser.cc"
4991 YYCDEBUG <<
"Caught exception: " << yyexc.what() <<
'\n';
5001 yypush_ (YY_NULLPTR,
YY_MOVE (yylhs));
5015 std::string msg = yysyntax_error_ (yyctx);
5020 yyerror_range[1].location = yyla.location;
5021 if (yyerrstatus_ == 3)
5029 else if (!yyla.empty ())
5031 yy_destroy_ (
"Error: discarding", yyla);
5065 yyn = yypact_[+yystack_[0].state];
5066 if (!yy_pact_value_is_default_ (yyn))
5069 if (0 <= yyn && yyn <= yylast_
5072 yyn = yytable_[yyn];
5079 if (yystack_.size () == 1)
5082 yyerror_range[1].location = yystack_[0].location;
5083 yy_destroy_ (
"Error: popping", yystack_[0]);
5088 stack_symbol_type error_token;
5090 yyerror_range[2].location = yyla.location;
5094 error_token.state = state_type (yyn);
5095 yypush_ (
"Shifting",
YY_MOVE (error_token));
5121 yy_destroy_ (
"Cleanup: discarding lookahead", yyla);
5127 while (1 < yystack_.size ())
5129 yy_destroy_ (
"Cleanup: popping", yystack_[0]);
5138 YYCDEBUG <<
"Exception caught: cleaning lookahead and stack\n";
5142 yy_destroy_ (YY_NULLPTR, yyla);
5144 while (1 < yystack_.size ())
5146 yy_destroy_ (YY_NULLPTR, yystack_[0]);
5157 error (yyexc.location, yyexc.what ());
5166 Dhcp4Parser::yytnamerr_ (
const char *yystr)
5171 char const *yyp = yystr;
5178 goto do_not_strip_quotes;
5182 goto do_not_strip_quotes;
5194 do_not_strip_quotes: ;
5203 return yytnamerr_ (yytname_[yysymbol]);
5210 : yyparser_ (yyparser)
5220 const int yyn = yypact_[+yyparser_.yystack_[0].state];
5221 if (!yy_pact_value_is_default_ (yyn))
5226 const int yyxbegin = yyn < 0 ? -yyn : 0;
5228 const int yychecklim = yylast_ - yyn + 1;
5230 for (
int yyx = yyxbegin; yyx < yyxend; ++yyx)
5232 && !yy_table_value_is_error_ (yytable_[yyx + yyn]))
5236 else if (yycount == yyargn)
5243 if (yyarg && yycount == 0 && 0 < yyargn)
5254 Dhcp4Parser::yy_syntax_error_arguments_ (
const context& yyctx,
5282 if (!yyctx.lookahead ().empty ())
5285 yyarg[0] = yyctx.token ();
5286 int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1);
5294 Dhcp4Parser::yysyntax_error_ (
const context& yyctx)
const
5297 enum { YYARGS_MAX = 5 };
5300 int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX);
5302 char const* yyformat = YY_NULLPTR;
5305#define YYCASE_(N, S) \
5311 YYCASE_ (1,
YY_(
"syntax error, unexpected %s"));
5312 YYCASE_ (2,
YY_(
"syntax error, unexpected %s, expecting %s"));
5313 YYCASE_ (3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
5314 YYCASE_ (4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
5315 YYCASE_ (5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
5321 std::ptrdiff_t yyi = 0;
5322 for (
char const* yyp = yyformat; *yyp; ++yyp)
5323 if (yyp[0] ==
'%' && yyp[1] ==
's' && yyi < yycount)
5334 const short Dhcp4Parser::yypact_ninf_ = -1330;
5336 const signed char Dhcp4Parser::yytable_ninf_ = -1;
5339 Dhcp4Parser::yypact_[] =
5341 454, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5342 -1330, -1330, -1330, -1330, 74, 28, 79, 91, 123, 151,
5343 161, 163, 165, 189, 191, 196, 215, 244, -1330, -1330,
5344 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5345 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5346 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5347 -1330, -1330, -1330, -1330, 28, -156, 81, 688, 33, 159,
5348 -21, 167, 169, 219, 241, -99, 455, 41, -1330, 138,
5349 105, 170, 287, 293, -1330, 103, -1330, -1330, -1330, -1330,
5350 294, 308, 310, -1330, -1330, -1330, 321, 323, -1330, -1330,
5351 -1330, 324, 338, 344, 353, 356, 371, 385, 389, 405,
5352 406, 407, -1330, 421, 435, 445, 451, 456, -1330, -1330,
5353 -1330, 457, 458, 461, 463, -1330, -1330, -1330, 464, -1330,
5354 -1330, -1330, -1330, -1330, 465, 467, 469, -1330, -1330, -1330,
5355 -1330, -1330, 471, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5356 475, 476, 478, -1330, -1330, 479, -1330, 109, -1330, -1330,
5357 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5358 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5359 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5360 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5361 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5362 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5363 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5364 481, 482, 483, 484, -1330, 119, -1330, -1330, -1330, -1330,
5365 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5366 -1330, -1330, 485, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5367 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5368 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5369 -1330, -1330, -1330, -1330, -1330, 137, -1330, -1330, -1330, -1330,
5370 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5371 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 486,
5372 -1330, -1330, -1330, -1330, -1330, 147, -1330, -1330, -1330, -1330,
5373 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5374 -1330, -1330, -1330, 350, 384, -1330, -1330, -1330, -1330, -1330,
5375 -1330, -1330, -1330, -1330, -1330, -1330, -1330, 366, -1330, -1330,
5376 489, -1330, -1330, -1330, 490, -1330, -1330, 491, 440, -1330,
5377 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5378 -1330, -1330, 497, 499, 501, -1330, -1330, -1330, -1330, -1330,
5379 503, 504, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5380 -1330, -1330, -1330, -1330, -1330, -1330, 157, -1330, -1330, -1330,
5381 508, -1330, 510, -1330, 511, 512, -1330, -1330, -1330, -1330,
5382 -1330, 158, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5383 -1330, -1330, 513, 194, -1330, -1330, -1330, -1330, 28, 28,
5384 -1330, 295, 515, -1330, -1330, 517, 520, 521, 298, 300,
5385 301, 526, 527, 528, 307, 306, 531, 533, 535, 315,
5386 317, 318, 319, 320, 322, 326, 327, 329, 332, 333,
5387 543, 334, 335, 336, 337, 343, 545, 559, 562, 346,
5388 348, 355, 352, 577, 579, 580, 360, 583, 585, 589,
5389 590, 593, 372, 373, 374, 595, 600, 601, 603, 608,
5390 391, 614, 615, 616, 621, 623, 624, 625, 402, 404,
5391 414, 629, 639, -1330, 688, -1330, 640, 642, 644, 422,
5392 423, 427, 428, 33, -1330, 645, 651, 652, 653, 654,
5393 655, 434, 657, 658, 659, 660, 159, -1330, 675, 459,
5394 -21, -1330, 677, 680, 683, 684, 685, 687, 689, 690,
5395 -1330, 167, -1330, 691, 692, 466, 693, 694, 701, 480,
5396 -1330, 219, 702, 487, 488, 500, 703, -1330, 241, 705,
5397 706, -55, -1330, 502, 708, 505, 709, 506, 507, 725,
5398 730, 455, -1330, 731, 514, 41, -1330, -1330, -1330, 732,
5399 734, 735, 736, 737, -1330, -1330, -1330, 523, 552, 553,
5400 -1330, -1330, 738, 744, 733, -1330, -1330, -1330, -1330, -1330,
5401 -1330, -1330, -1330, -1330, -1330, -1330, 554, -1330, -1330, -1330,
5402 -1330, -1330, -114, 557, 558, -1330, -1330, -1330, -1330, 779,
5403 780, 781, -1330, 563, 160, 782, 783, 564, -1330, -1330,
5404 -1330, 786, 790, 791, 792, 793, -1330, 794, 797, 800,
5405 799, 805, 573, 588, -1330, -1330, -1330, 809, 808, -1330,
5406 811, 102, 122, -1330, -1330, -1330, -1330, -1330, 592, 594,
5407 596, 813, 597, 598, -1330, 811, 811, 599, 818, -1330,
5408 602, -1330, -1330, 811, 604, 606, 607, 609, 610, 611,
5409 612, -1330, 613, 617, -1330, 618, 619, 622, -1330, -1330,
5410 626, -1330, -1330, -1330, 811, -1330, 627, 783, -1330, -1330,
5411 628, -1330, 630, -1330, -1330, 18, 549, -1330, 821, -1330,
5412 -1330, 28, 688, 41, 33, 208, -1330, -1330, -1330, 354,
5413 354, 832, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5414 -1330, 841, 842, 843, -1330, -1330, -1330, -1330, -1330, -1330,
5415 847, -1330, -1330, -1330, 73, 849, 850, 851, 29, 195,
5416 22, 852, -52, 455, -1330, -1330, 853, 9, -1330, -1330,
5417 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 854,
5418 -1330, -1330, -1330, -1330, -1330, 722, -1330, -1330, -1330, -1330,
5419 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5420 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5421 832, -1330, 203, 213, 254, -1330, -1330, 351, -1330, -1330,
5422 -1330, -1330, -1330, -1330, -1330, 824, 860, 861, 863, 864,
5423 865, 866, 867, 868, 869, -1330, 870, 871, -1330, -1330,
5424 -1330, -1330, -1330, 368, -1330, -1330, -1330, -1330, -1330, -1330,
5425 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5426 -1330, -1330, -1330, -1330, -1330, -1330, -1330, 369, -1330, 872,
5427 873, -1330, -1330, 874, 876, -1330, -1330, 881, 885, -1330,
5428 -1330, 883, 887, -1330, -1330, 886, 888, -1330, -1330, -1330,
5429 -1330, -1330, -1330, 40, -1330, -1330, -1330, -1330, -1330, -1330,
5430 -1330, 44, -1330, -1330, 890, 891, -1330, -1330, 892, 894,
5431 -1330, 889, 895, 896, 897, 898, 899, 370, -1330, -1330,
5432 -1330, -1330, -1330, -1330, -1330, 900, 901, 902, -1330, 380,
5433 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 903,
5434 -1330, 904, -1330, -1330, -1330, -1330, -1330, -1330, 382, -1330,
5435 -1330, -1330, -1330, -1330, -1330, -1330, -1330, 905, 906, -1330,
5436 908, -1330, 910, -1330, -1330, -1330, 383, -1330, -1330, -1330,
5437 -1330, -1330, 416, -1330, 126, -1330, 911, 912, 913, 914,
5438 -1330, 418, -1330, -1330, -1330, -1330, -1330, 695, -1330, 915,
5439 907, -1330, -1330, 916, -1330, 917, -1330, -1330, -1330, 918,
5440 921, 208, -1330, 922, 923, 924, 925, 704, 649, 707,
5441 710, 711, 713, 714, 715, 716, 717, 927, 718, 719,
5442 928, 930, 931, 932, 354, -1330, -1330, 354, -1330, 832,
5443 159, -1330, 841, 219, -1330, 842, 241, -1330, 843, 1341,
5444 -1330, 847, 73, -1330, 253, 849, -1330, 167, -1330, 850,
5445 -99, -1330, 851, 721, 723, 724, 726, 728, 729, 29,
5446 -1330, 720, 739, 743, 195, -1330, 940, 947, 953, 750,
5447 954, 751, 22, -1330, 22, -1330, 852, 754, 956, 757,
5448 957, -52, -1330, -1330, 229, 853, -1330, 758, 765, 766,
5449 768, 9, -1330, -1330, 992, 1000, -21, -1330, 854, 1004,
5450 -1330, -1330, 784, 785, -1330, 802, 803, 807, 810, -1330,
5451 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 127,
5452 -1330, -1330, 815, 816, 817, 823, -1330, 424, -1330, 426,
5453 -1330, 1010, -1330, 1016, -1330, -1330, -1330, -1330, -1330, -1330,
5454 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5455 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5456 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5457 -1330, -1330, 430, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5458 -1330, -1330, -1330, -1330, -1330, 1029, 1034, -1330, -1330, -1330,
5459 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5460 1035, 1046, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 1044,
5461 -1330, 432, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5462 -1330, -1330, -1330, -1330, 53, 829, 833, -1330, 1050, -1330,
5463 -1330, 433, -1330, -1330, 837, -1330, 28, -1330, -1330, 1060,
5464 -1330, -1330, -1330, -1330, -1330, 439, -1330, -1330, -1330, -1330,
5465 -1330, -1330, -1330, -1330, -1330, -1330, -1330, 862, 442, -1330,
5466 811, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5467 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 1341,
5468 -1330, 1070, 1073, 909, 919, -1330, 253, -1330, -1330, -1330,
5469 -1330, -1330, -1330, -1330, -1330, 193, -1330, -1330, -1330, 1119,
5470 920, 1121, 229, -1330, -1330, -1330, -1330, -1330, 926, 929,
5471 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5472 448, -1330, -1330, -1330, -1330, -1330, 1123, -1330, 933, -1330,
5473 -1330, -1330, 1122, 1127, 1128, 1129, 193, -1330, 1131, -1330,
5474 572, 934, 935, 1130, -1330, -1330, 291, -1330, -1330, -1330,
5475 -1330, -1330, 1132, -104, 1131, -1330, -1330, 1134, 1133, -1330,
5476 -1330, 1137, 1138, 1139, -1330, 449, -1330, -1330, -1330, -1330,
5477 -1330, -1330, -1330, 251, -1330, 1132, 1140, 936, 937, 939,
5478 1141, -104, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5479 450, -1330, -1330, -1330, -1330, 941, -1330, -1330, -1330, 943,
5480 -1330, 1144, 1145, 251, -1330, -1330, -1330, 944, 945, -1330,
5485 Dhcp4Parser::yydefact_[] =
5487 0, 2, 4, 6, 8, 10, 12, 14, 16, 18,
5488 20, 22, 24, 26, 0, 0, 0, 0, 0, 0,
5489 0, 0, 0, 0, 0, 0, 0, 0, 1, 44,
5490 36, 32, 31, 28, 29, 30, 35, 3, 33, 34,
5491 59, 5, 65, 7, 208, 9, 385, 11, 602, 13,
5492 632, 15, 517, 17, 526, 19, 565, 21, 347, 23,
5493 816, 25, 848, 27, 46, 39, 0, 0, 0, 0,
5494 0, 634, 0, 528, 567, 0, 0, 0, 48, 0,
5495 47, 0, 0, 40, 61, 0, 63, 846, 193, 226,
5496 0, 0, 0, 654, 656, 658, 0, 0, 224, 237,
5497 239, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5498 0, 0, 150, 0, 0, 0, 0, 0, 161, 168,
5499 170, 0, 0, 0, 0, 376, 515, 556, 0, 153,
5500 174, 459, 619, 621, 0, 0, 0, 309, 681, 623,
5501 338, 359, 0, 324, 718, 720, 797, 814, 181, 183,
5502 0, 0, 0, 858, 900, 0, 138, 0, 67, 70,
5503 71, 72, 73, 74, 108, 109, 110, 111, 112, 75,
5504 104, 134, 135, 93, 94, 95, 116, 117, 118, 119,
5505 120, 121, 122, 123, 124, 125, 114, 115, 126, 127,
5506 128, 130, 131, 132, 136, 137, 78, 79, 101, 80,
5507 81, 82, 129, 86, 87, 76, 105, 106, 107, 77,
5508 84, 85, 99, 100, 102, 96, 97, 98, 83, 88,
5509 89, 90, 91, 92, 103, 113, 133, 210, 212, 216,
5510 0, 0, 0, 0, 207, 0, 195, 198, 199, 200,
5511 201, 202, 203, 204, 205, 206, 441, 443, 445, 593,
5512 439, 447, 0, 451, 453, 449, 676, 438, 390, 391,
5513 392, 393, 394, 418, 419, 420, 421, 422, 436, 408,
5514 409, 423, 424, 425, 426, 427, 428, 429, 430, 431,
5515 432, 433, 434, 435, 437, 0, 387, 397, 413, 414,
5516 415, 398, 400, 401, 402, 404, 405, 406, 399, 395,
5517 396, 416, 417, 403, 410, 411, 412, 407, 616, 0,
5518 615, 610, 611, 612, 609, 0, 604, 607, 608, 613,
5519 614, 674, 660, 662, 664, 668, 666, 672, 670, 653,
5520 647, 651, 652, 0, 635, 636, 648, 649, 650, 644,
5521 639, 645, 641, 642, 643, 646, 640, 0, 546, 283,
5522 0, 550, 548, 553, 0, 542, 543, 0, 529, 530,
5523 533, 545, 534, 535, 536, 552, 537, 538, 539, 540,
5524 541, 584, 0, 0, 0, 591, 582, 583, 586, 587,
5525 0, 568, 569, 572, 573, 574, 575, 576, 577, 578,
5526 581, 579, 580, 355, 357, 352, 0, 349, 353, 354,
5527 0, 833, 0, 836, 0, 0, 840, 844, 831, 829,
5528 830, 0, 818, 821, 822, 823, 824, 825, 826, 827,
5529 828, 855, 0, 0, 850, 853, 854, 45, 50, 0,
5530 37, 43, 0, 64, 60, 0, 0, 0, 0, 0,
5531 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5535 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5536 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5537 0, 0, 0, 58, 69, 66, 0, 0, 0, 0,
5538 0, 0, 0, 197, 209, 0, 0, 0, 0, 0,
5539 0, 0, 0, 0, 0, 0, 389, 386, 0, 0,
5540 606, 603, 0, 0, 0, 0, 0, 0, 0, 0,
5541 633, 638, 518, 0, 0, 0, 0, 0, 0, 0,
5542 527, 532, 0, 0, 0, 0, 0, 566, 571, 0,
5543 0, 351, 348, 0, 0, 0, 0, 0, 0, 0,
5544 0, 820, 817, 0, 0, 852, 849, 49, 41, 0,
5545 0, 0, 0, 0, 155, 156, 157, 0, 0, 0,
5546 191, 192, 0, 0, 0, 139, 140, 141, 142, 143,
5547 144, 145, 146, 147, 148, 149, 0, 186, 187, 158,
5548 159, 160, 0, 0, 0, 172, 173, 180, 185, 0,
5549 0, 0, 152, 0, 0, 0, 0, 0, 455, 456,
5550 457, 0, 0, 0, 0, 0, 717, 0, 0, 0,
5551 0, 0, 0, 0, 188, 189, 190, 0, 0, 68,
5552 0, 0, 0, 220, 221, 222, 223, 196, 0, 0,
5553 0, 0, 0, 0, 458, 0, 0, 0, 0, 388,
5554 0, 618, 605, 0, 0, 0, 0, 0, 0, 0,
5555 0, 637, 0, 0, 544, 0, 0, 0, 555, 531,
5556 0, 588, 589, 590, 0, 570, 0, 0, 350, 832,
5557 0, 835, 0, 838, 839, 0, 0, 819, 0, 857,
5558 851, 0, 0, 0, 0, 0, 655, 657, 659, 0,
5559 0, 241, 151, 163, 164, 165, 166, 167, 162, 169,
5560 171, 378, 519, 558, 154, 176, 177, 178, 179, 175,
5561 461, 38, 620, 622, 0, 0, 625, 340, 0, 0,
5562 0, 722, 0, 0, 182, 184, 0, 0, 51, 211,
5563 214, 215, 213, 218, 219, 217, 442, 444, 446, 595,
5564 440, 448, 452, 454, 450, 0, 617, 675, 661, 663,
5565 665, 669, 667, 673, 671, 547, 284, 551, 549, 554,
5566 585, 592, 356, 358, 834, 837, 842, 843, 841, 845,
5567 241, 42, 0, 0, 0, 233, 235, 0, 228, 231,
5568 232, 274, 276, 278, 280, 0, 0, 0, 0, 0,
5569 0, 0, 0, 0, 0, 294, 0, 0, 301, 303,
5570 305, 307, 273, 0, 248, 251, 252, 253, 254, 255,
5571 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
5572 266, 267, 268, 269, 270, 271, 272, 0, 246, 0,
5573 242, 243, 383, 0, 379, 380, 524, 0, 520, 521,
5574 563, 0, 559, 560, 466, 0, 462, 463, 319, 320,
5575 321, 322, 323, 0, 311, 314, 315, 316, 317, 318,
5576 686, 0, 683, 630, 0, 626, 627, 345, 0, 341,
5577 342, 0, 0, 0, 0, 0, 0, 0, 361, 364,
5578 365, 366, 367, 368, 369, 0, 0, 0, 334, 0,
5579 326, 329, 330, 331, 332, 333, 744, 749, 751, 0,
5580 755, 0, 743, 737, 738, 739, 741, 742, 0, 729,
5581 732, 733, 734, 735, 740, 736, 727, 0, 723, 724,
5582 0, 809, 0, 812, 805, 806, 0, 799, 802, 803,
5583 804, 807, 0, 863, 0, 860, 0, 0, 0, 0,
5584 909, 0, 902, 905, 906, 907, 908, 53, 600, 0,
5585 596, 597, 679, 0, 678, 0, 62, 847, 194, 0,
5586 0, 230, 227, 0, 0, 0, 0, 0, 0, 0,
5587 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5588 0, 0, 0, 0, 250, 225, 238, 0, 240, 245,
5589 0, 377, 382, 528, 516, 523, 567, 557, 562, 0,
5590 460, 465, 313, 310, 688, 685, 682, 634, 624, 629,
5591 0, 339, 344, 0, 0, 0, 0, 0, 0, 363,
5592 360, 0, 0, 0, 328, 325, 0, 0, 0, 0,
5593 0, 0, 731, 719, 0, 721, 726, 0, 0, 0,
5594 0, 801, 798, 815, 0, 862, 859, 0, 0, 0,
5595 0, 904, 901, 55, 0, 54, 0, 594, 599, 0,
5596 677, 856, 0, 0, 229, 0, 0, 0, 0, 282,
5597 285, 286, 287, 288, 289, 290, 291, 292, 293, 0,
5598 299, 300, 0, 0, 0, 0, 249, 0, 244, 0,
5599 381, 0, 522, 0, 561, 514, 489, 490, 491, 474,
5600 475, 494, 495, 496, 497, 498, 512, 477, 478, 499,
5601 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
5602 510, 511, 513, 471, 472, 473, 486, 487, 488, 483,
5603 484, 485, 0, 468, 476, 492, 493, 479, 480, 481,
5604 482, 464, 312, 711, 713, 0, 0, 705, 706, 707,
5605 708, 709, 710, 698, 699, 703, 704, 700, 701, 702,
5606 0, 689, 690, 693, 694, 695, 696, 697, 684, 0,
5607 628, 0, 343, 370, 371, 372, 373, 374, 375, 362,
5608 335, 336, 337, 327, 0, 0, 0, 753, 0, 754,
5609 730, 0, 725, 808, 0, 811, 0, 800, 878, 0,
5610 876, 874, 868, 872, 873, 0, 865, 870, 871, 869,
5611 861, 910, 911, 912, 913, 903, 52, 57, 0, 598,
5612 0, 234, 236, 275, 277, 279, 281, 296, 297, 298,
5613 295, 302, 304, 306, 308, 247, 384, 525, 564, 470,
5614 467, 0, 0, 0, 0, 687, 692, 631, 346, 746,
5615 747, 748, 745, 750, 752, 0, 728, 810, 813, 0,
5616 0, 0, 867, 864, 56, 601, 680, 469, 0, 0,
5617 715, 716, 691, 767, 770, 772, 774, 766, 765, 764,
5618 0, 757, 760, 761, 762, 763, 0, 875, 0, 866,
5619 712, 714, 0, 0, 0, 0, 759, 756, 0, 877,
5620 0, 0, 0, 0, 758, 883, 0, 880, 769, 768,
5621 771, 773, 776, 0, 882, 879, 781, 0, 777, 778,
5622 893, 0, 0, 0, 898, 0, 885, 888, 889, 890,
5623 891, 892, 881, 0, 775, 780, 0, 0, 0, 0,
5624 0, 887, 884, 793, 795, 792, 786, 788, 790, 791,
5625 0, 783, 787, 789, 779, 0, 895, 896, 897, 0,
5626 886, 0, 0, 785, 782, 894, 899, 0, 0, 784,
5631 Dhcp4Parser::yypgoto_[] =
5633 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5634 -1330, -1330, -1330, -1330, -1330, -59, -1330, -584, -1330, 222,
5635 -1330, -1330, -1330, -1330, -1330, -1330, -635, -1330, -1330, -1330,
5636 -67, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 438, 648,
5637 -30, -28, -18, -54, -29, -8, 47, 49, 52, 59,
5638 -1330, -1330, -1330, -1330, 62, -1330, -1330, 64, 65, 66,
5639 69, 70, 72, -1330, -1330, 77, -1330, 80, -1330, 82,
5640 83, 84, -1330, -1330, 85, 87, -1330, 88, -1330, 90,
5641 -1330, -1330, -1330, -1330, -1330, 46, -1330, -1330, -1330, 420,
5642 643, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5643 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5644 162, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 357,
5645 -1330, 136, -1330, -706, 148, -1330, -1330, -1329, -1330, -1303,
5646 -1330, -1330, -1330, -1330, -45, -1330, -1330, -1330, -1330, -1330,
5647 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5648 -738, -1330, -733, -1330, -732, -1330, -1330, -1330, -1330, -1330,
5649 -1330, 129, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5650 117, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 130, -1330,
5651 -1330, -1330, 133, 620, -1330, -1330, -1330, -1330, -1330, -1330,
5652 -1330, 125, -1330, -1330, -1330, -1330, -1330, -1330, -1006, -1330,
5653 -1330, -1330, 153, -1330, -1330, -1330, 156, 656, -1330, -1330,
5654 -1330, -1330, -1330, -1330, -1330, -1330, -1003, -1330, 92, -1330,
5655 93, -1330, 101, -1330, 95, 98, 100, -1330, -1330, -1330,
5656 -1330, -1330, 146, -1330, -1330, -89, -62, -1330, -1330, -1330,
5657 -1330, -1330, 164, -1330, -1330, -1330, 168, -1330, 632, -1330,
5658 -63, -1330, -1330, -1330, -1330, -1330, -58, -1330, -1330, -1330,
5659 -1330, -1330, 10, -1330, -1330, -1330, 166, -1330, -1330, -1330,
5660 171, -1330, 634, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5661 -1330, -1330, -1330, -1330, -1330, -1330, -1330, 96, -1330, -1330,
5662 -1330, 99, 663, -1330, -1330, -1330, -49, -1330, -3, -1330,
5663 -56, -1330, -1330, -1330, 149, -1330, -1330, -1330, 173, -1330,
5664 662, 16, -1330, 26, -1330, 36, -1330, -1330, -1330, -1330,
5665 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5666 -1330, -1330, -1330, -997, -1330, -1330, -1330, -1330, -1330, -1330,
5667 -1330, 155, -1330, -1330, -1330, -90, -1330, -1330, -1330, -1330,
5668 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5669 132, -1330, 131, 134, -1330, -1330, -1330, -1330, -1330, -1330,
5670 -1330, -1330, -1330, -1330, -1330, -1330, -127, -1330, -1330, -1330,
5671 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -165, -1330,
5672 -1330, -192, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 135,
5673 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5674 452, 633, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5675 -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, 494,
5676 636, -1330, -1330, -1330, -1330, -1330, -1330, 141, -1330, -1330,
5677 -84, -1330, -1330, -1330, -1330, -1330, -1330, -132, -1330, -1330,
5678 -158, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330, -1330,
5679 -1330, 140, -1330, -1330, -1330, -1330
5683 Dhcp4Parser::yydefgoto_[] =
5685 0, 14, 15, 16, 17, 18, 19, 20, 21, 22,
5686 23, 24, 25, 26, 27, 36, 37, 38, 65, 742,
5687 82, 83, 39, 64, 79, 80, 759, 977, 1084, 1085,
5688 832, 41, 66, 85, 432, 86, 43, 67, 157, 158,
5689 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
5690 169, 170, 460, 171, 172, 477, 173, 174, 175, 176,
5691 177, 178, 179, 466, 728, 180, 467, 181, 468, 182,
5692 183, 184, 478, 739, 185, 186, 496, 187, 497, 188,
5693 189, 190, 191, 192, 193, 194, 195, 196, 436, 235,
5694 236, 45, 68, 237, 506, 238, 507, 762, 239, 508,
5695 765, 240, 241, 242, 243, 197, 446, 198, 437, 807,
5696 808, 809, 989, 810, 990, 199, 447, 200, 448, 859,
5697 860, 861, 1017, 833, 834, 835, 993, 836, 994, 837,
5698 995, 838, 996, 839, 840, 544, 841, 842, 843, 844,
5699 845, 846, 847, 848, 849, 850, 1007, 1260, 851, 852,
5700 853, 1010, 854, 1011, 855, 1012, 856, 1013, 201, 485,
5701 883, 884, 885, 886, 887, 888, 889, 202, 491, 919,
5702 920, 921, 922, 923, 203, 488, 898, 899, 900, 1040,
5703 59, 75, 396, 397, 398, 559, 399, 560, 204, 489,
5704 907, 908, 909, 910, 911, 912, 913, 914, 205, 473,
5705 863, 864, 865, 1020, 47, 69, 285, 286, 287, 519,
5706 288, 515, 289, 516, 290, 517, 291, 520, 292, 524,
5707 293, 522, 294, 523, 206, 207, 208, 298, 209, 479,
5708 875, 876, 877, 1029, 1162, 1163, 210, 474, 53, 72,
5709 867, 868, 869, 1023, 55, 73, 357, 358, 359, 360,
5710 361, 362, 363, 543, 364, 547, 365, 546, 366, 367,
5711 548, 368, 211, 475, 871, 872, 873, 1026, 57, 74,
5712 380, 381, 382, 383, 384, 552, 385, 386, 387, 388,
5713 389, 390, 556, 300, 518, 979, 980, 981, 1086, 49,
5714 70, 315, 316, 317, 528, 318, 212, 480, 213, 481,
5715 214, 487, 894, 895, 896, 1037, 51, 71, 333, 334,
5716 335, 215, 441, 216, 442, 217, 443, 339, 533, 340,
5717 534, 341, 535, 342, 537, 343, 536, 344, 539, 345,
5718 538, 346, 532, 307, 525, 983, 984, 1089, 218, 486,
5719 891, 892, 1034, 1190, 1191, 1192, 1193, 1194, 1271, 1195,
5720 1272, 1196, 1197, 219, 220, 492, 221, 493, 947, 948,
5721 949, 1064, 938, 939, 940, 1056, 1282, 941, 1057, 942,
5722 1058, 943, 944, 945, 1060, 1310, 1311, 1312, 1322, 1339,
5723 1313, 1323, 1314, 1324, 1315, 1325, 1347, 1348, 1349, 1363,
5724 1380, 1381, 1382, 1391, 1383, 1392, 222, 494, 956, 957,
5725 958, 959, 1068, 960, 961, 1070, 223, 495, 61, 76,
5726 411, 412, 413, 414, 564, 415, 416, 566, 417, 418,
5727 419, 569, 798, 420, 570, 224, 435, 63, 77, 423,
5728 424, 425, 573, 426, 225, 501, 964, 965, 1074, 1235,
5729 1236, 1237, 1238, 1291, 1239, 1289, 1336, 1337, 1343, 1355,
5730 1356, 1357, 1366, 1358, 1359, 1360, 1361, 1370, 226, 502,
5731 971, 972, 973, 974, 975, 976
5735 Dhcp4Parser::yytable_[] =
5737 156, 234, 257, 310, 329, 78, 355, 376, 395, 408,
5738 347, 378, 933, 303, 857, 261, 379, 934, 935, 244,
5739 301, 319, 331, 1154, 369, 391, 1155, 409, 356, 377,
5740 772, 773, 1170, 29, 1376, 30, 796, 31, 777, 258,
5741 262, 259, 741, 1032, 393, 394, 1033, 1035, 227, 228,
5742 1036, 260, 229, 421, 422, 230, 231, 232, 233, 791,
5743 1377, 263, 132, 133, 1376, 245, 302, 320, 332, 81,
5744 370, 392, 127, 410, 28, 723, 724, 725, 726, 299,
5745 314, 330, 828, 829, 830, 304, 40, 336, 393, 394,
5746 1377, 84, 308, 132, 133, 305, 1350, 337, 42, 1351,
5747 1352, 1353, 1354, 253, 254, 306, 433, 338, 428, 255,
5748 309, 434, 504, 741, 727, 284, 264, 505, 265, 760,
5749 761, 266, 513, 950, 951, 952, 155, 514, 267, 1075,
5750 44, 268, 1076, 269, 270, 271, 132, 133, 272, 273,
5751 526, 274, 763, 764, 427, 527, 275, 132, 133, 276,
5752 530, 277, 278, 279, 280, 531, 281, 282, 46, 283,
5753 561, 571, 311, 312, 295, 562, 572, 296, 48, 297,
5754 50, 313, 52, 953, 429, 901, 902, 903, 904, 905,
5755 906, 926, 1257, 1258, 1259, 927, 928, 929, 930, 91,
5756 92, 93, 94, 95, 96, 931, 54, 575, 56, 93,
5757 94, 95, 576, 58, 155, 797, 504, 878, 879, 880,
5758 881, 986, 882, 1279, 1280, 1281, 575, 966, 967, 968,
5759 969, 987, 60, 101, 102, 103, 104, 105, 106, 107,
5760 108, 109, 110, 1303, 155, 805, 806, 115, 116, 117,
5761 118, 119, 120, 121, 122, 123, 124, 155, 246, 247,
5762 248, 62, 127, 32, 33, 34, 35, 513, 155, 348,
5763 127, 126, 988, 1154, 129, 130, 1155, 735, 736, 737,
5764 738, 249, 1170, 132, 133, 250, 251, 252, 134, 135,
5765 136, 132, 133, 253, 254, 93, 94, 95, 96, 255,
5766 321, 139, 812, 813, 1344, 430, 431, 1345, 438, 256,
5767 322, 323, 324, 325, 326, 327, 328, 132, 133, 132,
5768 133, 1117, 439, 349, 440, 350, 351, 101, 102, 103,
5769 352, 353, 354, 349, 933, 444, 933, 445, 449, 934,
5770 935, 934, 935, 132, 133, 349, 371, 350, 351, 372,
5771 373, 374, 450, 132, 133, 126, 127, 349, 451, 915,
5772 916, 917, 148, 149, 991, 132, 133, 452, 540, 992,
5773 453, 1304, 1305, 1306, 375, 132, 133, 132, 133, 577,
5774 578, 1014, 1014, 1049, 542, 454, 1015, 1016, 1050, 1173,
5775 1174, 1175, 1176, 1054, 155, 1062, 1071, 541, 1055, 455,
5776 1063, 1072, 155, 456, 811, 812, 813, 814, 815, 816,
5777 817, 818, 819, 820, 821, 822, 823, 824, 825, 457,
5778 458, 459, 826, 827, 828, 829, 830, 831, 155, 571,
5779 155, 1081, 1373, 1374, 1073, 461, 1082, 1014, 1228, 526,
5780 1229, 1230, 1265, 1269, 1266, 561, 1062, 156, 1270, 462,
5781 1278, 1286, 1292, 551, 155, 530, 234, 1293, 349, 463,
5782 1295, 1326, 1371, 1393, 155, 464, 1327, 1372, 1394, 257,
5783 465, 469, 470, 310, 244, 471, 155, 472, 476, 482,
5784 303, 483, 261, 484, 329, 490, 155, 301, 155, 498,
5785 499, 319, 500, 503, 355, 509, 510, 511, 512, 521,
5786 529, 376, 331, 545, 549, 378, 258, 262, 259, 550,
5787 379, 553, 369, 554, 408, 555, 356, 558, 260, 391,
5788 245, 557, 563, 377, 565, 567, 568, 574, 263, 580,
5789 579, 581, 409, 302, 582, 583, 584, 320, 585, 586,
5790 587, 588, 589, 590, 591, 592, 299, 593, 332, 594,
5791 314, 595, 304, 596, 597, 598, 599, 606, 370, 612,
5792 600, 330, 305, 601, 602, 392, 603, 336, 604, 605,
5793 607, 608, 306, 613, 609, 610, 614, 337, 410, 132,
5794 133, 611, 284, 264, 615, 265, 616, 338, 266, 155,
5795 618, 619, 617, 620, 621, 267, 622, 623, 268, 624,
5796 269, 270, 271, 625, 626, 272, 273, 627, 274, 631,
5797 628, 629, 630, 275, 632, 633, 276, 634, 277, 278,
5798 279, 280, 635, 281, 282, 1296, 283, 636, 637, 638,
5799 639, 295, 311, 312, 296, 640, 297, 641, 642, 643,
5800 644, 313, 645, 647, 400, 401, 402, 403, 404, 405,
5801 406, 407, 646, 648, 650, 156, 651, 234, 652, 658,
5802 653, 654, 801, 655, 656, 659, 660, 661, 662, 663,
5803 664, 665, 666, 667, 668, 244, 1, 2, 3, 4,
5804 5, 6, 7, 8, 9, 10, 11, 12, 13, 670,
5805 155, 673, 918, 932, 674, 671, 408, 675, 676, 677,
5806 970, 678, 684, 679, 680, 682, 683, 685, 686, 87,
5807 924, 936, 88, 954, 409, 687, 690, 694, 688, 696,
5808 697, 245, 700, 702, 89, 691, 692, 90, 91, 92,
5809 93, 94, 95, 96, 97, 98, 99, 100, 693, 705,
5810 699, 701, 703, 704, 706, 708, 711, 799, 721, 1338,
5811 709, 712, 713, 714, 715, 719, 925, 937, 716, 955,
5812 410, 720, 101, 102, 103, 104, 105, 106, 107, 108,
5813 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
5814 119, 120, 121, 122, 123, 124, 125, 717, 718, 722,
5815 126, 127, 729, 730, 731, 732, 733, 740, 734, 743,
5816 30, 744, 128, 129, 130, 745, 746, 747, 754, 131,
5817 748, 749, 132, 133, 750, 751, 752, 134, 135, 136,
5818 137, 138, 753, 755, 756, 757, 758, 766, 769, 767,
5819 139, 768, 770, 771, 774, 775, 800, 776, 997, 778,
5820 140, 779, 780, 141, 781, 782, 783, 784, 785, 858,
5821 142, 143, 786, 787, 788, 144, 145, 789, 862, 866,
5822 870, 790, 792, 794, 874, 795, 890, 893, 897, 946,
5823 963, 978, 146, 982, 998, 999, 147, 1000, 1001, 1002,
5824 1003, 1004, 1005, 1006, 1008, 1009, 1019, 1100, 1018, 1022,
5825 1021, 148, 149, 150, 151, 152, 153, 1024, 1025, 1027,
5826 1028, 1031, 1030, 1043, 1039, 154, 1038, 1042, 1041, 1044,
5827 1045, 1046, 1047, 1048, 1051, 1052, 1053, 1059, 1061, 1066,
5828 1088, 1065, 1067, 155, 1069, 1077, 1078, 1079, 1080, 793,
5829 1083, 1087, 1092, 1091, 1090, 1093, 1095, 1096, 1097, 1098,
5830 1099, 1109, 1112, 1101, 1113, 1114, 1115, 1103, 1102, 1104,
5831 1105, 1106, 1107, 1108, 1214, 1111, 1110, 1203, 1210, 1204,
5832 1205, 1215, 1206, 257, 1207, 1208, 355, 1216, 1218, 376,
5833 1224, 1226, 1125, 378, 303, 1211, 261, 1177, 379, 1212,
5834 329, 301, 1183, 395, 369, 1129, 1217, 391, 356, 1219,
5835 1165, 377, 1223, 1225, 1153, 1185, 1241, 918, 331, 1182,
5836 258, 262, 259, 1242, 1243, 932, 1244, 932, 1246, 1126,
5837 1130, 1127, 260, 1247, 1178, 924, 1179, 1231, 1250, 1251,
5838 1252, 1128, 263, 936, 970, 936, 1180, 302, 1267, 310,
5839 370, 1131, 954, 392, 1268, 1233, 1166, 1253, 1254, 1232,
5840 299, 1186, 1255, 1273, 332, 1256, 304, 319, 1274, 1164,
5841 1261, 1262, 1263, 1275, 1184, 1167, 305, 330, 1264, 1276,
5842 1187, 925, 1277, 336, 1283, 1168, 306, 1285, 1284, 937,
5843 1188, 937, 1287, 337, 1290, 1169, 284, 264, 955, 265,
5844 1189, 1234, 266, 338, 1298, 1152, 1132, 1299, 1133, 267,
5845 1181, 1134, 268, 320, 269, 270, 271, 1294, 1135, 272,
5846 273, 1136, 274, 1137, 1138, 1139, 314, 275, 1140, 1141,
5847 276, 1142, 277, 278, 279, 280, 1143, 281, 282, 1144,
5848 283, 1145, 1146, 1147, 1148, 295, 1149, 1150, 296, 1151,
5849 297, 1156, 1157, 1316, 1159, 1318, 1330, 1160, 1328, 1161,
5850 1158, 1331, 1332, 1333, 804, 1342, 1365, 1300, 1335, 1346,
5851 1364, 1367, 1368, 1369, 1385, 1389, 1317, 1301, 1397, 1398,
5852 802, 1320, 649, 1094, 1321, 1118, 657, 985, 1329, 1340,
5853 1341, 1172, 1116, 1387, 1386, 1388, 1395, 1288, 1396, 1400,
5854 1401, 1213, 1202, 1201, 1209, 1120, 1119, 1171, 311, 312,
5855 1297, 698, 669, 689, 1249, 1248, 1302, 313, 1200, 1122,
5856 1198, 1121, 695, 672, 1124, 1221, 1220, 1123, 1222, 1334,
5857 1384, 1399, 1125, 681, 707, 962, 1227, 803, 1319, 1177,
5858 1199, 710, 1362, 1390, 1183, 1129, 1240, 0, 1307, 0,
5859 1165, 1245, 0, 0, 1153, 1231, 0, 1185, 0, 0,
5860 0, 1182, 0, 0, 0, 0, 1308, 0, 0, 1126,
5861 1130, 1127, 0, 1233, 0, 0, 1178, 1232, 1179, 0,
5862 0, 1128, 0, 0, 0, 0, 0, 0, 1180, 1307,
5863 0, 1131, 0, 0, 0, 0, 1166, 0, 0, 0,
5864 0, 0, 0, 1186, 0, 0, 0, 1308, 0, 1164,
5865 0, 0, 1309, 0, 0, 1167, 1184, 0, 0, 1234,
5866 0, 0, 1187, 0, 0, 1168, 1375, 0, 0, 0,
5867 0, 0, 1188, 0, 0, 1169, 0, 0, 0, 0,
5868 0, 0, 1189, 0, 1378, 1152, 1132, 0, 1133, 0,
5869 0, 1134, 1181, 1309, 0, 0, 1375, 0, 1135, 0,
5870 0, 1136, 0, 1137, 1138, 1139, 0, 0, 1140, 1141,
5871 0, 1142, 0, 0, 1378, 0, 1143, 0, 0, 1144,
5872 0, 1145, 1146, 1147, 1148, 0, 1149, 1150, 0, 1151,
5873 1379, 1156, 1157, 0, 1159, 0, 0, 1160, 0, 1161,
5874 1158, 91, 92, 93, 94, 95, 96, 0, 0, 0,
5875 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5876 1379, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5877 0, 0, 0, 0, 0, 101, 102, 103, 104, 105,
5878 106, 107, 108, 109, 110, 0, 0, 0, 0, 115,
5879 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
5880 0, 0, 0, 0, 127, 349, 0, 0, 0, 0,
5881 0, 0, 0, 0, 0, 0, 129, 130, 0, 0,
5882 0, 0, 0, 0, 0, 132, 133, 0, 251, 0,
5883 134, 135, 136, 0, 0, 253, 254, 0, 0, 0,
5884 0, 255, 0, 0, 0, 0, 0, 0, 0, 0,
5885 0, 256, 0, 0, 0, 0, 0, 0, 0, 0,
5886 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5887 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5889 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5890 0, 0, 0, 0, 148, 149, 0, 0, 0, 0,
5891 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5893 0, 0, 0, 0, 0, 0, 155
5897 Dhcp4Parser::yycheck_[] =
5899 67, 68, 69, 70, 71, 64, 73, 74, 75, 76,
5900 72, 74, 750, 69, 720, 69, 74, 750, 750, 68,
5901 69, 70, 71, 1029, 73, 74, 1029, 76, 73, 74,
5902 665, 666, 1029, 5, 1363, 7, 18, 9, 673, 69,
5903 69, 69, 626, 3, 143, 144, 6, 3, 15, 16,
5904 6, 69, 19, 12, 13, 22, 23, 24, 25, 694,
5905 1363, 69, 114, 115, 1393, 68, 69, 70, 71, 225,
5906 73, 74, 93, 76, 0, 189, 190, 191, 192, 69,
5907 70, 71, 60, 61, 62, 69, 7, 71, 143, 144,
5908 1393, 10, 113, 114, 115, 69, 200, 71, 7, 203,
5909 204, 205, 206, 124, 125, 69, 3, 71, 3, 130,
5910 131, 8, 3, 697, 228, 69, 69, 8, 69, 17,
5911 18, 69, 3, 175, 176, 177, 225, 8, 69, 3,
5912 7, 69, 6, 69, 69, 69, 114, 115, 69, 69,
5913 3, 69, 20, 21, 6, 8, 69, 114, 115, 69,
5914 3, 69, 69, 69, 69, 8, 69, 69, 7, 69,
5915 3, 3, 70, 70, 69, 8, 8, 69, 7, 69,
5916 7, 70, 7, 225, 4, 146, 147, 148, 149, 150,
5917 151, 159, 55, 56, 57, 163, 164, 165, 166, 30,
5918 31, 32, 33, 34, 35, 173, 7, 3, 7, 32,
5919 33, 34, 8, 7, 225, 187, 3, 134, 135, 136,
5920 137, 8, 139, 160, 161, 162, 3, 208, 209, 210,
5921 211, 8, 7, 64, 65, 66, 67, 68, 69, 70,
5922 71, 72, 73, 40, 225, 27, 28, 78, 79, 80,
5923 81, 82, 83, 84, 85, 86, 87, 225, 89, 90,
5924 91, 7, 93, 225, 226, 227, 228, 3, 225, 40,
5925 93, 92, 8, 1269, 105, 106, 1269, 107, 108, 109,
5926 110, 112, 1269, 114, 115, 116, 117, 118, 119, 120,
5927 121, 114, 115, 124, 125, 32, 33, 34, 35, 130,
5928 123, 132, 41, 42, 3, 8, 3, 6, 4, 140,
5929 133, 134, 135, 136, 137, 138, 139, 114, 115, 114,
5930 115, 1017, 4, 94, 4, 96, 97, 64, 65, 66,
5931 101, 102, 103, 94, 1062, 4, 1064, 4, 4, 1062,
5932 1062, 1064, 1064, 114, 115, 94, 95, 96, 97, 98,
5933 99, 100, 4, 114, 115, 92, 93, 94, 4, 154,
5934 155, 156, 193, 194, 3, 114, 115, 4, 8, 8,
5935 4, 168, 169, 170, 123, 114, 115, 114, 115, 428,
5936 429, 3, 3, 3, 8, 4, 8, 8, 8, 126,
5937 127, 128, 129, 3, 225, 3, 3, 3, 8, 4,
5938 8, 8, 225, 4, 40, 41, 42, 43, 44, 45,
5939 46, 47, 48, 49, 50, 51, 52, 53, 54, 4,
5940 4, 4, 58, 59, 60, 61, 62, 63, 225, 3,
5941 225, 3, 171, 172, 8, 4, 8, 3, 199, 3,
5942 201, 202, 8, 3, 8, 3, 3, 504, 8, 4,
5943 8, 8, 3, 3, 225, 3, 513, 8, 94, 4,
5944 8, 3, 3, 3, 225, 4, 8, 8, 8, 526,
5945 4, 4, 4, 530, 513, 4, 225, 4, 4, 4,
5946 526, 4, 526, 4, 541, 4, 225, 526, 225, 4,
5947 4, 530, 4, 4, 551, 4, 4, 4, 4, 4,
5948 4, 558, 541, 4, 4, 558, 526, 526, 526, 8,
5949 558, 4, 551, 4, 571, 4, 551, 3, 526, 558,
5950 513, 8, 4, 558, 4, 4, 4, 4, 526, 4,
5951 225, 4, 571, 526, 4, 4, 228, 530, 228, 228,
5952 4, 4, 4, 226, 228, 4, 526, 4, 541, 4,
5953 530, 226, 526, 226, 226, 226, 226, 4, 551, 4,
5954 228, 541, 526, 227, 227, 558, 227, 541, 226, 226,
5955 226, 226, 526, 4, 228, 228, 4, 541, 571, 114,
5956 115, 228, 526, 526, 228, 526, 228, 541, 526, 225,
5957 228, 4, 227, 4, 4, 526, 226, 4, 526, 4,
5958 526, 526, 526, 4, 4, 526, 526, 4, 526, 4,
5959 228, 228, 228, 526, 4, 4, 526, 4, 526, 526,
5960 526, 526, 4, 526, 526, 1250, 526, 226, 4, 4,
5961 4, 526, 530, 530, 526, 4, 526, 4, 4, 4,
5962 228, 530, 228, 4, 179, 180, 181, 182, 183, 184,
5963 185, 186, 228, 4, 4, 712, 4, 714, 4, 4,
5964 228, 228, 711, 226, 226, 4, 4, 4, 4, 4,
5965 226, 4, 4, 4, 4, 714, 212, 213, 214, 215,
5966 216, 217, 218, 219, 220, 221, 222, 223, 224, 4,
5967 225, 4, 749, 750, 4, 226, 753, 4, 4, 4,
5968 757, 4, 226, 4, 4, 4, 4, 4, 4, 11,
5969 749, 750, 14, 752, 753, 4, 4, 4, 228, 4,
5970 4, 714, 4, 4, 26, 228, 228, 29, 30, 31,
5971 32, 33, 34, 35, 36, 37, 38, 39, 228, 4,
5972 228, 226, 226, 226, 4, 4, 4, 188, 5, 167,
5973 226, 7, 7, 7, 7, 7, 749, 750, 225, 752,
5974 753, 7, 64, 65, 66, 67, 68, 69, 70, 71,
5975 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
5976 82, 83, 84, 85, 86, 87, 88, 225, 225, 225,
5977 92, 93, 225, 225, 5, 5, 5, 5, 225, 225,
5978 7, 5, 104, 105, 106, 5, 5, 5, 225, 111,
5979 7, 7, 114, 115, 7, 5, 7, 119, 120, 121,
5980 122, 123, 7, 225, 5, 7, 5, 225, 5, 225,
5981 132, 225, 225, 225, 225, 7, 5, 225, 4, 225,
5982 142, 225, 225, 145, 225, 225, 225, 225, 225, 7,
5983 152, 153, 225, 225, 225, 157, 158, 225, 7, 7,
5984 7, 225, 225, 225, 7, 225, 7, 7, 7, 7,
5985 7, 7, 174, 141, 4, 4, 178, 4, 4, 4,
5986 4, 4, 4, 4, 4, 4, 3, 228, 6, 3,
5987 6, 193, 194, 195, 196, 197, 198, 6, 3, 6,
5988 3, 3, 6, 4, 3, 207, 6, 3, 6, 4,
5989 4, 4, 4, 4, 4, 4, 4, 4, 4, 3,
5990 3, 6, 4, 225, 4, 4, 4, 4, 4, 697,
5991 225, 6, 4, 6, 8, 4, 4, 4, 4, 4,
5992 226, 4, 4, 226, 4, 4, 4, 226, 228, 226,
5993 226, 226, 226, 226, 4, 226, 228, 226, 228, 226,
5994 226, 4, 226, 1020, 226, 226, 1023, 4, 4, 1026,
5995 4, 4, 1029, 1026, 1020, 226, 1020, 1034, 1026, 226,
5996 1037, 1020, 1034, 1040, 1023, 1029, 226, 1026, 1023, 228,
5997 1029, 1026, 228, 226, 1029, 1034, 228, 1054, 1037, 1034,
5998 1020, 1020, 1020, 228, 228, 1062, 228, 1064, 6, 1029,
5999 1029, 1029, 1020, 3, 1034, 1054, 1034, 1074, 4, 225,
6000 225, 1029, 1020, 1062, 1081, 1064, 1034, 1020, 8, 1086,
6001 1023, 1029, 1071, 1026, 8, 1074, 1029, 225, 225, 1074,
6002 1020, 1034, 225, 4, 1037, 225, 1020, 1086, 4, 1029,
6003 225, 225, 225, 8, 1034, 1029, 1020, 1037, 225, 3,
6004 1034, 1054, 8, 1037, 225, 1029, 1020, 7, 225, 1062,
6005 1034, 1064, 225, 1037, 4, 1029, 1020, 1020, 1071, 1020,
6006 1034, 1074, 1020, 1037, 4, 1029, 1029, 4, 1029, 1020,
6007 1034, 1029, 1020, 1086, 1020, 1020, 1020, 225, 1029, 1020,
6008 1020, 1029, 1020, 1029, 1029, 1029, 1086, 1020, 1029, 1029,
6009 1020, 1029, 1020, 1020, 1020, 1020, 1029, 1020, 1020, 1029,
6010 1020, 1029, 1029, 1029, 1029, 1020, 1029, 1029, 1020, 1029,
6011 1020, 1029, 1029, 4, 1029, 4, 4, 1029, 5, 1029,
6012 1029, 4, 4, 4, 714, 5, 3, 228, 7, 7,
6013 6, 4, 4, 4, 4, 4, 226, 228, 4, 4,
6014 712, 225, 504, 991, 225, 1019, 513, 800, 225, 225,
6015 225, 1032, 1014, 226, 228, 226, 225, 1226, 225, 225,
6016 225, 1054, 1042, 1040, 1049, 1022, 1020, 1031, 1086, 1086,
6017 1269, 561, 526, 551, 1088, 1086, 1276, 1086, 1039, 1025,
6018 1035, 1023, 558, 530, 1028, 1064, 1062, 1026, 1066, 1326,
6019 1365, 1393, 1269, 541, 571, 753, 1071, 713, 1292, 1276,
6020 1037, 575, 1344, 1371, 1276, 1269, 1075, -1, 1285, -1,
6021 1269, 1081, -1, -1, 1269, 1292, -1, 1276, -1, -1,
6022 -1, 1276, -1, -1, -1, -1, 1285, -1, -1, 1269,
6023 1269, 1269, -1, 1292, -1, -1, 1276, 1292, 1276, -1,
6024 -1, 1269, -1, -1, -1, -1, -1, -1, 1276, 1326,
6025 -1, 1269, -1, -1, -1, -1, 1269, -1, -1, -1,
6026 -1, -1, -1, 1276, -1, -1, -1, 1326, -1, 1269,
6027 -1, -1, 1285, -1, -1, 1269, 1276, -1, -1, 1292,
6028 -1, -1, 1276, -1, -1, 1269, 1363, -1, -1, -1,
6029 -1, -1, 1276, -1, -1, 1269, -1, -1, -1, -1,
6030 -1, -1, 1276, -1, 1363, 1269, 1269, -1, 1269, -1,
6031 -1, 1269, 1276, 1326, -1, -1, 1393, -1, 1269, -1,
6032 -1, 1269, -1, 1269, 1269, 1269, -1, -1, 1269, 1269,
6033 -1, 1269, -1, -1, 1393, -1, 1269, -1, -1, 1269,
6034 -1, 1269, 1269, 1269, 1269, -1, 1269, 1269, -1, 1269,
6035 1363, 1269, 1269, -1, 1269, -1, -1, 1269, -1, 1269,
6036 1269, 30, 31, 32, 33, 34, 35, -1, -1, -1,
6037 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6038 1393, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6039 -1, -1, -1, -1, -1, 64, 65, 66, 67, 68,
6040 69, 70, 71, 72, 73, -1, -1, -1, -1, 78,
6041 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
6042 -1, -1, -1, -1, 93, 94, -1, -1, -1, -1,
6043 -1, -1, -1, -1, -1, -1, 105, 106, -1, -1,
6044 -1, -1, -1, -1, -1, 114, 115, -1, 117, -1,
6045 119, 120, 121, -1, -1, 124, 125, -1, -1, -1,
6046 -1, 130, -1, -1, -1, -1, -1, -1, -1, -1,
6047 -1, 140, -1, -1, -1, -1, -1, -1, -1, -1,
6048 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6051 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6052 -1, -1, -1, -1, 193, 194, -1, -1, -1, -1,
6053 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6055 -1, -1, -1, -1, -1, -1, 225
6059 Dhcp4Parser::yystos_[] =
6061 0, 212, 213, 214, 215, 216, 217, 218, 219, 220,
6062 221, 222, 223, 224, 230, 231, 232, 233, 234, 235,
6063 236, 237, 238, 239, 240, 241, 242, 243, 0, 5,
6064 7, 9, 225, 226, 227, 228, 244, 245, 246, 251,
6065 7, 260, 7, 265, 7, 320, 7, 433, 7, 518,
6066 7, 535, 7, 467, 7, 473, 7, 497, 7, 409,
6067 7, 637, 7, 656, 252, 247, 261, 266, 321, 434,
6068 519, 536, 468, 474, 498, 410, 638, 657, 244, 253,
6069 254, 225, 249, 250, 10, 262, 264, 11, 14, 26,
6070 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
6071 39, 64, 65, 66, 67, 68, 69, 70, 71, 72,
6072 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
6073 83, 84, 85, 86, 87, 88, 92, 93, 104, 105,
6074 106, 111, 114, 115, 119, 120, 121, 122, 123, 132,
6075 142, 145, 152, 153, 157, 158, 174, 178, 193, 194,
6076 195, 196, 197, 198, 207, 225, 259, 267, 268, 269,
6077 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
6078 280, 282, 283, 285, 286, 287, 288, 289, 290, 291,
6079 294, 296, 298, 299, 300, 303, 304, 306, 308, 309,
6080 310, 311, 312, 313, 314, 315, 316, 334, 336, 344,
6081 346, 387, 396, 403, 417, 427, 453, 454, 455, 457,
6082 465, 491, 525, 527, 529, 540, 542, 544, 567, 582,
6083 583, 585, 625, 635, 654, 663, 687, 15, 16, 19,
6084 22, 23, 24, 25, 259, 318, 319, 322, 324, 327,
6085 330, 331, 332, 333, 525, 527, 89, 90, 91, 112,
6086 116, 117, 118, 124, 125, 130, 140, 259, 269, 270,
6087 271, 272, 273, 274, 275, 276, 277, 278, 283, 286,
6088 287, 288, 289, 290, 291, 294, 296, 298, 299, 300,
6089 303, 304, 306, 308, 314, 435, 436, 437, 439, 441,
6090 443, 445, 447, 449, 451, 453, 454, 455, 456, 491,
6091 512, 525, 527, 529, 540, 542, 544, 562, 113, 131,
6092 259, 447, 449, 451, 491, 520, 521, 522, 524, 525,
6093 527, 123, 133, 134, 135, 136, 137, 138, 139, 259,
6094 491, 525, 527, 537, 538, 539, 540, 542, 544, 546,
6095 548, 550, 552, 554, 556, 558, 560, 465, 40, 94,
6096 96, 97, 101, 102, 103, 259, 363, 475, 476, 477,
6097 478, 479, 480, 481, 483, 485, 487, 488, 490, 525,
6098 527, 95, 98, 99, 100, 123, 259, 363, 479, 485,
6099 499, 500, 501, 502, 503, 505, 506, 507, 508, 509,
6100 510, 525, 527, 143, 144, 259, 411, 412, 413, 415,
6101 179, 180, 181, 182, 183, 184, 185, 186, 259, 525,
6102 527, 639, 640, 641, 642, 644, 645, 647, 648, 649,
6103 652, 12, 13, 658, 659, 660, 662, 6, 3, 4,
6104 8, 3, 263, 3, 8, 655, 317, 337, 4, 4,
6105 4, 541, 543, 545, 4, 4, 335, 345, 347, 4,
6106 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
6107 281, 4, 4, 4, 4, 4, 292, 295, 297, 4,
6108 4, 4, 4, 428, 466, 492, 4, 284, 301, 458,
6109 526, 528, 4, 4, 4, 388, 568, 530, 404, 418,
6110 4, 397, 584, 586, 626, 636, 305, 307, 4, 4,
6111 4, 664, 688, 4, 3, 8, 323, 325, 328, 4,
6112 4, 4, 4, 3, 8, 440, 442, 444, 513, 438,
6113 446, 4, 450, 452, 448, 563, 3, 8, 523, 4,
6114 3, 8, 561, 547, 549, 551, 555, 553, 559, 557,
6115 8, 3, 8, 482, 364, 4, 486, 484, 489, 4,
6116 8, 3, 504, 4, 4, 4, 511, 8, 3, 414,
6117 416, 3, 8, 4, 643, 4, 646, 4, 4, 650,
6118 653, 3, 8, 661, 4, 3, 8, 244, 244, 225,
6119 4, 4, 4, 4, 228, 228, 228, 4, 4, 4,
6120 226, 228, 4, 4, 4, 226, 226, 226, 226, 226,
6121 228, 227, 227, 227, 226, 226, 4, 226, 226, 228,
6122 228, 228, 4, 4, 4, 228, 228, 227, 228, 4,
6123 4, 4, 226, 4, 4, 4, 4, 4, 228, 228,
6124 228, 4, 4, 4, 4, 4, 226, 4, 4, 4,
6125 4, 4, 4, 4, 228, 228, 228, 4, 4, 268,
6126 4, 4, 4, 228, 228, 226, 226, 319, 4, 4,
6127 4, 4, 4, 4, 226, 4, 4, 4, 4, 436,
6128 4, 226, 521, 4, 4, 4, 4, 4, 4, 4,
6129 4, 539, 4, 4, 226, 4, 4, 4, 228, 477,
6130 4, 228, 228, 228, 4, 501, 4, 4, 412, 228,
6131 4, 226, 4, 226, 226, 4, 4, 640, 4, 226,
6132 659, 4, 7, 7, 7, 7, 225, 225, 225, 7,
6133 7, 5, 225, 189, 190, 191, 192, 228, 293, 225,
6134 225, 5, 5, 5, 225, 107, 108, 109, 110, 302,
6135 5, 246, 248, 225, 5, 5, 5, 5, 7, 7,
6136 7, 5, 7, 7, 225, 225, 5, 7, 5, 255,
6137 17, 18, 326, 20, 21, 329, 225, 225, 225, 5,
6138 225, 225, 255, 255, 225, 7, 225, 255, 225, 225,
6139 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
6140 225, 255, 225, 248, 225, 225, 18, 187, 651, 188,
6141 5, 244, 267, 658, 318, 27, 28, 338, 339, 340,
6142 342, 40, 41, 42, 43, 44, 45, 46, 47, 48,
6143 49, 50, 51, 52, 53, 54, 58, 59, 60, 61,
6144 62, 63, 259, 352, 353, 354, 356, 358, 360, 362,
6145 363, 365, 366, 367, 368, 369, 370, 371, 372, 373,
6146 374, 377, 378, 379, 381, 383, 385, 352, 7, 348,
6147 349, 350, 7, 429, 430, 431, 7, 469, 470, 471,
6148 7, 493, 494, 495, 7, 459, 460, 461, 134, 135,
6149 136, 137, 139, 389, 390, 391, 392, 393, 394, 395,
6150 7, 569, 570, 7, 531, 532, 533, 7, 405, 406,
6151 407, 146, 147, 148, 149, 150, 151, 419, 420, 421,
6152 422, 423, 424, 425, 426, 154, 155, 156, 259, 398,
6153 399, 400, 401, 402, 525, 527, 159, 163, 164, 165,
6154 166, 173, 259, 379, 381, 383, 525, 527, 591, 592,
6155 593, 596, 598, 600, 601, 602, 7, 587, 588, 589,
6156 175, 176, 177, 225, 525, 527, 627, 628, 629, 630,
6157 632, 633, 639, 7, 665, 666, 208, 209, 210, 211,
6158 259, 689, 690, 691, 692, 693, 694, 256, 7, 514,
6159 515, 516, 141, 564, 565, 348, 8, 8, 8, 341,
6160 343, 3, 8, 355, 357, 359, 361, 4, 4, 4,
6161 4, 4, 4, 4, 4, 4, 4, 375, 4, 4,
6162 380, 382, 384, 386, 3, 8, 8, 351, 6, 3,
6163 432, 6, 3, 472, 6, 3, 496, 6, 3, 462,
6164 6, 3, 3, 6, 571, 3, 6, 534, 6, 3,
6165 408, 6, 3, 4, 4, 4, 4, 4, 4, 3,
6166 8, 4, 4, 4, 3, 8, 594, 597, 599, 4,
6167 603, 4, 3, 8, 590, 6, 3, 4, 631, 4,
6168 634, 3, 8, 8, 667, 3, 6, 4, 4, 4,
6169 4, 3, 8, 225, 257, 258, 517, 6, 3, 566,
6170 8, 6, 4, 4, 339, 4, 4, 4, 4, 226,
6171 228, 226, 228, 226, 226, 226, 226, 226, 226, 4,
6172 228, 226, 4, 4, 4, 4, 353, 352, 350, 435,
6173 431, 475, 471, 499, 495, 259, 269, 270, 271, 272,
6174 273, 274, 275, 276, 277, 278, 283, 286, 287, 288,
6175 289, 290, 291, 294, 296, 298, 299, 300, 303, 304,
6176 306, 308, 314, 363, 427, 445, 447, 449, 451, 453,
6177 454, 455, 463, 464, 491, 525, 527, 540, 542, 544,
6178 562, 461, 390, 126, 127, 128, 129, 259, 269, 270,
6179 271, 314, 363, 465, 491, 525, 527, 540, 542, 544,
6180 572, 573, 574, 575, 576, 578, 580, 581, 570, 537,
6181 533, 411, 407, 226, 226, 226, 226, 226, 226, 420,
6182 228, 226, 226, 399, 4, 4, 4, 226, 4, 228,
6183 592, 591, 589, 228, 4, 226, 4, 628, 199, 201,
6184 202, 259, 363, 525, 527, 668, 669, 670, 671, 673,
6185 666, 228, 228, 228, 228, 690, 6, 3, 520, 516,
6186 4, 225, 225, 225, 225, 225, 225, 55, 56, 57,
6187 376, 225, 225, 225, 225, 8, 8, 8, 8, 3,
6188 8, 577, 579, 4, 4, 8, 3, 8, 8, 160,
6189 161, 162, 595, 225, 225, 7, 8, 225, 244, 674,
6190 4, 672, 3, 8, 225, 8, 255, 464, 4, 4,
6191 228, 228, 574, 40, 168, 169, 170, 259, 525, 527,
6192 604, 605, 606, 609, 611, 613, 4, 226, 4, 669,
6193 225, 225, 607, 610, 612, 614, 3, 8, 5, 225,
6194 4, 4, 4, 4, 605, 7, 675, 676, 167, 608,
6195 225, 225, 5, 677, 3, 6, 7, 615, 616, 617,
6196 200, 203, 204, 205, 206, 678, 679, 680, 682, 683,
6197 684, 685, 676, 618, 6, 3, 681, 4, 4, 4,
6198 686, 3, 8, 171, 172, 259, 356, 358, 525, 527,
6199 619, 620, 621, 623, 617, 4, 228, 226, 226, 4,
6200 679, 622, 624, 3, 8, 225, 225, 4, 4, 620,
6205 Dhcp4Parser::yyr1_[] =
6207 0, 229, 231, 230, 232, 230, 233, 230, 234, 230,
6208 235, 230, 236, 230, 237, 230, 238, 230, 239, 230,
6209 240, 230, 241, 230, 242, 230, 243, 230, 244, 244,
6210 244, 244, 244, 244, 244, 245, 247, 246, 248, 249,
6211 249, 250, 250, 250, 252, 251, 253, 253, 254, 254,
6212 254, 256, 255, 257, 257, 258, 258, 258, 259, 261,
6213 260, 263, 262, 262, 264, 266, 265, 267, 267, 267,
6214 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6215 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6216 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6217 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6218 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6219 268, 268, 268, 268, 268, 268, 268, 268, 268, 268,
6220 268, 268, 268, 268, 268, 268, 268, 268, 268, 269,
6221 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
6222 281, 280, 282, 284, 283, 285, 286, 287, 288, 289,
6223 290, 292, 291, 293, 293, 293, 293, 293, 295, 294,
6224 297, 296, 298, 299, 301, 300, 302, 302, 302, 302,
6225 303, 305, 304, 307, 306, 308, 309, 310, 311, 312,
6226 313, 314, 315, 317, 316, 318, 318, 318, 319, 319,
6227 319, 319, 319, 319, 319, 319, 319, 319, 321, 320,
6228 323, 322, 325, 324, 326, 326, 328, 327, 329, 329,
6229 330, 331, 332, 333, 335, 334, 337, 336, 338, 338,
6230 338, 339, 339, 341, 340, 343, 342, 345, 344, 347,
6231 346, 348, 348, 349, 349, 349, 351, 350, 352, 352,
6232 352, 353, 353, 353, 353, 353, 353, 353, 353, 353,
6233 353, 353, 353, 353, 353, 353, 353, 353, 353, 353,
6234 353, 353, 353, 353, 355, 354, 357, 356, 359, 358,
6235 361, 360, 362, 364, 363, 365, 366, 367, 368, 369,
6236 370, 371, 372, 373, 375, 374, 376, 376, 376, 377,
6237 378, 380, 379, 382, 381, 384, 383, 386, 385, 388,
6238 387, 389, 389, 389, 390, 390, 390, 390, 390, 391,
6239 392, 393, 394, 395, 397, 396, 398, 398, 398, 399,
6240 399, 399, 399, 399, 399, 400, 401, 402, 404, 403,
6241 405, 405, 406, 406, 406, 408, 407, 410, 409, 411,
6242 411, 411, 411, 412, 412, 414, 413, 416, 415, 418,
6243 417, 419, 419, 419, 420, 420, 420, 420, 420, 420,
6244 421, 422, 423, 424, 425, 426, 428, 427, 429, 429,
6245 430, 430, 430, 432, 431, 434, 433, 435, 435, 435,
6246 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
6247 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
6248 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
6249 436, 436, 436, 436, 436, 436, 436, 436, 436, 436,
6250 436, 436, 436, 436, 436, 436, 436, 436, 436, 438,
6251 437, 440, 439, 442, 441, 444, 443, 446, 445, 448,
6252 447, 450, 449, 452, 451, 453, 454, 455, 456, 458,
6253 457, 459, 459, 460, 460, 460, 462, 461, 463, 463,
6254 463, 464, 464, 464, 464, 464, 464, 464, 464, 464,
6255 464, 464, 464, 464, 464, 464, 464, 464, 464, 464,
6256 464, 464, 464, 464, 464, 464, 464, 464, 464, 464,
6257 464, 464, 464, 464, 464, 464, 464, 464, 464, 464,
6258 464, 464, 464, 464, 464, 466, 465, 468, 467, 469,
6259 469, 470, 470, 470, 472, 471, 474, 473, 475, 475,
6260 476, 476, 476, 477, 477, 477, 477, 477, 477, 477,
6261 477, 477, 477, 478, 479, 480, 482, 481, 484, 483,
6262 486, 485, 487, 489, 488, 490, 492, 491, 493, 493,
6263 494, 494, 494, 496, 495, 498, 497, 499, 499, 500,
6264 500, 500, 501, 501, 501, 501, 501, 501, 501, 501,
6265 501, 501, 501, 502, 504, 503, 505, 506, 507, 508,
6266 509, 511, 510, 513, 512, 514, 514, 515, 515, 515,
6267 517, 516, 519, 518, 520, 520, 520, 521, 521, 521,
6268 521, 521, 521, 521, 521, 521, 523, 522, 524, 526,
6269 525, 528, 527, 530, 529, 531, 531, 532, 532, 532,
6270 534, 533, 536, 535, 537, 537, 538, 538, 538, 539,
6271 539, 539, 539, 539, 539, 539, 539, 539, 539, 539,
6272 539, 539, 539, 539, 541, 540, 543, 542, 545, 544,
6273 547, 546, 549, 548, 551, 550, 553, 552, 555, 554,
6274 557, 556, 559, 558, 561, 560, 563, 562, 564, 566,
6275 565, 568, 567, 569, 569, 569, 571, 570, 572, 572,
6276 573, 573, 573, 574, 574, 574, 574, 574, 574, 574,
6277 574, 574, 574, 574, 574, 574, 574, 574, 574, 574,
6278 575, 577, 576, 579, 578, 580, 581, 582, 584, 583,
6279 586, 585, 587, 587, 588, 588, 588, 590, 589, 591,
6280 591, 591, 592, 592, 592, 592, 592, 592, 592, 592,
6281 592, 592, 592, 592, 594, 593, 595, 595, 595, 597,
6282 596, 599, 598, 600, 601, 603, 602, 604, 604, 604,
6283 605, 605, 605, 605, 605, 605, 605, 607, 606, 608,
6284 610, 609, 612, 611, 614, 613, 615, 615, 616, 616,
6285 616, 618, 617, 619, 619, 619, 620, 620, 620, 620,
6286 620, 620, 620, 622, 621, 624, 623, 626, 625, 627,
6287 627, 627, 628, 628, 628, 628, 628, 628, 629, 631,
6288 630, 632, 634, 633, 636, 635, 638, 637, 639, 639,
6289 639, 640, 640, 640, 640, 640, 640, 640, 640, 640,
6290 640, 640, 641, 643, 642, 644, 646, 645, 647, 648,
6291 650, 649, 651, 651, 653, 652, 655, 654, 657, 656,
6292 658, 658, 658, 659, 659, 661, 660, 662, 664, 663,
6293 665, 665, 665, 667, 666, 668, 668, 668, 669, 669,
6294 669, 669, 669, 669, 669, 670, 672, 671, 674, 673,
6295 675, 675, 675, 677, 676, 678, 678, 678, 679, 679,
6296 679, 679, 679, 681, 680, 682, 683, 684, 686, 685,
6297 688, 687, 689, 689, 689, 690, 690, 690, 690, 690,
6302 Dhcp4Parser::yyr2_[] =
6304 0, 2, 0, 3, 0, 3, 0, 3, 0, 3,
6305 0, 3, 0, 3, 0, 3, 0, 3, 0, 3,
6306 0, 3, 0, 3, 0, 3, 0, 3, 1, 1,
6307 1, 1, 1, 1, 1, 1, 0, 4, 1, 0,
6308 1, 3, 5, 2, 0, 4, 0, 1, 1, 3,
6309 2, 0, 4, 0, 1, 1, 3, 2, 2, 0,
6310 4, 0, 6, 1, 2, 0, 4, 1, 3, 2,
6311 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6312 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6313 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6314 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6315 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6316 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6317 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
6318 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
6319 0, 4, 3, 0, 4, 3, 3, 3, 3, 3,
6320 3, 0, 4, 1, 1, 1, 1, 1, 0, 4,
6321 0, 4, 3, 3, 0, 4, 1, 1, 1, 1,
6322 3, 0, 4, 0, 4, 3, 3, 3, 3, 3,
6323 3, 3, 3, 0, 6, 1, 3, 2, 1, 1,
6324 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
6325 0, 4, 0, 4, 1, 1, 0, 4, 1, 1,
6326 3, 3, 3, 3, 0, 6, 0, 6, 1, 3,
6327 2, 1, 1, 0, 4, 0, 4, 0, 6, 0,
6328 6, 0, 1, 1, 3, 2, 0, 4, 1, 3,
6329 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6330 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6331 1, 1, 1, 1, 0, 4, 0, 4, 0, 4,
6332 0, 4, 3, 0, 4, 3, 3, 3, 3, 3,
6333 3, 3, 3, 3, 0, 4, 1, 1, 1, 3,
6334 3, 0, 4, 0, 4, 0, 4, 0, 4, 0,
6335 6, 1, 3, 2, 1, 1, 1, 1, 1, 1,
6336 1, 1, 1, 1, 0, 6, 1, 3, 2, 1,
6337 1, 1, 1, 1, 1, 3, 3, 3, 0, 6,
6338 0, 1, 1, 3, 2, 0, 4, 0, 4, 1,
6339 3, 2, 1, 1, 1, 0, 4, 0, 4, 0,
6340 6, 1, 3, 2, 1, 1, 1, 1, 1, 1,
6341 3, 3, 3, 3, 3, 3, 0, 6, 0, 1,
6342 1, 3, 2, 0, 4, 0, 4, 1, 3, 2,
6343 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6344 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6345 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6346 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6347 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
6348 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
6349 4, 0, 4, 0, 4, 3, 3, 3, 3, 0,
6350 6, 0, 1, 1, 3, 2, 0, 4, 1, 3,
6351 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6352 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6353 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6354 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6355 1, 1, 1, 1, 1, 0, 6, 0, 4, 0,
6356 1, 1, 3, 2, 0, 4, 0, 4, 0, 1,
6357 1, 3, 2, 1, 1, 1, 1, 1, 1, 1,
6358 1, 1, 1, 1, 3, 1, 0, 4, 0, 4,
6359 0, 4, 1, 0, 4, 3, 0, 6, 0, 1,
6360 1, 3, 2, 0, 4, 0, 4, 0, 1, 1,
6361 3, 2, 1, 1, 1, 1, 1, 1, 1, 1,
6362 1, 1, 1, 1, 0, 4, 1, 1, 3, 3,
6363 3, 0, 4, 0, 6, 0, 1, 1, 3, 2,
6364 0, 4, 0, 4, 1, 3, 2, 1, 1, 1,
6365 1, 1, 1, 1, 1, 1, 0, 4, 3, 0,
6366 4, 0, 4, 0, 6, 0, 1, 1, 3, 2,
6367 0, 4, 0, 4, 0, 1, 1, 3, 2, 1,
6368 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6369 1, 1, 1, 1, 0, 4, 0, 4, 0, 4,
6370 0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
6371 0, 4, 0, 4, 0, 4, 0, 6, 1, 0,
6372 4, 0, 6, 1, 3, 2, 0, 4, 0, 1,
6373 1, 3, 2, 1, 1, 1, 1, 1, 1, 1,
6374 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6375 1, 0, 4, 0, 4, 3, 3, 3, 0, 6,
6376 0, 6, 0, 1, 1, 3, 2, 0, 4, 1,
6377 3, 2, 1, 1, 1, 1, 1, 1, 1, 1,
6378 1, 1, 1, 1, 0, 4, 1, 1, 1, 0,
6379 4, 0, 4, 3, 3, 0, 6, 1, 3, 2,
6380 1, 1, 1, 1, 1, 1, 1, 0, 4, 1,
6381 0, 4, 0, 4, 0, 6, 0, 1, 1, 3,
6382 2, 0, 4, 1, 3, 2, 1, 1, 1, 1,
6383 1, 1, 1, 0, 4, 0, 4, 0, 6, 1,
6384 3, 2, 1, 1, 1, 1, 1, 1, 3, 0,
6385 4, 3, 0, 4, 0, 6, 0, 4, 1, 3,
6386 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6387 1, 1, 3, 0, 4, 3, 0, 4, 3, 3,
6388 0, 4, 1, 1, 0, 4, 0, 6, 0, 4,
6389 1, 3, 2, 1, 1, 0, 6, 3, 0, 6,
6390 1, 3, 2, 0, 4, 1, 3, 2, 1, 1,
6391 1, 1, 1, 1, 1, 3, 0, 4, 0, 6,
6392 1, 3, 2, 0, 4, 1, 3, 2, 1, 1,
6393 1, 1, 1, 0, 4, 3, 3, 3, 0, 4,
6394 0, 6, 1, 3, 2, 1, 1, 1, 1, 1,
6399#if PARSER4_DEBUG || 1
6403 const Dhcp4Parser::yytname_[] =
6405 "\"end of file\"",
"error",
"\"invalid token\"",
"\",\"",
"\":\"",
6406 "\"[\"",
"\"]\"",
"\"{\"",
"\"}\"",
"\"null\"",
"\"Dhcp4\"",
6407 "\"config-control\"",
"\"config-databases\"",
6408 "\"config-fetch-wait-time\"",
"\"interfaces-config\"",
"\"interfaces\"",
6409 "\"dhcp-socket-type\"",
"\"raw\"",
"\"udp\"",
"\"outbound-interface\"",
6410 "\"same-as-inbound\"",
"\"use-routing\"",
"\"re-detect\"",
6411 "\"service-sockets-require-all\"",
"\"service-sockets-retry-wait-time\"",
6412 "\"service-sockets-max-retries\"",
"\"sanity-checks\"",
6413 "\"lease-checks\"",
"\"extended-info-checks\"",
"\"echo-client-id\"",
6414 "\"match-client-id\"",
"\"authoritative\"",
"\"next-server\"",
6415 "\"server-hostname\"",
"\"boot-file-name\"",
"\"offer-lifetime\"",
6416 "\"stash-agent-options\"",
"\"lease-database\"",
"\"hosts-database\"",
6417 "\"hosts-databases\"",
"\"type\"",
"\"user\"",
"\"password\"",
6418 "\"host\"",
"\"port\"",
"\"persist\"",
"\"lfc-interval\"",
6419 "\"readonly\"",
"\"connect-timeout\"",
"\"read-timeout\"",
6420 "\"write-timeout\"",
"\"tcp-user-timeout\"",
"\"max-reconnect-tries\"",
6421 "\"reconnect-wait-time\"",
"\"on-fail\"",
"\"stop-retry-exit\"",
6422 "\"serve-retry-exit\"",
"\"serve-retry-continue\"",
6423 "\"retry-on-startup\"",
"\"max-row-errors\"",
"\"trust-anchor\"",
6424 "\"cert-file\"",
"\"key-file\"",
"\"cipher-list\"",
"\"valid-lifetime\"",
6425 "\"min-valid-lifetime\"",
"\"max-valid-lifetime\"",
"\"renew-timer\"",
6426 "\"rebind-timer\"",
"\"calculate-tee-times\"",
"\"t1-percent\"",
6427 "\"t2-percent\"",
"\"cache-threshold\"",
"\"cache-max-age\"",
6428 "\"decline-probation-period\"",
"\"server-tag\"",
6429 "\"statistic-default-sample-count\"",
"\"statistic-default-sample-age\"",
6430 "\"ddns-send-updates\"",
"\"ddns-override-no-update\"",
6431 "\"ddns-override-client-update\"",
"\"ddns-replace-client-name\"",
6432 "\"ddns-generated-prefix\"",
"\"ddns-qualifying-suffix\"",
6433 "\"ddns-update-on-renew\"",
"\"ddns-use-conflict-resolution\"",
6434 "\"ddns-ttl-percent\"",
"\"store-extended-info\"",
"\"subnet4\"",
6435 "\"4o6-interface\"",
"\"4o6-interface-id\"",
"\"4o6-subnet\"",
6436 "\"option-def\"",
"\"option-data\"",
"\"name\"",
"\"data\"",
"\"code\"",
6437 "\"space\"",
"\"csv-format\"",
"\"always-send\"",
"\"never-send\"",
6438 "\"record-types\"",
"\"encapsulate\"",
"\"array\"",
6439 "\"parked-packet-limit\"",
"\"allocator\"",
6440 "\"ddns-conflict-resolution-mode\"",
"\"check-with-dhcid\"",
6441 "\"no-check-with-dhcid\"",
"\"check-exists-with-dhcid\"",
6442 "\"no-check-without-dhcid\"",
"\"shared-networks\"",
"\"pools\"",
6443 "\"pool\"",
"\"user-context\"",
"\"comment\"",
"\"subnet\"",
6444 "\"interface\"",
"\"id\"",
"\"reservations-global\"",
6445 "\"reservations-in-subnet\"",
"\"reservations-out-of-pool\"",
6446 "\"host-reservation-identifiers\"",
"\"client-classes\"",
6447 "\"require-client-classes\"",
"\"evaluate-additional-classes\"",
6448 "\"test\"",
"\"template-test\"",
"\"only-if-required\"",
6449 "\"only-in-additional-list\"",
"\"client-class\"",
"\"pool-id\"",
6450 "\"reservations\"",
"\"ip-address\"",
"\"duid\"",
"\"hw-address\"",
6451 "\"circuit-id\"",
"\"client-id\"",
"\"hostname\"",
"\"flex-id\"",
6452 "\"relay\"",
"\"ip-addresses\"",
"\"hooks-libraries\"",
"\"library\"",
6453 "\"parameters\"",
"\"expired-leases-processing\"",
6454 "\"reclaim-timer-wait-time\"",
"\"flush-reclaimed-timer-wait-time\"",
6455 "\"hold-reclaimed-time\"",
"\"max-reclaim-leases\"",
6456 "\"max-reclaim-time\"",
"\"unwarned-reclaim-cycles\"",
6457 "\"dhcp4o6-port\"",
"\"multi-threading\"",
"\"enable-multi-threading\"",
6458 "\"thread-pool-size\"",
"\"packet-queue-size\"",
"\"control-socket\"",
6459 "\"control-sockets\"",
"\"socket-type\"",
"\"unix\"",
"\"http\"",
6460 "\"https\"",
"\"socket-name\"",
"\"socket-address\"",
"\"socket-port\"",
6461 "\"authentication\"",
"\"basic\"",
"\"realm\"",
"\"directory\"",
6462 "\"clients\"",
"\"user-file\"",
"\"password-file\"",
"\"cert-required\"",
6463 "\"dhcp-queue-control\"",
"\"enable-queue\"",
"\"queue-type\"",
6464 "\"capacity\"",
"\"dhcp-ddns\"",
"\"enable-updates\"",
"\"server-ip\"",
6465 "\"server-port\"",
"\"sender-ip\"",
"\"sender-port\"",
6466 "\"max-queue-size\"",
"\"ncr-protocol\"",
"\"ncr-format\"",
"\"tcp\"",
6467 "\"JSON\"",
"\"when-present\"",
"\"never\"",
"\"always\"",
6468 "\"when-not-present\"",
"\"hostname-char-set\"",
6469 "\"hostname-char-replacement\"",
"\"early-global-reservations-lookup\"",
6470 "\"ip-reservations-unique\"",
"\"reservations-lookup-first\"",
6471 "\"loggers\"",
"\"output-options\"",
"\"output\"",
"\"debuglevel\"",
6472 "\"severity\"",
"\"flush\"",
"\"maxsize\"",
"\"maxver\"",
"\"pattern\"",
6473 "\"compatibility\"",
"\"lenient-option-parsing\"",
6474 "\"ignore-dhcp-server-identifier\"",
"\"ignore-rai-link-selection\"",
6475 "\"exclude-first-last-24\"",
"TOPLEVEL_JSON",
"TOPLEVEL_DHCP4",
6476 "SUB_DHCP4",
"SUB_INTERFACES4",
"SUB_SUBNET4",
"SUB_POOL4",
6477 "SUB_RESERVATION",
"SUB_OPTION_DEFS",
"SUB_OPTION_DEF",
6478 "SUB_OPTION_DATA",
"SUB_HOOKS_LIBRARY",
"SUB_DHCP_DDNS",
6479 "SUB_CONFIG_CONTROL",
"\"constant string\"",
"\"integer\"",
6480 "\"floating point\"",
"\"boolean\"",
"$accept",
"start",
"$@1",
"$@2",
6481 "$@3",
"$@4",
"$@5",
"$@6",
"$@7",
"$@8",
"$@9",
"$@10",
"$@11",
"$@12",
6482 "$@13",
"value",
"sub_json",
"map2",
"$@14",
"map_value",
"map_content",
6483 "not_empty_map",
"list_generic",
"$@15",
"list_content",
6484 "not_empty_list",
"list_strings",
"$@16",
"list_strings_content",
6485 "not_empty_list_strings",
"unknown_map_entry",
"syntax_map",
"$@17",
6486 "global_object",
"$@18",
"global_object_comma",
"sub_dhcp4",
"$@19",
6487 "global_params",
"global_param",
"valid_lifetime",
"min_valid_lifetime",
6488 "max_valid_lifetime",
"renew_timer",
"rebind_timer",
6489 "calculate_tee_times",
"t1_percent",
"t2_percent",
"cache_threshold",
6490 "cache_max_age",
"decline_probation_period",
"server_tag",
"$@20",
6491 "parked_packet_limit",
"allocator",
"$@21",
"echo_client_id",
6492 "match_client_id",
"authoritative",
"ddns_send_updates",
6493 "ddns_override_no_update",
"ddns_override_client_update",
6494 "ddns_replace_client_name",
"$@22",
"ddns_replace_client_name_value",
6495 "ddns_generated_prefix",
"$@23",
"ddns_qualifying_suffix",
"$@24",
6496 "ddns_update_on_renew",
"ddns_use_conflict_resolution",
6497 "ddns_conflict_resolution_mode",
"$@25",
6498 "ddns_conflict_resolution_mode_value",
"ddns_ttl_percent",
6499 "hostname_char_set",
"$@26",
"hostname_char_replacement",
"$@27",
6500 "store_extended_info",
"statistic_default_sample_count",
6501 "statistic_default_sample_age",
"early_global_reservations_lookup",
6502 "ip_reservations_unique",
"reservations_lookup_first",
"offer_lifetime",
6503 "stash_agent_options",
"interfaces_config",
"$@28",
6504 "interfaces_config_params",
"interfaces_config_param",
"sub_interfaces4",
6505 "$@29",
"interfaces_list",
"$@30",
"dhcp_socket_type",
"$@31",
6506 "socket_type",
"outbound_interface",
"$@32",
"outbound_interface_value",
6507 "re_detect",
"service_sockets_require_all",
6508 "service_sockets_retry_wait_time",
"service_sockets_max_retries",
6509 "lease_database",
"$@33",
"sanity_checks",
"$@34",
6510 "sanity_checks_params",
"sanity_checks_param",
"lease_checks",
"$@35",
6511 "extended_info_checks",
"$@36",
"hosts_database",
"$@37",
6512 "hosts_databases",
"$@38",
"database_list",
"not_empty_database_list",
6513 "database",
"$@39",
"database_map_params",
"database_map_param",
6514 "database_type",
"$@40",
"user",
"$@41",
"password",
"$@42",
"host",
6515 "$@43",
"port",
"name",
"$@44",
"persist",
"lfc_interval",
"readonly",
6516 "connect_timeout",
"read_timeout",
"write_timeout",
"tcp_user_timeout",
6517 "max_reconnect_tries",
"reconnect_wait_time",
"on_fail",
"$@45",
6518 "on_fail_mode",
"retry_on_startup",
"max_row_errors",
"trust_anchor",
6519 "$@46",
"cert_file",
"$@47",
"key_file",
"$@48",
"cipher_list",
"$@49",
6520 "host_reservation_identifiers",
"$@50",
6521 "host_reservation_identifiers_list",
"host_reservation_identifier",
6522 "duid_id",
"hw_address_id",
"circuit_id",
"client_id",
"flex_id",
6523 "dhcp_multi_threading",
"$@51",
"multi_threading_params",
6524 "multi_threading_param",
"enable_multi_threading",
"thread_pool_size",
6525 "packet_queue_size",
"hooks_libraries",
"$@52",
"hooks_libraries_list",
6526 "not_empty_hooks_libraries_list",
"hooks_library",
"$@53",
6527 "sub_hooks_library",
"$@54",
"hooks_params",
"hooks_param",
"library",
6528 "$@55",
"parameters",
"$@56",
"expired_leases_processing",
"$@57",
6529 "expired_leases_params",
"expired_leases_param",
6530 "reclaim_timer_wait_time",
"flush_reclaimed_timer_wait_time",
6531 "hold_reclaimed_time",
"max_reclaim_leases",
"max_reclaim_time",
6532 "unwarned_reclaim_cycles",
"subnet4_list",
"$@58",
6533 "subnet4_list_content",
"not_empty_subnet4_list",
"subnet4",
"$@59",
6534 "sub_subnet4",
"$@60",
"subnet4_params",
"subnet4_param",
"subnet",
6535 "$@61",
"subnet_4o6_interface",
"$@62",
"subnet_4o6_interface_id",
6536 "$@63",
"subnet_4o6_subnet",
"$@64",
"interface",
"$@65",
"client_class",
6537 "$@66",
"require_client_classes",
"$@67",
"evaluate_additional_classes",
6538 "$@68",
"reservations_global",
"reservations_in_subnet",
6539 "reservations_out_of_pool",
"id",
"shared_networks",
"$@69",
6540 "shared_networks_content",
"shared_networks_list",
"shared_network",
6541 "$@70",
"shared_network_params",
"shared_network_param",
6542 "option_def_list",
"$@71",
"sub_option_def_list",
"$@72",
6543 "option_def_list_content",
"not_empty_option_def_list",
6544 "option_def_entry",
"$@73",
"sub_option_def",
"$@74",
6545 "option_def_params",
"not_empty_option_def_params",
"option_def_param",
6546 "option_def_name",
"code",
"option_def_code",
"option_def_type",
"$@75",
6547 "option_def_record_types",
"$@76",
"space",
"$@77",
"option_def_space",
6548 "option_def_encapsulate",
"$@78",
"option_def_array",
"option_data_list",
6549 "$@79",
"option_data_list_content",
"not_empty_option_data_list",
6550 "option_data_entry",
"$@80",
"sub_option_data",
"$@81",
6551 "option_data_params",
"not_empty_option_data_params",
6552 "option_data_param",
"option_data_name",
"option_data_data",
"$@82",
6553 "option_data_code",
"option_data_space",
"option_data_csv_format",
6554 "option_data_always_send",
"option_data_never_send",
6555 "option_data_client_classes",
"$@83",
"pools_list",
"$@84",
6556 "pools_list_content",
"not_empty_pools_list",
"pool_list_entry",
"$@85",
6557 "sub_pool4",
"$@86",
"pool_params",
"pool_param",
"pool_entry",
"$@87",
6558 "pool_id",
"user_context",
"$@88",
"comment",
"$@89",
"reservations",
6559 "$@90",
"reservations_list",
"not_empty_reservations_list",
6560 "reservation",
"$@91",
"sub_reservation",
"$@92",
"reservation_params",
6561 "not_empty_reservation_params",
"reservation_param",
"next_server",
6562 "$@93",
"server_hostname",
"$@94",
"boot_file_name",
"$@95",
6563 "ip_address",
"$@96",
"duid",
"$@97",
"hw_address",
"$@98",
6564 "client_id_value",
"$@99",
"circuit_id_value",
"$@100",
"flex_id_value",
6565 "$@101",
"hostname",
"$@102",
"reservation_client_classes",
"$@103",
6566 "relay",
"$@104",
"relay_map",
"ip_addresses",
"$@105",
"client_classes",
6567 "$@106",
"client_classes_list",
"client_class_entry",
"$@107",
6568 "client_class_params",
"not_empty_client_class_params",
6569 "client_class_param",
"client_class_name",
"client_class_test",
"$@108",
6570 "client_class_template_test",
"$@109",
"only_if_required",
6571 "only_in_additional_list",
"dhcp4o6_port",
"control_socket",
"$@110",
6572 "control_sockets",
"$@111",
"control_socket_list",
6573 "not_empty_control_socket_list",
"control_socket_entry",
"$@112",
6574 "control_socket_params",
"control_socket_param",
"control_socket_type",
6575 "$@113",
"control_socket_type_value",
"control_socket_name",
"$@114",
6576 "control_socket_address",
"$@115",
"control_socket_port",
6577 "cert_required",
"authentication",
"$@116",
"auth_params",
"auth_param",
6578 "auth_type",
"$@117",
"auth_type_value",
"realm",
"$@118",
"directory",
6579 "$@119",
"clients",
"$@120",
"clients_list",
"not_empty_clients_list",
6580 "basic_auth",
"$@121",
"clients_params",
"clients_param",
"user_file",
6581 "$@122",
"password_file",
"$@123",
"dhcp_queue_control",
"$@124",
6582 "queue_control_params",
"queue_control_param",
"enable_queue",
6583 "queue_type",
"$@125",
"capacity",
"arbitrary_map_entry",
"$@126",
6584 "dhcp_ddns",
"$@127",
"sub_dhcp_ddns",
"$@128",
"dhcp_ddns_params",
6585 "dhcp_ddns_param",
"enable_updates",
"server_ip",
"$@129",
"server_port",
6586 "sender_ip",
"$@130",
"sender_port",
"max_queue_size",
"ncr_protocol",
6587 "$@131",
"ncr_protocol_value",
"ncr_format",
"$@132",
"config_control",
6588 "$@133",
"sub_config_control",
"$@134",
"config_control_params",
6589 "config_control_param",
"config_databases",
"$@135",
6590 "config_fetch_wait_time",
"loggers",
"$@136",
"loggers_entries",
6591 "logger_entry",
"$@137",
"logger_params",
"logger_param",
"debuglevel",
6592 "severity",
"$@138",
"output_options_list",
"$@139",
6593 "output_options_list_content",
"output_entry",
"$@140",
6594 "output_params_list",
"output_params",
"output",
"$@141",
"flush",
6595 "maxsize",
"maxver",
"pattern",
"$@142",
"compatibility",
"$@143",
6596 "compatibility_params",
"compatibility_param",
"lenient_option_parsing",
6597 "ignore_dhcp_server_identifier",
"ignore_rai_link_selection",
6598 "exclude_first_last_24", YY_NULLPTR
6605 Dhcp4Parser::yyrline_[] =
6607 0, 324, 324, 324, 325, 325, 326, 326, 327, 327,
6608 328, 328, 329, 329, 330, 330, 331, 331, 332, 332,
6609 333, 333, 334, 334, 335, 335, 336, 336, 344, 345,
6610 346, 347, 348, 349, 350, 353, 358, 358, 369, 372,
6611 373, 376, 381, 387, 392, 392, 399, 400, 403, 407,
6612 411, 417, 417, 424, 425, 428, 432, 436, 446, 455,
6613 455, 470, 470, 484, 487, 493, 493, 502, 503, 504,
6614 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
6615 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
6616 531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
6617 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
6618 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
6619 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
6620 571, 572, 573, 574, 575, 576, 577, 578, 579, 582,
6621 588, 594, 600, 606, 612, 618, 624, 630, 636, 642,
6622 648, 648, 657, 663, 663, 672, 678, 684, 690, 696,
6623 702, 708, 708, 717, 720, 723, 726, 729, 735, 735,
6624 744, 744, 753, 762, 772, 772, 781, 784, 787, 790,
6625 795, 801, 801, 810, 810, 819, 825, 831, 837, 843,
6626 849, 855, 861, 867, 867, 879, 880, 881, 886, 887,
6627 888, 889, 890, 891, 892, 893, 894, 895, 898, 898,
6628 907, 907, 918, 918, 926, 927, 930, 930, 938, 940,
6629 944, 950, 956, 962, 968, 968, 981, 981, 992, 993,
6630 994, 999, 1000, 1003, 1003, 1022, 1022, 1040, 1040, 1053,
6631 1053, 1064, 1065, 1068, 1069, 1070, 1075, 1075, 1085, 1086,
6632 1087, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100,
6633 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
6634 1111, 1112, 1113, 1114, 1117, 1117, 1126, 1126, 1135, 1135,
6635 1144, 1144, 1153, 1159, 1159, 1168, 1174, 1180, 1186, 1192,
6636 1198, 1204, 1210, 1216, 1222, 1222, 1230, 1231, 1232, 1235,
6637 1241, 1247, 1247, 1256, 1256, 1265, 1265, 1274, 1274, 1283,
6638 1283, 1294, 1295, 1296, 1301, 1302, 1303, 1304, 1305, 1308,
6639 1313, 1318, 1323, 1328, 1335, 1335, 1348, 1349, 1350, 1355,
6640 1356, 1357, 1358, 1359, 1360, 1363, 1369, 1375, 1381, 1381,
6641 1392, 1393, 1396, 1397, 1398, 1403, 1403, 1413, 1413, 1423,
6642 1424, 1425, 1428, 1431, 1432, 1435, 1435, 1444, 1444, 1453,
6643 1453, 1465, 1466, 1467, 1472, 1473, 1474, 1475, 1476, 1477,
6644 1480, 1486, 1492, 1498, 1504, 1510, 1519, 1519, 1533, 1534,
6645 1537, 1538, 1539, 1548, 1548, 1574, 1574, 1585, 1586, 1587,
6646 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1602,
6647 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612,
6648 1613, 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622,
6649 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632,
6650 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1644,
6651 1644, 1653, 1653, 1662, 1662, 1671, 1671, 1680, 1680, 1689,
6652 1689, 1699, 1699, 1710, 1710, 1721, 1727, 1733, 1739, 1747,
6653 1747, 1759, 1760, 1764, 1765, 1766, 1771, 1771, 1779, 1780,
6654 1781, 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793, 1794,
6655 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803, 1804,
6656 1805, 1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813, 1814,
6657 1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824,
6658 1825, 1826, 1827, 1828, 1829, 1836, 1836, 1850, 1850, 1859,
6659 1860, 1863, 1864, 1865, 1872, 1872, 1887, 1887, 1901, 1902,
6660 1905, 1906, 1907, 1912, 1913, 1914, 1915, 1916, 1917, 1918,
6661 1919, 1920, 1921, 1924, 1926, 1932, 1934, 1934, 1943, 1943,
6662 1952, 1952, 1961, 1963, 1963, 1972, 1982, 1982, 1995, 1996,
6663 2001, 2002, 2003, 2010, 2010, 2022, 2022, 2034, 2035, 2040,
6664 2041, 2042, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056,
6665 2057, 2058, 2059, 2062, 2064, 2064, 2073, 2075, 2077, 2083,
6666 2089, 2095, 2095, 2109, 2109, 2122, 2123, 2126, 2127, 2128,
6667 2133, 2133, 2143, 2143, 2153, 2154, 2155, 2160, 2161, 2162,
6668 2163, 2164, 2165, 2166, 2167, 2168, 2171, 2171, 2180, 2186,
6669 2186, 2211, 2211, 2241, 2241, 2252, 2253, 2256, 2257, 2258,
6670 2263, 2263, 2272, 2272, 2281, 2282, 2285, 2286, 2287, 2293,
6671 2294, 2295, 2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303,
6672 2304, 2305, 2306, 2307, 2310, 2310, 2319, 2319, 2328, 2328,
6673 2337, 2337, 2346, 2346, 2355, 2355, 2364, 2364, 2373, 2373,
6674 2382, 2382, 2391, 2391, 2400, 2400, 2414, 2414, 2425, 2428,
6675 2428, 2442, 2442, 2453, 2454, 2455, 2460, 2460, 2470, 2471,
6676 2474, 2475, 2476, 2481, 2482, 2483, 2484, 2485, 2486, 2487,
6677 2488, 2489, 2490, 2491, 2492, 2493, 2494, 2495, 2496, 2497,
6678 2500, 2502, 2502, 2511, 2511, 2521, 2527, 2535, 2543, 2543,
6679 2555, 2555, 2567, 2568, 2571, 2572, 2573, 2578, 2578, 2586,
6680 2587, 2588, 2593, 2594, 2595, 2596, 2597, 2598, 2599, 2600,
6681 2601, 2602, 2603, 2604, 2607, 2607, 2616, 2617, 2618, 2621,
6682 2621, 2631, 2631, 2641, 2647, 2655, 2655, 2668, 2669, 2670,
6683 2675, 2676, 2677, 2678, 2679, 2680, 2681, 2684, 2684, 2692,
6684 2695, 2695, 2704, 2704, 2713, 2713, 2724, 2725, 2728, 2729,
6685 2730, 2735, 2735, 2743, 2744, 2745, 2750, 2751, 2752, 2753,
6686 2754, 2755, 2756, 2759, 2759, 2768, 2768, 2779, 2779, 2792,
6687 2793, 2794, 2799, 2800, 2801, 2802, 2803, 2804, 2807, 2813,
6688 2813, 2822, 2828, 2828, 2838, 2838, 2851, 2851, 2861, 2862,
6689 2863, 2868, 2869, 2870, 2871, 2872, 2873, 2874, 2875, 2876,
6690 2877, 2878, 2881, 2887, 2887, 2896, 2902, 2902, 2911, 2917,
6691 2923, 2923, 2932, 2933, 2936, 2936, 2947, 2947, 2959, 2959,
6692 2969, 2970, 2971, 2977, 2978, 2981, 2981, 2992, 3000, 3000,
6693 3013, 3014, 3015, 3021, 3021, 3029, 3030, 3031, 3036, 3037,
6694 3038, 3039, 3040, 3041, 3042, 3045, 3051, 3051, 3060, 3060,
6695 3071, 3072, 3073, 3078, 3078, 3086, 3087, 3088, 3093, 3094,
6696 3095, 3096, 3097, 3100, 3100, 3109, 3115, 3121, 3127, 3127,
6697 3136, 3136, 3147, 3148, 3149, 3154, 3155, 3156, 3157, 3158,
6698 3161, 3167, 3173, 3179
6702 Dhcp4Parser::yy_stack_print_ ()
const
6704 *yycdebug_ <<
"Stack now";
6705 for (stack_type::const_iterator
6706 i = yystack_.begin (),
6707 i_end = yystack_.end ();
6709 *yycdebug_ <<
' ' <<
int (i->state);
6714 Dhcp4Parser::yy_reduce_print_ (
int yyrule)
const
6716 int yylno = yyrline_[yyrule];
6717 int yynrhs = yyr2_[yyrule];
6719 *yycdebug_ <<
"Reducing stack by rule " << yyrule - 1
6720 <<
" (line " << yylno <<
"):\n";
6722 for (
int yyi = 0; yyi < yynrhs; yyi++)
6724 yystack_[(yynrhs) - (yyi + 1)]);
6729#line 14 "dhcp4_parser.yy"
6731#line 6732 "dhcp4_parser.cc"
6733#line 3185 "dhcp4_parser.yy"
6738 const std::string& what)
6740 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.
context(const Dhcp4Parser &yyparser, const symbol_type &yyla)
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.
@ 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.
@ 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...
@ AUTH_TYPE
Used while parsing Dhcp4/control-socket/authentication/type structures.
@ 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.
@ CLIENTS
Used while parsing Dhcp4/control-socket/authentication/clients structures.
@ 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.
@ CONTROL_SOCKET_TYPE
Used while parsing Dhcp4/control-socket/socket-type structures.
@ 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.
@ AUTHENTICATION
Used while parsing Dhcp4/control-socket/authentication 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.
@ S_control_socket_type_value
@ 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