From 0669c2e64d16366515e560e992b06eccd560d564 Mon Sep 17 00:00:00 2001 From: Felipe Zimmerle Date: Mon, 22 Apr 2019 10:46:27 -0300 Subject: [PATCH] parser: new bison version --- src/parser/location.hh | 8 +- src/parser/position.hh | 2 +- src/parser/seclang-parser.cc | 2619 ++++---- src/parser/seclang-parser.hh | 10992 +++++++++++++++++++-------------- src/parser/stack.hh | 2 +- 5 files changed, 7679 insertions(+), 5944 deletions(-) diff --git a/src/parser/location.hh b/src/parser/location.hh index 49c002be..9b178d4d 100644 --- a/src/parser/location.hh +++ b/src/parser/location.hh @@ -1,8 +1,8 @@ -// A Bison parser, made by GNU Bison 3.2. +// A Bison parser, made by GNU Bison 3.3.2. // Locations for Bison parsers in C++ -// Copyright (C) 2002-2015, 2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -57,7 +57,7 @@ namespace yy { #line 60 "location.hh" // location.cc:339 - /// Abstract a position. + /// A point in a source file. class position { public: @@ -176,7 +176,7 @@ namespace yy { return ostr << pos.line << '.' << pos.column; } - /// Abstract a location. + /// Two points in a source file. class location { public: diff --git a/src/parser/position.hh b/src/parser/position.hh index 8d071218..67f46e29 100644 --- a/src/parser/position.hh +++ b/src/parser/position.hh @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.2. +// A Bison parser, made by GNU Bison 3.3.2. // Starting with Bison 3.2, this file is useless: the structure it // used to define is now defined in "location.hh". diff --git a/src/parser/seclang-parser.cc b/src/parser/seclang-parser.cc index e0b7714d..7049eacd 100644 --- a/src/parser/seclang-parser.cc +++ b/src/parser/seclang-parser.cc @@ -1,8 +1,8 @@ -// A Bison parser, made by GNU Bison 3.2. +// A Bison parser, made by GNU Bison 3.3.2. // Skeleton implementation for Bison LALR(1) parsers in C++ -// Copyright (C) 2002-2015, 2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -41,11 +41,11 @@ // Unqualified %code blocks. -#line 323 "seclang-parser.yy" // lalr1.cc:437 +#line 323 "seclang-parser.yy" // lalr1.cc:435 #include "src/parser/driver.h" -#line 49 "seclang-parser.cc" // lalr1.cc:437 +#line 49 "seclang-parser.cc" // lalr1.cc:435 #ifndef YY_ @@ -86,7 +86,7 @@ { \ (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \ } \ - while (/*CONSTCOND*/ false) + while (false) # endif @@ -140,7 +140,7 @@ namespace yy { -#line 144 "seclang-parser.cc" // lalr1.cc:512 +#line 144 "seclang-parser.cc" // lalr1.cc:510 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -152,7 +152,7 @@ namespace yy { { if (*yystr == '"') { - std::string yyr = ""; + std::string yyr; char const *yyp = yystr; for (;;) @@ -165,7 +165,10 @@ namespace yy { case '\\': if (*++yyp != '\\') goto do_not_strip_quotes; - // Fall through. + else + goto append; + + append: default: yyr += *yyp; break; @@ -193,6 +196,8 @@ namespace yy { seclang_parser::~seclang_parser () {} + seclang_parser::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} /*---------------. | Symbol types. | @@ -201,16 +206,16 @@ namespace yy { // by_state. - seclang_parser::by_state::by_state () + seclang_parser::by_state::by_state () YY_NOEXCEPT : state (empty_state) {} - seclang_parser::by_state::by_state (const by_state& other) - : state (other.state) + seclang_parser::by_state::by_state (const by_state& that) YY_NOEXCEPT + : state (that.state) {} void - seclang_parser::by_state::clear () + seclang_parser::by_state::clear () YY_NOEXCEPT { state = empty_state; } @@ -222,12 +227,12 @@ namespace yy { that.clear (); } - seclang_parser::by_state::by_state (state_type s) + seclang_parser::by_state::by_state (state_type s) YY_NOEXCEPT : state (s) {} seclang_parser::symbol_number_type - seclang_parser::by_state::type_get () const + seclang_parser::by_state::type_get () const YY_NOEXCEPT { if (state == empty_state) return empty_symbol; @@ -475,7 +480,7 @@ namespace yy { break; } -#if defined __cplusplus && 201103L <= __cplusplus +#if 201103L <= YY_CPLUSPLUS // that is emptied. that.state = empty_state; #endif @@ -722,7 +727,7 @@ namespace yy { that.type = empty_symbol; } -#if defined __cplusplus && __cplusplus < 201103L +#if YY_CPLUSPLUS < 201103L seclang_parser::stack_symbol_type& seclang_parser::stack_symbol_type::operator= (stack_symbol_type& that) { @@ -985,10 +990,12 @@ namespace yy { std::ostream& yyoutput = yyo; YYUSE (yyoutput); symbol_number_type yytype = yysym.type_get (); +#if defined __GNUC__ && ! defined __clang__ && ! defined __ICC && __GNUC__ * 100 + __GNUC_MINOR__ <= 408 // Avoid a (spurious) G++ 4.8 warning about "array subscript is // below array bounds". if (yysym.empty ()) std::abort (); +#endif yyo << (yytype < yyntokens_ ? "token" : "nterm") << ' ' << yytname_[yytype] << " (" << yysym.location << ": "; @@ -1008,7 +1015,7 @@ namespace yy { void seclang_parser::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym) { -#if defined __cplusplus && 201103L <= __cplusplus +#if 201103L <= YY_CPLUSPLUS yypush_ (m, stack_symbol_type (s, std::move (sym))); #else stack_symbol_type ss (s, sym); @@ -1106,13 +1113,13 @@ namespace yy { // User initialization code. -#line 316 "seclang-parser.yy" // lalr1.cc:783 +#line 316 "seclang-parser.yy" // lalr1.cc:788 { // Initialize the initial location. yyla.location.begin.filename = yyla.location.end.filename = &driver.file; } -#line 1116 "seclang-parser.cc" // lalr1.cc:783 +#line 1123 "seclang-parser.cc" // lalr1.cc:788 /* Initialize the stack. The initial state will be set in yynewstate, since the latter expects the semantical and the @@ -1121,17 +1128,22 @@ namespace yy { yystack_.clear (); yypush_ (YY_NULLPTR, 0, YY_MOVE (yyla)); - // A new symbol was pushed on the stack. + /*-----------------------------------------------. + | yynewstate -- push a new symbol on the stack. | + `-----------------------------------------------*/ yynewstate: YYCDEBUG << "Entering state " << yystack_[0].state << '\n'; // Accept? if (yystack_[0].state == yyfinal_) - goto yyacceptlab; + YYACCEPT; goto yybackup; - // Backup. + + /*-----------. + | yybackup. | + `-----------*/ yybackup: // Try to take a decision without lookahead. yyn = yypact_[yystack_[0].state]; @@ -1152,6 +1164,7 @@ namespace yy { #if YY_EXCEPTIONS catch (const syntax_error& yyexc) { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; error (yyexc); goto yyerrlab1; } @@ -1183,6 +1196,7 @@ namespace yy { yypush_ ("Shifting", yyn, YY_MOVE (yyla)); goto yynewstate; + /*-----------------------------------------------------------. | yydefault -- do the default action for the current state. | `-----------------------------------------------------------*/ @@ -1192,8 +1206,9 @@ namespace yy { goto yyerrlab; goto yyreduce; + /*-----------------------------. - | yyreduce -- Do a reduction. | + | yyreduce -- do a reduction. | `-----------------------------*/ yyreduce: yylen = yyr2_[yyn]; @@ -1440,8 +1455,8 @@ namespace yy { // Default location. { - slice slice (yystack_, yylen); - YYLLOC_DEFAULT (yylhs.location, slice, yylen); + stack_type::slice range (yystack_, yylen); + YYLLOC_DEFAULT (yylhs.location, range, yylen); yyerror_range[1].location = yylhs.location; } @@ -1454,573 +1469,573 @@ namespace yy { switch (yyn) { case 2: -#line 706 "seclang-parser.yy" // lalr1.cc:906 +#line 706 "seclang-parser.yy" // lalr1.cc:919 { return 0; } -#line 1462 "seclang-parser.cc" // lalr1.cc:906 +#line 1477 "seclang-parser.cc" // lalr1.cc:919 break; case 6: -#line 719 "seclang-parser.yy" // lalr1.cc:906 +#line 719 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setStorageDirMode(strtol(yystack_[0].value.as< std::string > ().c_str(), NULL, 8)); + driver.m_auditLog->setStorageDirMode(strtol(yystack_[0].value.as < std::string > ().c_str(), NULL, 8)); } -#line 1470 "seclang-parser.cc" // lalr1.cc:906 +#line 1485 "seclang-parser.cc" // lalr1.cc:919 break; case 7: -#line 725 "seclang-parser.yy" // lalr1.cc:906 +#line 725 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setStorageDir(yystack_[0].value.as< std::string > ()); + driver.m_auditLog->setStorageDir(yystack_[0].value.as < std::string > ()); } -#line 1478 "seclang-parser.cc" // lalr1.cc:906 +#line 1493 "seclang-parser.cc" // lalr1.cc:919 break; case 8: -#line 731 "seclang-parser.yy" // lalr1.cc:906 +#line 731 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setStatus(modsecurity::audit_log::AuditLog::RelevantOnlyAuditLogStatus); } -#line 1486 "seclang-parser.cc" // lalr1.cc:906 +#line 1501 "seclang-parser.cc" // lalr1.cc:919 break; case 9: -#line 735 "seclang-parser.yy" // lalr1.cc:906 +#line 735 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setStatus(modsecurity::audit_log::AuditLog::OffAuditLogStatus); } -#line 1494 "seclang-parser.cc" // lalr1.cc:906 +#line 1509 "seclang-parser.cc" // lalr1.cc:919 break; case 10: -#line 739 "seclang-parser.yy" // lalr1.cc:906 +#line 739 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setStatus(modsecurity::audit_log::AuditLog::OnAuditLogStatus); } -#line 1502 "seclang-parser.cc" // lalr1.cc:906 +#line 1517 "seclang-parser.cc" // lalr1.cc:919 break; case 11: -#line 745 "seclang-parser.yy" // lalr1.cc:906 +#line 745 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setFileMode(strtol(yystack_[0].value.as< std::string > ().c_str(), NULL, 8)); + driver.m_auditLog->setFileMode(strtol(yystack_[0].value.as < std::string > ().c_str(), NULL, 8)); } -#line 1510 "seclang-parser.cc" // lalr1.cc:906 +#line 1525 "seclang-parser.cc" // lalr1.cc:919 break; case 12: -#line 751 "seclang-parser.yy" // lalr1.cc:906 +#line 751 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setFilePath2(yystack_[0].value.as< std::string > ()); + driver.m_auditLog->setFilePath2(yystack_[0].value.as < std::string > ()); } -#line 1518 "seclang-parser.cc" // lalr1.cc:906 +#line 1533 "seclang-parser.cc" // lalr1.cc:919 break; case 13: -#line 757 "seclang-parser.yy" // lalr1.cc:906 +#line 757 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setParts(yystack_[0].value.as< std::string > ()); + driver.m_auditLog->setParts(yystack_[0].value.as < std::string > ()); } -#line 1526 "seclang-parser.cc" // lalr1.cc:906 +#line 1541 "seclang-parser.cc" // lalr1.cc:919 break; case 14: -#line 763 "seclang-parser.yy" // lalr1.cc:906 +#line 763 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_auditLog->setFilePath1(yystack_[0].value.as< std::string > ()); + driver.m_auditLog->setFilePath1(yystack_[0].value.as < std::string > ()); } -#line 1534 "seclang-parser.cc" // lalr1.cc:906 +#line 1549 "seclang-parser.cc" // lalr1.cc:919 break; case 15: -#line 768 "seclang-parser.yy" // lalr1.cc:906 +#line 768 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setFormat(modsecurity::audit_log::AuditLog::JSONAuditLogFormat); } -#line 1542 "seclang-parser.cc" // lalr1.cc:906 +#line 1557 "seclang-parser.cc" // lalr1.cc:919 break; case 16: -#line 773 "seclang-parser.yy" // lalr1.cc:906 +#line 773 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setFormat(modsecurity::audit_log::AuditLog::NativeAuditLogFormat); } -#line 1550 "seclang-parser.cc" // lalr1.cc:906 +#line 1565 "seclang-parser.cc" // lalr1.cc:919 break; case 17: -#line 779 "seclang-parser.yy" // lalr1.cc:906 +#line 779 "seclang-parser.yy" // lalr1.cc:919 { - std::string relevant_status(yystack_[0].value.as< std::string > ()); + std::string relevant_status(yystack_[0].value.as < std::string > ()); driver.m_auditLog->setRelevantStatus(relevant_status); } -#line 1559 "seclang-parser.cc" // lalr1.cc:906 +#line 1574 "seclang-parser.cc" // lalr1.cc:919 break; case 18: -#line 786 "seclang-parser.yy" // lalr1.cc:906 +#line 786 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setType(modsecurity::audit_log::AuditLog::SerialAuditLogType); } -#line 1567 "seclang-parser.cc" // lalr1.cc:906 +#line 1582 "seclang-parser.cc" // lalr1.cc:919 break; case 19: -#line 790 "seclang-parser.yy" // lalr1.cc:906 +#line 790 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setType(modsecurity::audit_log::AuditLog::ParallelAuditLogType); } -#line 1575 "seclang-parser.cc" // lalr1.cc:906 +#line 1590 "seclang-parser.cc" // lalr1.cc:919 break; case 20: -#line 794 "seclang-parser.yy" // lalr1.cc:906 +#line 794 "seclang-parser.yy" // lalr1.cc:919 { driver.m_auditLog->setType(modsecurity::audit_log::AuditLog::HttpsAuditLogType); } -#line 1583 "seclang-parser.cc" // lalr1.cc:906 +#line 1598 "seclang-parser.cc" // lalr1.cc:919 break; case 21: -#line 800 "seclang-parser.yy" // lalr1.cc:906 +#line 800 "seclang-parser.yy" // lalr1.cc:919 { driver.m_uploadKeepFiles = modsecurity::RulesProperties::TrueConfigBoolean; } -#line 1591 "seclang-parser.cc" // lalr1.cc:906 +#line 1606 "seclang-parser.cc" // lalr1.cc:919 break; case 22: -#line 804 "seclang-parser.yy" // lalr1.cc:906 +#line 804 "seclang-parser.yy" // lalr1.cc:919 { driver.m_uploadKeepFiles = modsecurity::RulesProperties::FalseConfigBoolean; } -#line 1599 "seclang-parser.cc" // lalr1.cc:906 +#line 1614 "seclang-parser.cc" // lalr1.cc:919 break; case 23: -#line 808 "seclang-parser.yy" // lalr1.cc:906 +#line 808 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecUploadKeepFiles RelevantOnly is not currently supported. Accepted values are On or Off"); YYERROR; } -#line 1608 "seclang-parser.cc" // lalr1.cc:906 +#line 1623 "seclang-parser.cc" // lalr1.cc:919 break; case 24: -#line 813 "seclang-parser.yy" // lalr1.cc:906 +#line 813 "seclang-parser.yy" // lalr1.cc:919 { driver.m_uploadFileLimit.m_set = true; - driver.m_uploadFileLimit.m_value = strtol(yystack_[0].value.as< std::string > ().c_str(), NULL, 10); + driver.m_uploadFileLimit.m_value = strtol(yystack_[0].value.as < std::string > ().c_str(), NULL, 10); } -#line 1617 "seclang-parser.cc" // lalr1.cc:906 +#line 1632 "seclang-parser.cc" // lalr1.cc:919 break; case 25: -#line 818 "seclang-parser.yy" // lalr1.cc:906 +#line 818 "seclang-parser.yy" // lalr1.cc:919 { driver.m_uploadFileMode.m_set = true; - driver.m_uploadFileMode.m_value = strtol(yystack_[0].value.as< std::string > ().c_str(), NULL, 8); + driver.m_uploadFileMode.m_value = strtol(yystack_[0].value.as < std::string > ().c_str(), NULL, 8); } -#line 1626 "seclang-parser.cc" // lalr1.cc:906 +#line 1641 "seclang-parser.cc" // lalr1.cc:919 break; case 26: -#line 823 "seclang-parser.yy" // lalr1.cc:906 +#line 823 "seclang-parser.yy" // lalr1.cc:919 { driver.m_uploadDirectory.m_set = true; - driver.m_uploadDirectory.m_value = yystack_[0].value.as< std::string > (); + driver.m_uploadDirectory.m_value = yystack_[0].value.as < std::string > (); } -#line 1635 "seclang-parser.cc" // lalr1.cc:906 +#line 1650 "seclang-parser.cc" // lalr1.cc:919 break; case 27: -#line 828 "seclang-parser.yy" // lalr1.cc:906 +#line 828 "seclang-parser.yy" // lalr1.cc:919 { driver.m_tmpSaveUploadedFiles = modsecurity::RulesProperties::TrueConfigBoolean; } -#line 1643 "seclang-parser.cc" // lalr1.cc:906 +#line 1658 "seclang-parser.cc" // lalr1.cc:919 break; case 28: -#line 832 "seclang-parser.yy" // lalr1.cc:906 +#line 832 "seclang-parser.yy" // lalr1.cc:919 { driver.m_tmpSaveUploadedFiles = modsecurity::RulesProperties::FalseConfigBoolean; } -#line 1651 "seclang-parser.cc" // lalr1.cc:906 +#line 1666 "seclang-parser.cc" // lalr1.cc:919 break; case 29: -#line 839 "seclang-parser.yy" // lalr1.cc:906 +#line 839 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[1].value.as< std::unique_ptr > > > ()); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[1].value.as < std::unique_ptr > > > ()); } -#line 1659 "seclang-parser.cc" // lalr1.cc:906 +#line 1674 "seclang-parser.cc" // lalr1.cc:919 break; case 30: -#line 843 "seclang-parser.yy" // lalr1.cc:906 +#line 843 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[0].value.as< std::unique_ptr > > > ()); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[0].value.as < std::unique_ptr > > > ()); } -#line 1667 "seclang-parser.cc" // lalr1.cc:906 +#line 1682 "seclang-parser.cc" // lalr1.cc:919 break; case 31: -#line 850 "seclang-parser.yy" // lalr1.cc:906 +#line 850 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_INIT(yystack_[0].value.as< std::unique_ptr > (), yystack_[3].location) - yystack_[2].value.as< std::unique_ptr > > > ()->push_back(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[2].value.as< std::unique_ptr > > > ()); + ACTION_INIT(yystack_[0].value.as < std::unique_ptr > (), yystack_[3].location) + yystack_[2].value.as < std::unique_ptr > > > ()->push_back(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[2].value.as < std::unique_ptr > > > ()); } -#line 1677 "seclang-parser.cc" // lalr1.cc:906 +#line 1692 "seclang-parser.cc" // lalr1.cc:919 break; case 32: -#line 856 "seclang-parser.yy" // lalr1.cc:906 +#line 856 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr>> b(new std::vector>()); - ACTION_INIT(yystack_[0].value.as< std::unique_ptr > (), yystack_[1].location) - b->push_back(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > > > () = std::move(b); + ACTION_INIT(yystack_[0].value.as < std::unique_ptr > (), yystack_[1].location) + b->push_back(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > > > () = std::move(b); } -#line 1688 "seclang-parser.cc" // lalr1.cc:906 +#line 1703 "seclang-parser.cc" // lalr1.cc:919 break; case 33: -#line 866 "seclang-parser.yy" // lalr1.cc:906 +#line 866 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > () = std::move(yystack_[0].value.as< std::unique_ptr > ()); + yylhs.value.as < std::unique_ptr > () = std::move(yystack_[0].value.as < std::unique_ptr > ()); std::string error; - if (yylhs.value.as< std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { + if (yylhs.value.as < std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { driver.error(yystack_[1].location, error); YYERROR; } } -#line 1701 "seclang-parser.cc" // lalr1.cc:906 +#line 1716 "seclang-parser.cc" // lalr1.cc:919 break; case 34: -#line 875 "seclang-parser.yy" // lalr1.cc:906 +#line 875 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > () = std::move(yystack_[0].value.as< std::unique_ptr > ()); - yylhs.value.as< std::unique_ptr > ()->m_negation = true; + yylhs.value.as < std::unique_ptr > () = std::move(yystack_[0].value.as < std::unique_ptr > ()); + yylhs.value.as < std::unique_ptr > ()->m_negation = true; std::string error; - if (yylhs.value.as< std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { + if (yylhs.value.as < std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { driver.error(yystack_[2].location, error); YYERROR; } } -#line 1715 "seclang-parser.cc" // lalr1.cc:906 +#line 1730 "seclang-parser.cc" // lalr1.cc:919 break; case 35: -#line 885 "seclang-parser.yy" // lalr1.cc:906 +#line 885 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as < std::unique_ptr > ()))); std::string error; - if (yylhs.value.as< std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { + if (yylhs.value.as < std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { driver.error(yystack_[1].location, error); YYERROR; } } -#line 1728 "seclang-parser.cc" // lalr1.cc:906 +#line 1743 "seclang-parser.cc" // lalr1.cc:919 break; case 36: -#line 894 "seclang-parser.yy" // lalr1.cc:906 +#line 894 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as< std::unique_ptr > ()))); - yylhs.value.as< std::unique_ptr > ()->m_negation = true; + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as < std::unique_ptr > ()))); + yylhs.value.as < std::unique_ptr > ()->m_negation = true; std::string error; - if (yylhs.value.as< std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { + if (yylhs.value.as < std::unique_ptr > ()->init(driver.ref.back(), &error) == false) { driver.error(yystack_[2].location, error); YYERROR; } } -#line 1742 "seclang-parser.cc" // lalr1.cc:906 +#line 1757 "seclang-parser.cc" // lalr1.cc:919 break; case 37: -#line 907 "seclang-parser.yy" // lalr1.cc:906 +#line 907 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::UnconditionalMatch()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::UnconditionalMatch()); } -#line 1750 "seclang-parser.cc" // lalr1.cc:906 +#line 1765 "seclang-parser.cc" // lalr1.cc:919 break; case 38: -#line 911 "seclang-parser.yy" // lalr1.cc:906 +#line 911 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::DetectSQLi()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::DetectSQLi()); } -#line 1758 "seclang-parser.cc" // lalr1.cc:906 +#line 1773 "seclang-parser.cc" // lalr1.cc:919 break; case 39: -#line 915 "seclang-parser.yy" // lalr1.cc:906 +#line 915 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::DetectXSS()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::DetectXSS()); } -#line 1766 "seclang-parser.cc" // lalr1.cc:906 +#line 1781 "seclang-parser.cc" // lalr1.cc:919 break; case 40: -#line 919 "seclang-parser.yy" // lalr1.cc:906 +#line 919 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ValidateUrlEncoding()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ValidateUrlEncoding()); } -#line 1774 "seclang-parser.cc" // lalr1.cc:906 +#line 1789 "seclang-parser.cc" // lalr1.cc:919 break; case 41: -#line 923 "seclang-parser.yy" // lalr1.cc:906 +#line 923 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ValidateUtf8Encoding()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ValidateUtf8Encoding()); } -#line 1782 "seclang-parser.cc" // lalr1.cc:906 +#line 1797 "seclang-parser.cc" // lalr1.cc:919 break; case 42: -#line 927 "seclang-parser.yy" // lalr1.cc:906 +#line 927 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::InspectFile(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::InspectFile(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1790 "seclang-parser.cc" // lalr1.cc:906 +#line 1805 "seclang-parser.cc" // lalr1.cc:919 break; case 43: -#line 931 "seclang-parser.yy" // lalr1.cc:906 +#line 931 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::FuzzyHash(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::FuzzyHash(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1798 "seclang-parser.cc" // lalr1.cc:906 +#line 1813 "seclang-parser.cc" // lalr1.cc:919 break; case 44: -#line 935 "seclang-parser.yy" // lalr1.cc:906 +#line 935 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ValidateByteRange(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ValidateByteRange(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1806 "seclang-parser.cc" // lalr1.cc:906 +#line 1821 "seclang-parser.cc" // lalr1.cc:919 break; case 45: -#line 939 "seclang-parser.yy" // lalr1.cc:906 +#line 939 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ValidateDTD(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ValidateDTD(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1814 "seclang-parser.cc" // lalr1.cc:906 +#line 1829 "seclang-parser.cc" // lalr1.cc:919 break; case 46: -#line 943 "seclang-parser.yy" // lalr1.cc:906 +#line 943 "seclang-parser.yy" // lalr1.cc:919 { /* $$ = new operators::ValidateHash($1); */ OPERATOR_NOT_SUPPORTED("ValidateHash", yystack_[2].location); } -#line 1823 "seclang-parser.cc" // lalr1.cc:906 +#line 1838 "seclang-parser.cc" // lalr1.cc:919 break; case 47: -#line 948 "seclang-parser.yy" // lalr1.cc:906 +#line 948 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ValidateSchema(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ValidateSchema(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1831 "seclang-parser.cc" // lalr1.cc:906 +#line 1846 "seclang-parser.cc" // lalr1.cc:919 break; case 48: -#line 952 "seclang-parser.yy" // lalr1.cc:906 +#line 952 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::VerifyCC(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::VerifyCC(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1839 "seclang-parser.cc" // lalr1.cc:906 +#line 1854 "seclang-parser.cc" // lalr1.cc:919 break; case 49: -#line 956 "seclang-parser.yy" // lalr1.cc:906 +#line 956 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::VerifyCPF(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::VerifyCPF(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1847 "seclang-parser.cc" // lalr1.cc:906 +#line 1862 "seclang-parser.cc" // lalr1.cc:919 break; case 50: -#line 960 "seclang-parser.yy" // lalr1.cc:906 +#line 960 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::VerifySSN(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::VerifySSN(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1855 "seclang-parser.cc" // lalr1.cc:906 +#line 1870 "seclang-parser.cc" // lalr1.cc:919 break; case 51: -#line 964 "seclang-parser.yy" // lalr1.cc:906 +#line 964 "seclang-parser.yy" // lalr1.cc:919 { /* $$ = new operators::GsbLookup($1); */ OPERATOR_NOT_SUPPORTED("GsbLookup", yystack_[2].location); } -#line 1864 "seclang-parser.cc" // lalr1.cc:906 +#line 1879 "seclang-parser.cc" // lalr1.cc:919 break; case 52: -#line 969 "seclang-parser.yy" // lalr1.cc:906 +#line 969 "seclang-parser.yy" // lalr1.cc:919 { /* $$ = new operators::Rsub($1); */ OPERATOR_NOT_SUPPORTED("Rsub", yystack_[2].location); } -#line 1873 "seclang-parser.cc" // lalr1.cc:906 +#line 1888 "seclang-parser.cc" // lalr1.cc:919 break; case 53: -#line 974 "seclang-parser.yy" // lalr1.cc:906 +#line 974 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Within(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Within(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1881 "seclang-parser.cc" // lalr1.cc:906 +#line 1896 "seclang-parser.cc" // lalr1.cc:919 break; case 54: -#line 978 "seclang-parser.yy" // lalr1.cc:906 +#line 978 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::ContainsWord(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::ContainsWord(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1889 "seclang-parser.cc" // lalr1.cc:906 +#line 1904 "seclang-parser.cc" // lalr1.cc:919 break; case 55: -#line 982 "seclang-parser.yy" // lalr1.cc:906 +#line 982 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Contains(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Contains(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1897 "seclang-parser.cc" // lalr1.cc:906 +#line 1912 "seclang-parser.cc" // lalr1.cc:919 break; case 56: -#line 986 "seclang-parser.yy" // lalr1.cc:906 +#line 986 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::EndsWith(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::EndsWith(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1905 "seclang-parser.cc" // lalr1.cc:906 +#line 1920 "seclang-parser.cc" // lalr1.cc:919 break; case 57: -#line 990 "seclang-parser.yy" // lalr1.cc:906 +#line 990 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Eq(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Eq(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1913 "seclang-parser.cc" // lalr1.cc:906 +#line 1928 "seclang-parser.cc" // lalr1.cc:919 break; case 58: -#line 994 "seclang-parser.yy" // lalr1.cc:906 +#line 994 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Ge(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Ge(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1921 "seclang-parser.cc" // lalr1.cc:906 +#line 1936 "seclang-parser.cc" // lalr1.cc:919 break; case 59: -#line 998 "seclang-parser.yy" // lalr1.cc:906 +#line 998 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Gt(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Gt(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1929 "seclang-parser.cc" // lalr1.cc:906 +#line 1944 "seclang-parser.cc" // lalr1.cc:919 break; case 60: -#line 1002 "seclang-parser.yy" // lalr1.cc:906 +#line 1002 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::IpMatchF(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::IpMatchF(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1937 "seclang-parser.cc" // lalr1.cc:906 +#line 1952 "seclang-parser.cc" // lalr1.cc:919 break; case 61: -#line 1006 "seclang-parser.yy" // lalr1.cc:906 +#line 1006 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::IpMatch(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::IpMatch(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1945 "seclang-parser.cc" // lalr1.cc:906 +#line 1960 "seclang-parser.cc" // lalr1.cc:919 break; case 62: -#line 1010 "seclang-parser.yy" // lalr1.cc:906 +#line 1010 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Le(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Le(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1953 "seclang-parser.cc" // lalr1.cc:906 +#line 1968 "seclang-parser.cc" // lalr1.cc:919 break; case 63: -#line 1014 "seclang-parser.yy" // lalr1.cc:906 +#line 1014 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Lt(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Lt(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1961 "seclang-parser.cc" // lalr1.cc:906 +#line 1976 "seclang-parser.cc" // lalr1.cc:919 break; case 64: -#line 1018 "seclang-parser.yy" // lalr1.cc:906 +#line 1018 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::PmFromFile(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::PmFromFile(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1969 "seclang-parser.cc" // lalr1.cc:906 +#line 1984 "seclang-parser.cc" // lalr1.cc:919 break; case 65: -#line 1022 "seclang-parser.yy" // lalr1.cc:906 +#line 1022 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Pm(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Pm(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1977 "seclang-parser.cc" // lalr1.cc:906 +#line 1992 "seclang-parser.cc" // lalr1.cc:919 break; case 66: -#line 1026 "seclang-parser.yy" // lalr1.cc:906 +#line 1026 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Rbl(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Rbl(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1985 "seclang-parser.cc" // lalr1.cc:906 +#line 2000 "seclang-parser.cc" // lalr1.cc:919 break; case 67: -#line 1030 "seclang-parser.yy" // lalr1.cc:906 +#line 1030 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::Rx(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 1993 "seclang-parser.cc" // lalr1.cc:906 +#line 2008 "seclang-parser.cc" // lalr1.cc:919 break; case 68: -#line 1034 "seclang-parser.yy" // lalr1.cc:906 +#line 1034 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::StrEq(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::StrEq(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 2001 "seclang-parser.cc" // lalr1.cc:906 +#line 2016 "seclang-parser.cc" // lalr1.cc:919 break; case 69: -#line 1038 "seclang-parser.yy" // lalr1.cc:906 +#line 1038 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::StrMatch(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::StrMatch(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 2009 "seclang-parser.cc" // lalr1.cc:906 +#line 2024 "seclang-parser.cc" // lalr1.cc:919 break; case 70: -#line 1042 "seclang-parser.yy" // lalr1.cc:906 +#line 1042 "seclang-parser.yy" // lalr1.cc:919 { - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::BeginsWith(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::BeginsWith(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 2017 "seclang-parser.cc" // lalr1.cc:906 +#line 2032 "seclang-parser.cc" // lalr1.cc:919 break; case 71: -#line 1046 "seclang-parser.yy" // lalr1.cc:906 +#line 1046 "seclang-parser.yy" // lalr1.cc:919 { #if defined(WITH_GEOIP) or defined(WITH_MAXMIND) - OPERATOR_CONTAINER(yylhs.value.as< std::unique_ptr > (), new operators::GeoLookup()); + OPERATOR_CONTAINER(yylhs.value.as < std::unique_ptr > (), new operators::GeoLookup()); #else std::stringstream ss; ss << "This version of ModSecurity was not compiled with GeoIP or MaxMind support."; @@ -2028,22 +2043,22 @@ namespace yy { YYERROR; #endif // WITH_GEOIP } -#line 2032 "seclang-parser.cc" // lalr1.cc:906 +#line 2047 "seclang-parser.cc" // lalr1.cc:919 break; case 73: -#line 1061 "seclang-parser.yy" // lalr1.cc:906 +#line 1061 "seclang-parser.yy" // lalr1.cc:919 { std::vector *a = new std::vector(); - for (auto &i : *yystack_[0].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[0].value.as < std::unique_ptr > > > ().get()) { a->push_back(i.release()); } variables::Variables *v = new variables::Variables(); - for (auto &i : *yystack_[2].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[2].value.as < std::unique_ptr > > > ().get()) { v->push_back(i.release()); } - Operator *op = yystack_[1].value.as< std::unique_ptr > ().release(); + Operator *op = yystack_[1].value.as < std::unique_ptr > ().release(); Rule *rule = new Rule( /* op */ op, /* variables */ v, @@ -2057,19 +2072,19 @@ namespace yy { YYERROR; } } -#line 2061 "seclang-parser.cc" // lalr1.cc:906 +#line 2076 "seclang-parser.cc" // lalr1.cc:919 break; case 74: -#line 1086 "seclang-parser.yy" // lalr1.cc:906 +#line 1086 "seclang-parser.yy" // lalr1.cc:919 { variables::Variables *v = new variables::Variables(); - for (auto &i : *yystack_[1].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[1].value.as < std::unique_ptr > > > ().get()) { v->push_back(i.release()); } Rule *rule = new Rule( - /* op */ yystack_[0].value.as< std::unique_ptr > ().release(), + /* op */ yystack_[0].value.as < std::unique_ptr > ().release(), /* variables */ v, /* actions */ NULL, /* file name */ driver.ref.back(), @@ -2080,14 +2095,14 @@ namespace yy { YYERROR; } } -#line 2084 "seclang-parser.cc" // lalr1.cc:906 +#line 2099 "seclang-parser.cc" // lalr1.cc:919 break; case 75: -#line 1105 "seclang-parser.yy" // lalr1.cc:906 +#line 1105 "seclang-parser.yy" // lalr1.cc:919 { std::vector *a = new std::vector(); - for (auto &i : *yystack_[0].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[0].value.as < std::unique_ptr > > > ().get()) { a->push_back(i.release()); } Rule *rule = new Rule( @@ -2099,19 +2114,19 @@ namespace yy { ); driver.addSecAction(rule); } -#line 2103 "seclang-parser.cc" // lalr1.cc:906 +#line 2118 "seclang-parser.cc" // lalr1.cc:919 break; case 76: -#line 1120 "seclang-parser.yy" // lalr1.cc:906 +#line 1120 "seclang-parser.yy" // lalr1.cc:919 { std::string err; std::vector *a = new std::vector(); - for (auto &i : *yystack_[0].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[0].value.as < std::unique_ptr > > > ().get()) { a->push_back(i.release()); } RuleScript *r = new RuleScript( - /* path to script */ yystack_[1].value.as< std::string > (), + /* path to script */ yystack_[1].value.as < std::string > (), /* actions */ a, /* file name */ driver.ref.back(), /* line number */ yystack_[1].location.end.line @@ -2127,15 +2142,15 @@ namespace yy { YYERROR; } } -#line 2131 "seclang-parser.cc" // lalr1.cc:906 +#line 2146 "seclang-parser.cc" // lalr1.cc:919 break; case 77: -#line 1144 "seclang-parser.yy" // lalr1.cc:906 +#line 1144 "seclang-parser.yy" // lalr1.cc:919 { bool hasDisruptive = false; std::vector *actions = new std::vector(); - for (auto &i : *yystack_[0].value.as< std::unique_ptr > > > ().get()) { + for (auto &i : *yystack_[0].value.as < std::unique_ptr > > > ().get()) { actions->push_back(i.release()); } std::vector checkedActions; @@ -2187,460 +2202,460 @@ namespace yy { delete actions; } -#line 2191 "seclang-parser.cc" // lalr1.cc:906 +#line 2206 "seclang-parser.cc" // lalr1.cc:919 break; case 78: -#line 1200 "seclang-parser.yy" // lalr1.cc:906 +#line 1200 "seclang-parser.yy" // lalr1.cc:919 { - driver.addSecMarker(modsecurity::utils::string::removeBracketsIfNeeded(yystack_[0].value.as< std::string > ())); + driver.addSecMarker(modsecurity::utils::string::removeBracketsIfNeeded(yystack_[0].value.as < std::string > ())); } -#line 2199 "seclang-parser.cc" // lalr1.cc:906 +#line 2214 "seclang-parser.cc" // lalr1.cc:919 break; case 79: -#line 1204 "seclang-parser.yy" // lalr1.cc:906 +#line 1204 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secRuleEngine = modsecurity::Rules::DisabledRuleEngine; } -#line 2207 "seclang-parser.cc" // lalr1.cc:906 +#line 2222 "seclang-parser.cc" // lalr1.cc:919 break; case 80: -#line 1208 "seclang-parser.yy" // lalr1.cc:906 +#line 1208 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secRuleEngine = modsecurity::Rules::EnabledRuleEngine; } -#line 2215 "seclang-parser.cc" // lalr1.cc:906 +#line 2230 "seclang-parser.cc" // lalr1.cc:919 break; case 81: -#line 1212 "seclang-parser.yy" // lalr1.cc:906 +#line 1212 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secRuleEngine = modsecurity::Rules::DetectionOnlyRuleEngine; } -#line 2223 "seclang-parser.cc" // lalr1.cc:906 +#line 2238 "seclang-parser.cc" // lalr1.cc:919 break; case 82: -#line 1216 "seclang-parser.yy" // lalr1.cc:906 +#line 1216 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secRequestBodyAccess = modsecurity::RulesProperties::TrueConfigBoolean; } -#line 2231 "seclang-parser.cc" // lalr1.cc:906 +#line 2246 "seclang-parser.cc" // lalr1.cc:919 break; case 83: -#line 1220 "seclang-parser.yy" // lalr1.cc:906 +#line 1220 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secRequestBodyAccess = modsecurity::RulesProperties::FalseConfigBoolean; } -#line 2239 "seclang-parser.cc" // lalr1.cc:906 +#line 2254 "seclang-parser.cc" // lalr1.cc:919 break; case 84: -#line 1224 "seclang-parser.yy" // lalr1.cc:906 +#line 1224 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secResponseBodyAccess = modsecurity::RulesProperties::TrueConfigBoolean; } -#line 2247 "seclang-parser.cc" // lalr1.cc:906 +#line 2262 "seclang-parser.cc" // lalr1.cc:919 break; case 85: -#line 1228 "seclang-parser.yy" // lalr1.cc:906 +#line 1228 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secResponseBodyAccess = modsecurity::RulesProperties::FalseConfigBoolean; } -#line 2255 "seclang-parser.cc" // lalr1.cc:906 +#line 2270 "seclang-parser.cc" // lalr1.cc:919 break; case 86: -#line 1232 "seclang-parser.yy" // lalr1.cc:906 +#line 1232 "seclang-parser.yy" // lalr1.cc:919 { - if (yystack_[0].value.as< std::string > ().length() != 1) { + if (yystack_[0].value.as < std::string > ().length() != 1) { driver.error(yystack_[1].location, "Argument separator should be set to a single character."); YYERROR; } - driver.m_secArgumentSeparator.m_value = yystack_[0].value.as< std::string > (); + driver.m_secArgumentSeparator.m_value = yystack_[0].value.as < std::string > (); driver.m_secArgumentSeparator.m_set = true; } -#line 2268 "seclang-parser.cc" // lalr1.cc:906 +#line 2283 "seclang-parser.cc" // lalr1.cc:919 break; case 87: -#line 1241 "seclang-parser.yy" // lalr1.cc:906 +#line 1241 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_components.push_back(yystack_[0].value.as< std::string > ()); + driver.m_components.push_back(yystack_[0].value.as < std::string > ()); } -#line 2276 "seclang-parser.cc" // lalr1.cc:906 +#line 2291 "seclang-parser.cc" // lalr1.cc:919 break; case 88: -#line 1245 "seclang-parser.yy" // lalr1.cc:906 +#line 1245 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecConnEngine is not yet supported."); YYERROR; } -#line 2285 "seclang-parser.cc" // lalr1.cc:906 +#line 2300 "seclang-parser.cc" // lalr1.cc:919 break; case 89: -#line 1250 "seclang-parser.yy" // lalr1.cc:906 +#line 1250 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2292 "seclang-parser.cc" // lalr1.cc:906 +#line 2307 "seclang-parser.cc" // lalr1.cc:919 break; case 90: -#line 1253 "seclang-parser.yy" // lalr1.cc:906 +#line 1253 "seclang-parser.yy" // lalr1.cc:919 { - driver.m_secWebAppId.m_value = yystack_[0].value.as< std::string > (); + driver.m_secWebAppId.m_value = yystack_[0].value.as < std::string > (); driver.m_secWebAppId.m_set = true; } -#line 2301 "seclang-parser.cc" // lalr1.cc:906 +#line 2316 "seclang-parser.cc" // lalr1.cc:919 break; case 91: -#line 1258 "seclang-parser.yy" // lalr1.cc:906 +#line 1258 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecServerSignature is not supported."); YYERROR; } -#line 2310 "seclang-parser.cc" // lalr1.cc:906 +#line 2325 "seclang-parser.cc" // lalr1.cc:919 break; case 92: -#line 1263 "seclang-parser.yy" // lalr1.cc:906 +#line 1263 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecCacheTransformations is not supported."); YYERROR; } -#line 2319 "seclang-parser.cc" // lalr1.cc:906 +#line 2334 "seclang-parser.cc" // lalr1.cc:919 break; case 93: -#line 1268 "seclang-parser.yy" // lalr1.cc:906 +#line 1268 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecDisableBackendCompression is not supported."); YYERROR; } -#line 2328 "seclang-parser.cc" // lalr1.cc:906 +#line 2343 "seclang-parser.cc" // lalr1.cc:919 break; case 94: -#line 1273 "seclang-parser.yy" // lalr1.cc:906 +#line 1273 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2335 "seclang-parser.cc" // lalr1.cc:906 +#line 2350 "seclang-parser.cc" // lalr1.cc:919 break; case 95: -#line 1276 "seclang-parser.yy" // lalr1.cc:906 +#line 1276 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecContentInjection is not yet supported."); YYERROR; } -#line 2344 "seclang-parser.cc" // lalr1.cc:906 +#line 2359 "seclang-parser.cc" // lalr1.cc:919 break; case 96: -#line 1281 "seclang-parser.yy" // lalr1.cc:906 +#line 1281 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2351 "seclang-parser.cc" // lalr1.cc:906 +#line 2366 "seclang-parser.cc" // lalr1.cc:919 break; case 97: -#line 1284 "seclang-parser.yy" // lalr1.cc:906 +#line 1284 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecChrootDir is not supported."); YYERROR; } -#line 2360 "seclang-parser.cc" // lalr1.cc:906 +#line 2375 "seclang-parser.cc" // lalr1.cc:919 break; case 98: -#line 1289 "seclang-parser.yy" // lalr1.cc:906 +#line 1289 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecHashEngine is not yet supported."); YYERROR; } -#line 2369 "seclang-parser.cc" // lalr1.cc:906 +#line 2384 "seclang-parser.cc" // lalr1.cc:919 break; case 99: -#line 1294 "seclang-parser.yy" // lalr1.cc:906 +#line 1294 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2376 "seclang-parser.cc" // lalr1.cc:906 +#line 2391 "seclang-parser.cc" // lalr1.cc:919 break; case 100: -#line 1297 "seclang-parser.yy" // lalr1.cc:906 +#line 1297 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecHashKey is not yet supported."); YYERROR; } -#line 2385 "seclang-parser.cc" // lalr1.cc:906 +#line 2400 "seclang-parser.cc" // lalr1.cc:919 break; case 101: -#line 1302 "seclang-parser.yy" // lalr1.cc:906 +#line 1302 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecHashParam is not yet supported."); YYERROR; } -#line 2394 "seclang-parser.cc" // lalr1.cc:906 +#line 2409 "seclang-parser.cc" // lalr1.cc:919 break; case 102: -#line 1307 "seclang-parser.yy" // lalr1.cc:906 +#line 1307 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecHashMethodRx is not yet supported."); YYERROR; } -#line 2403 "seclang-parser.cc" // lalr1.cc:906 +#line 2418 "seclang-parser.cc" // lalr1.cc:919 break; case 103: -#line 1312 "seclang-parser.yy" // lalr1.cc:906 +#line 1312 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecHashMethodPm is not yet supported."); YYERROR; } -#line 2412 "seclang-parser.cc" // lalr1.cc:906 +#line 2427 "seclang-parser.cc" // lalr1.cc:919 break; case 104: -#line 1317 "seclang-parser.yy" // lalr1.cc:906 +#line 1317 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecGsbLookupDb is not supported."); YYERROR; } -#line 2421 "seclang-parser.cc" // lalr1.cc:906 +#line 2436 "seclang-parser.cc" // lalr1.cc:919 break; case 105: -#line 1322 "seclang-parser.yy" // lalr1.cc:906 +#line 1322 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecGuardianLog is not supported."); YYERROR; } -#line 2430 "seclang-parser.cc" // lalr1.cc:906 +#line 2445 "seclang-parser.cc" // lalr1.cc:919 break; case 106: -#line 1327 "seclang-parser.yy" // lalr1.cc:906 +#line 1327 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecInterceptOnError is not yet supported."); YYERROR; } -#line 2439 "seclang-parser.cc" // lalr1.cc:906 +#line 2454 "seclang-parser.cc" // lalr1.cc:919 break; case 107: -#line 1332 "seclang-parser.yy" // lalr1.cc:906 +#line 1332 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2446 "seclang-parser.cc" // lalr1.cc:906 +#line 2461 "seclang-parser.cc" // lalr1.cc:919 break; case 108: -#line 1335 "seclang-parser.yy" // lalr1.cc:906 +#line 1335 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecConnReadStateLimit is not yet supported."); YYERROR; } -#line 2455 "seclang-parser.cc" // lalr1.cc:906 +#line 2470 "seclang-parser.cc" // lalr1.cc:919 break; case 109: -#line 1340 "seclang-parser.yy" // lalr1.cc:906 +#line 1340 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecConnWriteStateLimit is not yet supported."); YYERROR; } -#line 2464 "seclang-parser.cc" // lalr1.cc:906 +#line 2479 "seclang-parser.cc" // lalr1.cc:919 break; case 110: -#line 1345 "seclang-parser.yy" // lalr1.cc:906 +#line 1345 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecSensorId is not yet supported."); YYERROR; } -#line 2473 "seclang-parser.cc" // lalr1.cc:906 +#line 2488 "seclang-parser.cc" // lalr1.cc:919 break; case 111: -#line 1350 "seclang-parser.yy" // lalr1.cc:906 +#line 1350 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[2].location, "SecRuleInheritance is not yet supported."); YYERROR; } -#line 2482 "seclang-parser.cc" // lalr1.cc:906 +#line 2497 "seclang-parser.cc" // lalr1.cc:919 break; case 112: -#line 1355 "seclang-parser.yy" // lalr1.cc:906 +#line 1355 "seclang-parser.yy" // lalr1.cc:919 { } -#line 2489 "seclang-parser.cc" // lalr1.cc:906 +#line 2504 "seclang-parser.cc" // lalr1.cc:919 break; case 113: -#line 1358 "seclang-parser.yy" // lalr1.cc:906 +#line 1358 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecRulePerfTime is not yet supported."); YYERROR; } -#line 2498 "seclang-parser.cc" // lalr1.cc:906 +#line 2513 "seclang-parser.cc" // lalr1.cc:919 break; case 114: -#line 1363 "seclang-parser.yy" // lalr1.cc:906 +#line 1363 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecStreamInBodyInspection is not supported."); YYERROR; } -#line 2507 "seclang-parser.cc" // lalr1.cc:906 +#line 2522 "seclang-parser.cc" // lalr1.cc:919 break; case 115: -#line 1368 "seclang-parser.yy" // lalr1.cc:906 +#line 1368 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecStreamOutBodyInspection is not supported."); YYERROR; } -#line 2516 "seclang-parser.cc" // lalr1.cc:906 +#line 2531 "seclang-parser.cc" // lalr1.cc:919 break; case 116: -#line 1373 "seclang-parser.yy" // lalr1.cc:906 +#line 1373 "seclang-parser.yy" // lalr1.cc:919 { std::string error; - if (driver.m_exceptions.load(yystack_[0].value.as< std::string > (), &error) == false) { + if (driver.m_exceptions.load(yystack_[0].value.as < std::string > (), &error) == false) { std::stringstream ss; ss << "SecRuleRemoveById: failed to load:"; - ss << yystack_[0].value.as< std::string > (); + ss << yystack_[0].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[1].location, ss.str()); YYERROR; } } -#line 2533 "seclang-parser.cc" // lalr1.cc:906 +#line 2548 "seclang-parser.cc" // lalr1.cc:919 break; case 117: -#line 1386 "seclang-parser.yy" // lalr1.cc:906 +#line 1386 "seclang-parser.yy" // lalr1.cc:919 { std::string error; - if (driver.m_exceptions.loadRemoveRuleByTag(yystack_[0].value.as< std::string > (), &error) == false) { + if (driver.m_exceptions.loadRemoveRuleByTag(yystack_[0].value.as < std::string > (), &error) == false) { std::stringstream ss; ss << "SecRuleRemoveByTag: failed to load:"; - ss << yystack_[0].value.as< std::string > (); + ss << yystack_[0].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[1].location, ss.str()); YYERROR; } } -#line 2550 "seclang-parser.cc" // lalr1.cc:906 +#line 2565 "seclang-parser.cc" // lalr1.cc:919 break; case 118: -#line 1399 "seclang-parser.yy" // lalr1.cc:906 +#line 1399 "seclang-parser.yy" // lalr1.cc:919 { std::string error; - if (driver.m_exceptions.loadRemoveRuleByMsg(yystack_[0].value.as< std::string > (), &error) == false) { + if (driver.m_exceptions.loadRemoveRuleByMsg(yystack_[0].value.as < std::string > (), &error) == false) { std::stringstream ss; ss << "SecRuleRemoveByMsg: failed to load:"; - ss << yystack_[0].value.as< std::string > (); + ss << yystack_[0].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[1].location, ss.str()); YYERROR; } } -#line 2567 "seclang-parser.cc" // lalr1.cc:906 +#line 2582 "seclang-parser.cc" // lalr1.cc:919 break; case 119: -#line 1412 "seclang-parser.yy" // lalr1.cc:906 +#line 1412 "seclang-parser.yy" // lalr1.cc:919 { std::string error; - if (driver.m_exceptions.loadUpdateTargetByTag(yystack_[1].value.as< std::string > (), std::move(yystack_[0].value.as< std::unique_ptr > > > ()), &error) == false) { + if (driver.m_exceptions.loadUpdateTargetByTag(yystack_[1].value.as < std::string > (), std::move(yystack_[0].value.as < std::unique_ptr > > > ()), &error) == false) { std::stringstream ss; ss << "SecRuleUpdateTargetByTag: failed to load:"; - ss << yystack_[1].value.as< std::string > (); + ss << yystack_[1].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[2].location, ss.str()); YYERROR; } } -#line 2584 "seclang-parser.cc" // lalr1.cc:906 +#line 2599 "seclang-parser.cc" // lalr1.cc:919 break; case 120: -#line 1425 "seclang-parser.yy" // lalr1.cc:906 +#line 1425 "seclang-parser.yy" // lalr1.cc:919 { std::string error; - if (driver.m_exceptions.loadUpdateTargetByMsg(yystack_[1].value.as< std::string > (), std::move(yystack_[0].value.as< std::unique_ptr > > > ()), &error) == false) { + if (driver.m_exceptions.loadUpdateTargetByMsg(yystack_[1].value.as < std::string > (), std::move(yystack_[0].value.as < std::unique_ptr > > > ()), &error) == false) { std::stringstream ss; ss << "SecRuleUpdateTargetByMsg: failed to load:"; - ss << yystack_[1].value.as< std::string > (); + ss << yystack_[1].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[2].location, ss.str()); YYERROR; } } -#line 2601 "seclang-parser.cc" // lalr1.cc:906 +#line 2616 "seclang-parser.cc" // lalr1.cc:919 break; case 121: -#line 1438 "seclang-parser.yy" // lalr1.cc:906 +#line 1438 "seclang-parser.yy" // lalr1.cc:919 { std::string error; double ruleId; try { - ruleId = std::stod(yystack_[1].value.as< std::string > ()); + ruleId = std::stod(yystack_[1].value.as < std::string > ()); } catch (...) { std::stringstream ss; ss << "SecRuleUpdateTargetById: failed to load:"; - ss << "The input \"" + yystack_[1].value.as< std::string > () + "\" does not "; + ss << "The input \"" + yystack_[1].value.as < std::string > () + "\" does not "; ss << "seems to be a valid rule id."; ss << ". "; driver.error(yystack_[2].location, ss.str()); YYERROR; } - if (driver.m_exceptions.loadUpdateTargetById(ruleId, std::move(yystack_[0].value.as< std::unique_ptr > > > ()), &error) == false) { + if (driver.m_exceptions.loadUpdateTargetById(ruleId, std::move(yystack_[0].value.as < std::unique_ptr > > > ()), &error) == false) { std::stringstream ss; ss << "SecRuleUpdateTargetById: failed to load:"; - ss << yystack_[1].value.as< std::string > (); + ss << yystack_[1].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[2].location, ss.str()); YYERROR; } } -#line 2631 "seclang-parser.cc" // lalr1.cc:906 +#line 2646 "seclang-parser.cc" // lalr1.cc:919 break; case 122: -#line 1464 "seclang-parser.yy" // lalr1.cc:906 +#line 1464 "seclang-parser.yy" // lalr1.cc:919 { std::string error; double ruleId; try { - ruleId = std::stod(yystack_[1].value.as< std::string > ()); + ruleId = std::stod(yystack_[1].value.as < std::string > ()); } catch (...) { std::stringstream ss; ss << "SecRuleUpdateActionById: failed to load:"; - ss << "The input \"" + yystack_[1].value.as< std::string > () + "\" does not "; + ss << "The input \"" + yystack_[1].value.as < std::string > () + "\" does not "; ss << "seems to be a valid rule id."; ss << ". "; driver.error(yystack_[2].location, ss.str()); @@ -2648,24 +2663,24 @@ namespace yy { } - if (driver.m_exceptions.loadUpdateActionById(ruleId, std::move(yystack_[0].value.as< std::unique_ptr > > > ()), &error) == false) { + if (driver.m_exceptions.loadUpdateActionById(ruleId, std::move(yystack_[0].value.as < std::unique_ptr > > > ()), &error) == false) { std::stringstream ss; ss << "SecRuleUpdateActionById: failed to load:"; - ss << yystack_[1].value.as< std::string > (); + ss << yystack_[1].value.as < std::string > (); ss << ". "; ss << error; driver.error(yystack_[2].location, ss.str()); YYERROR; } } -#line 2662 "seclang-parser.cc" // lalr1.cc:906 +#line 2677 "seclang-parser.cc" // lalr1.cc:919 break; case 123: -#line 1492 "seclang-parser.yy" // lalr1.cc:906 +#line 1492 "seclang-parser.yy" // lalr1.cc:919 { if (driver.m_debugLog != NULL) { - driver.m_debugLog->setDebugLogLevel(atoi(yystack_[0].value.as< std::string > ().c_str())); + driver.m_debugLog->setDebugLogLevel(atoi(yystack_[0].value.as < std::string > ().c_str())); } else { std::stringstream ss; ss << "Internal error, there is no DebugLog "; @@ -2674,15 +2689,15 @@ namespace yy { YYERROR; } } -#line 2678 "seclang-parser.cc" // lalr1.cc:906 +#line 2693 "seclang-parser.cc" // lalr1.cc:919 break; case 124: -#line 1504 "seclang-parser.yy" // lalr1.cc:906 +#line 1504 "seclang-parser.yy" // lalr1.cc:919 { if (driver.m_debugLog != NULL) { std::string error; - driver.m_debugLog->setDebugLogFile(yystack_[0].value.as< std::string > (), &error); + driver.m_debugLog->setDebugLogFile(yystack_[0].value.as < std::string > (), &error); if (error.size() > 0) { std::stringstream ss; ss << "Failed to start DebugLog: " << error; @@ -2697,19 +2712,19 @@ namespace yy { YYERROR; } } -#line 2701 "seclang-parser.cc" // lalr1.cc:906 +#line 2716 "seclang-parser.cc" // lalr1.cc:919 break; case 125: -#line 1524 "seclang-parser.yy" // lalr1.cc:906 +#line 1524 "seclang-parser.yy" // lalr1.cc:919 { #if defined(WITH_GEOIP) or defined(WITH_MAXMIND) std::string err; - std::string file = modsecurity::utils::find_resource(yystack_[0].value.as< std::string > (), + std::string file = modsecurity::utils::find_resource(yystack_[0].value.as < std::string > (), driver.ref.back(), &err); if (file.empty()) { std::stringstream ss; - ss << "Failed to load locate the GeoDB file from: " << yystack_[0].value.as< std::string > () << " "; + ss << "Failed to load locate the GeoDB file from: " << yystack_[0].value.as < std::string > () << " "; ss << err; driver.error(yystack_[1].location, ss.str()); YYERROR; @@ -2728,29 +2743,29 @@ namespace yy { YYERROR; #endif // WITH_GEOIP } -#line 2732 "seclang-parser.cc" // lalr1.cc:906 +#line 2747 "seclang-parser.cc" // lalr1.cc:919 break; case 126: -#line 1552 "seclang-parser.yy" // lalr1.cc:906 +#line 1552 "seclang-parser.yy" // lalr1.cc:919 { driver.m_requestBodyLimit.m_set = true; - driver.m_requestBodyLimit.m_value = atoi(yystack_[0].value.as< std::string > ().c_str()); + driver.m_requestBodyLimit.m_value = atoi(yystack_[0].value.as < std::string > ().c_str()); } -#line 2741 "seclang-parser.cc" // lalr1.cc:906 +#line 2756 "seclang-parser.cc" // lalr1.cc:919 break; case 127: -#line 1557 "seclang-parser.yy" // lalr1.cc:906 +#line 1557 "seclang-parser.yy" // lalr1.cc:919 { driver.m_requestBodyNoFilesLimit.m_set = true; - driver.m_requestBodyNoFilesLimit.m_value = atoi(yystack_[0].value.as< std::string > ().c_str()); + driver.m_requestBodyNoFilesLimit.m_value = atoi(yystack_[0].value.as < std::string > ().c_str()); } -#line 2750 "seclang-parser.cc" // lalr1.cc:906 +#line 2765 "seclang-parser.cc" // lalr1.cc:919 break; case 128: -#line 1562 "seclang-parser.yy" // lalr1.cc:906 +#line 1562 "seclang-parser.yy" // lalr1.cc:919 { std::stringstream ss; ss << "As of ModSecurity version 3.0, SecRequestBodyInMemoryLimit is no longer "; @@ -2759,70 +2774,70 @@ namespace yy { driver.error(yystack_[1].location, ss.str()); YYERROR; } -#line 2763 "seclang-parser.cc" // lalr1.cc:906 +#line 2778 "seclang-parser.cc" // lalr1.cc:919 break; case 129: -#line 1571 "seclang-parser.yy" // lalr1.cc:906 +#line 1571 "seclang-parser.yy" // lalr1.cc:919 { driver.m_responseBodyLimit.m_set = true; - driver.m_responseBodyLimit.m_value = atoi(yystack_[0].value.as< std::string > ().c_str()); + driver.m_responseBodyLimit.m_value = atoi(yystack_[0].value.as < std::string > ().c_str()); } -#line 2772 "seclang-parser.cc" // lalr1.cc:906 +#line 2787 "seclang-parser.cc" // lalr1.cc:919 break; case 130: -#line 1576 "seclang-parser.yy" // lalr1.cc:906 +#line 1576 "seclang-parser.yy" // lalr1.cc:919 { driver.m_requestBodyLimitAction = modsecurity::Rules::BodyLimitAction::ProcessPartialBodyLimitAction; } -#line 2780 "seclang-parser.cc" // lalr1.cc:906 +#line 2795 "seclang-parser.cc" // lalr1.cc:919 break; case 131: -#line 1580 "seclang-parser.yy" // lalr1.cc:906 +#line 1580 "seclang-parser.yy" // lalr1.cc:919 { driver.m_requestBodyLimitAction = modsecurity::Rules::BodyLimitAction::RejectBodyLimitAction; } -#line 2788 "seclang-parser.cc" // lalr1.cc:906 +#line 2803 "seclang-parser.cc" // lalr1.cc:919 break; case 132: -#line 1584 "seclang-parser.yy" // lalr1.cc:906 +#line 1584 "seclang-parser.yy" // lalr1.cc:919 { driver.m_responseBodyLimitAction = modsecurity::Rules::BodyLimitAction::ProcessPartialBodyLimitAction; } -#line 2796 "seclang-parser.cc" // lalr1.cc:906 +#line 2811 "seclang-parser.cc" // lalr1.cc:919 break; case 133: -#line 1588 "seclang-parser.yy" // lalr1.cc:906 +#line 1588 "seclang-parser.yy" // lalr1.cc:919 { driver.m_responseBodyLimitAction = modsecurity::Rules::BodyLimitAction::RejectBodyLimitAction; } -#line 2804 "seclang-parser.cc" // lalr1.cc:906 +#line 2819 "seclang-parser.cc" // lalr1.cc:919 break; case 134: -#line 1592 "seclang-parser.yy" // lalr1.cc:906 +#line 1592 "seclang-parser.yy" // lalr1.cc:919 { driver.m_remoteRulesActionOnFailed = Rules::OnFailedRemoteRulesAction::AbortOnFailedRemoteRulesAction; } -#line 2812 "seclang-parser.cc" // lalr1.cc:906 +#line 2827 "seclang-parser.cc" // lalr1.cc:919 break; case 135: -#line 1596 "seclang-parser.yy" // lalr1.cc:906 +#line 1596 "seclang-parser.yy" // lalr1.cc:919 { driver.m_remoteRulesActionOnFailed = Rules::OnFailedRemoteRulesAction::WarnOnFailedRemoteRulesAction; } -#line 2820 "seclang-parser.cc" // lalr1.cc:906 +#line 2835 "seclang-parser.cc" // lalr1.cc:919 break; case 138: -#line 1610 "seclang-parser.yy" // lalr1.cc:906 +#line 1610 "seclang-parser.yy" // lalr1.cc:919 { - std::istringstream buf(yystack_[0].value.as< std::string > ()); + std::istringstream buf(yystack_[0].value.as < std::string > ()); std::istream_iterator beg(buf), end; std::set tokens(beg, end); driver.m_responseBodyTypeToBeInspected.m_set = true; @@ -2832,37 +2847,37 @@ namespace yy { driver.m_responseBodyTypeToBeInspected.m_value.insert(*it); } } -#line 2836 "seclang-parser.cc" // lalr1.cc:906 +#line 2851 "seclang-parser.cc" // lalr1.cc:919 break; case 139: -#line 1622 "seclang-parser.yy" // lalr1.cc:906 +#line 1622 "seclang-parser.yy" // lalr1.cc:919 { driver.m_responseBodyTypeToBeInspected.m_set = true; driver.m_responseBodyTypeToBeInspected.m_clear = true; driver.m_responseBodyTypeToBeInspected.m_value.clear(); } -#line 2846 "seclang-parser.cc" // lalr1.cc:906 +#line 2861 "seclang-parser.cc" // lalr1.cc:919 break; case 140: -#line 1628 "seclang-parser.yy" // lalr1.cc:906 +#line 1628 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secXMLExternalEntity = modsecurity::RulesProperties::FalseConfigBoolean; } -#line 2854 "seclang-parser.cc" // lalr1.cc:906 +#line 2869 "seclang-parser.cc" // lalr1.cc:919 break; case 141: -#line 1632 "seclang-parser.yy" // lalr1.cc:906 +#line 1632 "seclang-parser.yy" // lalr1.cc:919 { driver.m_secXMLExternalEntity = modsecurity::RulesProperties::TrueConfigBoolean; } -#line 2862 "seclang-parser.cc" // lalr1.cc:906 +#line 2877 "seclang-parser.cc" // lalr1.cc:919 break; case 142: -#line 1636 "seclang-parser.yy" // lalr1.cc:906 +#line 1636 "seclang-parser.yy" // lalr1.cc:919 { /* Parser error disabled to avoid breaking default installations with modsecurity.conf-recommended std::stringstream ss; @@ -2873,31 +2888,31 @@ namespace yy { YYERROR; */ } -#line 2877 "seclang-parser.cc" // lalr1.cc:906 +#line 2892 "seclang-parser.cc" // lalr1.cc:919 break; case 145: -#line 1657 "seclang-parser.yy" // lalr1.cc:906 +#line 1657 "seclang-parser.yy" // lalr1.cc:919 { - if (atoi(yystack_[0].value.as< std::string > ().c_str()) == 1) { + if (atoi(yystack_[0].value.as < std::string > ().c_str()) == 1) { driver.error(yystack_[1].location, "SecCookieFormat 1 is not yet supported."); YYERROR; } } -#line 2888 "seclang-parser.cc" // lalr1.cc:906 +#line 2903 "seclang-parser.cc" // lalr1.cc:919 break; case 146: -#line 1664 "seclang-parser.yy" // lalr1.cc:906 +#line 1664 "seclang-parser.yy" // lalr1.cc:919 { driver.error(yystack_[1].location, "SecCookieV0Separator is not yet supported."); YYERROR; } -#line 2897 "seclang-parser.cc" // lalr1.cc:906 +#line 2912 "seclang-parser.cc" // lalr1.cc:919 break; case 148: -#line 1674 "seclang-parser.yy" // lalr1.cc:906 +#line 1674 "seclang-parser.yy" // lalr1.cc:919 { std::string error; std::vector param; @@ -2905,11 +2920,11 @@ namespace yy { std::string f; std::string file; std::string err; - param = utils::string::ssplit(yystack_[0].value.as< std::string > (), ' '); + param = utils::string::ssplit(yystack_[0].value.as < std::string > (), ' '); if (param.size() <= 1) { std::stringstream ss; ss << "Failed to process unicode map, missing "; - ss << "parameter: " << yystack_[0].value.as< std::string > () << " "; + ss << "parameter: " << yystack_[0].value.as < std::string > () << " "; driver.error(yystack_[1].location, ss.str()); YYERROR; } @@ -2951,33 +2966,33 @@ namespace yy { } } -#line 2955 "seclang-parser.cc" // lalr1.cc:906 +#line 2970 "seclang-parser.cc" // lalr1.cc:919 break; case 149: -#line 1728 "seclang-parser.yy" // lalr1.cc:906 +#line 1728 "seclang-parser.yy" // lalr1.cc:919 { /* Parser error disabled to avoid breaking default CRS installations with crs-setup.conf-recommended driver.error(@0, "SecCollectionTimeout is not yet supported."); YYERROR; */ } -#line 2966 "seclang-parser.cc" // lalr1.cc:906 +#line 2981 "seclang-parser.cc" // lalr1.cc:919 break; case 150: -#line 1735 "seclang-parser.yy" // lalr1.cc:906 +#line 1735 "seclang-parser.yy" // lalr1.cc:919 { driver.m_httpblKey.m_set = true; - driver.m_httpblKey.m_value = yystack_[0].value.as< std::string > (); + driver.m_httpblKey.m_value = yystack_[0].value.as < std::string > (); } -#line 2975 "seclang-parser.cc" // lalr1.cc:906 +#line 2990 "seclang-parser.cc" // lalr1.cc:919 break; case 151: -#line 1743 "seclang-parser.yy" // lalr1.cc:906 +#line 1743 "seclang-parser.yy" // lalr1.cc:919 { - std::unique_ptr > > originalList = std::move(yystack_[0].value.as< std::unique_ptr > > > ()); + std::unique_ptr > > originalList = std::move(yystack_[0].value.as < std::unique_ptr > > > ()); std::unique_ptr>> newList(new std::vector>()); std::unique_ptr>> newNewList(new std::vector>()); std::unique_ptr>> exclusionVars(new std::vector>()); @@ -3007,2365 +3022,2365 @@ namespace yy { newNewList->push_back(std::move(var)); } } - yylhs.value.as< std::unique_ptr > > > () = std::move(newNewList); + yylhs.value.as < std::unique_ptr > > > () = std::move(newNewList); } -#line 3013 "seclang-parser.cc" // lalr1.cc:906 +#line 3028 "seclang-parser.cc" // lalr1.cc:919 break; case 152: -#line 1780 "seclang-parser.yy" // lalr1.cc:906 +#line 1780 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[0].value.as< std::unique_ptr > > > ()); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[0].value.as < std::unique_ptr > > > ()); } -#line 3021 "seclang-parser.cc" // lalr1.cc:906 +#line 3036 "seclang-parser.cc" // lalr1.cc:919 break; case 153: -#line 1784 "seclang-parser.yy" // lalr1.cc:906 +#line 1784 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[1].value.as< std::unique_ptr > > > ()); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[1].value.as < std::unique_ptr > > > ()); } -#line 3029 "seclang-parser.cc" // lalr1.cc:906 +#line 3044 "seclang-parser.cc" // lalr1.cc:919 break; case 154: -#line 1791 "seclang-parser.yy" // lalr1.cc:906 +#line 1791 "seclang-parser.yy" // lalr1.cc:919 { - yystack_[2].value.as< std::unique_ptr > > > ()->push_back(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[2].value.as< std::unique_ptr > > > ()); + yystack_[2].value.as < std::unique_ptr > > > ()->push_back(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[2].value.as < std::unique_ptr > > > ()); } -#line 3038 "seclang-parser.cc" // lalr1.cc:906 +#line 3053 "seclang-parser.cc" // lalr1.cc:919 break; case 155: -#line 1796 "seclang-parser.yy" // lalr1.cc:906 +#line 1796 "seclang-parser.yy" // lalr1.cc:919 { - std::unique_ptr c(new VariableModificatorExclusion(std::move(yystack_[0].value.as< std::unique_ptr > ()))); - yystack_[3].value.as< std::unique_ptr > > > ()->push_back(std::move(c)); - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[3].value.as< std::unique_ptr > > > ()); + std::unique_ptr c(new VariableModificatorExclusion(std::move(yystack_[0].value.as < std::unique_ptr > ()))); + yystack_[3].value.as < std::unique_ptr > > > ()->push_back(std::move(c)); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[3].value.as < std::unique_ptr > > > ()); } -#line 3048 "seclang-parser.cc" // lalr1.cc:906 +#line 3063 "seclang-parser.cc" // lalr1.cc:919 break; case 156: -#line 1802 "seclang-parser.yy" // lalr1.cc:906 +#line 1802 "seclang-parser.yy" // lalr1.cc:919 { - std::unique_ptr c(new VariableModificatorCount(std::move(yystack_[0].value.as< std::unique_ptr > ()))); - yystack_[3].value.as< std::unique_ptr > > > ()->push_back(std::move(c)); - yylhs.value.as< std::unique_ptr > > > () = std::move(yystack_[3].value.as< std::unique_ptr > > > ()); + std::unique_ptr c(new VariableModificatorCount(std::move(yystack_[0].value.as < std::unique_ptr > ()))); + yystack_[3].value.as < std::unique_ptr > > > ()->push_back(std::move(c)); + yylhs.value.as < std::unique_ptr > > > () = std::move(yystack_[3].value.as < std::unique_ptr > > > ()); } -#line 3058 "seclang-parser.cc" // lalr1.cc:906 +#line 3073 "seclang-parser.cc" // lalr1.cc:919 break; case 157: -#line 1808 "seclang-parser.yy" // lalr1.cc:906 +#line 1808 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr>> b(new std::vector>()); - b->push_back(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > > > () = std::move(b); + b->push_back(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > > > () = std::move(b); } -#line 3068 "seclang-parser.cc" // lalr1.cc:906 +#line 3083 "seclang-parser.cc" // lalr1.cc:919 break; case 158: -#line 1814 "seclang-parser.yy" // lalr1.cc:906 +#line 1814 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr>> b(new std::vector>()); - std::unique_ptr c(new VariableModificatorExclusion(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + std::unique_ptr c(new VariableModificatorExclusion(std::move(yystack_[0].value.as < std::unique_ptr > ()))); b->push_back(std::move(c)); - yylhs.value.as< std::unique_ptr > > > () = std::move(b); + yylhs.value.as < std::unique_ptr > > > () = std::move(b); } -#line 3079 "seclang-parser.cc" // lalr1.cc:906 +#line 3094 "seclang-parser.cc" // lalr1.cc:919 break; case 159: -#line 1821 "seclang-parser.yy" // lalr1.cc:906 +#line 1821 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr>> b(new std::vector>()); - std::unique_ptr c(new VariableModificatorCount(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + std::unique_ptr c(new VariableModificatorCount(std::move(yystack_[0].value.as < std::unique_ptr > ()))); b->push_back(std::move(c)); - yylhs.value.as< std::unique_ptr > > > () = std::move(b); + yylhs.value.as < std::unique_ptr > > > () = std::move(b); } -#line 3090 "seclang-parser.cc" // lalr1.cc:906 +#line 3105 "seclang-parser.cc" // lalr1.cc:919 break; case 160: -#line 1831 "seclang-parser.yy" // lalr1.cc:906 +#line 1831 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Args_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Args_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3098 "seclang-parser.cc" // lalr1.cc:906 +#line 3113 "seclang-parser.cc" // lalr1.cc:919 break; case 161: -#line 1835 "seclang-parser.yy" // lalr1.cc:906 +#line 1835 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Args_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Args_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3106 "seclang-parser.cc" // lalr1.cc:906 +#line 3121 "seclang-parser.cc" // lalr1.cc:919 break; case 162: -#line 1839 "seclang-parser.yy" // lalr1.cc:906 +#line 1839 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Args_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Args_NoDictElement()); } -#line 3114 "seclang-parser.cc" // lalr1.cc:906 +#line 3129 "seclang-parser.cc" // lalr1.cc:919 break; case 163: -#line 1843 "seclang-parser.yy" // lalr1.cc:906 +#line 1843 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPost_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPost_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3122 "seclang-parser.cc" // lalr1.cc:906 +#line 3137 "seclang-parser.cc" // lalr1.cc:919 break; case 164: -#line 1847 "seclang-parser.yy" // lalr1.cc:906 +#line 1847 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPost_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPost_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3130 "seclang-parser.cc" // lalr1.cc:906 +#line 3145 "seclang-parser.cc" // lalr1.cc:919 break; case 165: -#line 1851 "seclang-parser.yy" // lalr1.cc:906 +#line 1851 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPost_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPost_NoDictElement()); } -#line 3138 "seclang-parser.cc" // lalr1.cc:906 +#line 3153 "seclang-parser.cc" // lalr1.cc:919 break; case 166: -#line 1855 "seclang-parser.yy" // lalr1.cc:906 +#line 1855 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGet_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGet_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3146 "seclang-parser.cc" // lalr1.cc:906 +#line 3161 "seclang-parser.cc" // lalr1.cc:919 break; case 167: -#line 1859 "seclang-parser.yy" // lalr1.cc:906 +#line 1859 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGet_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGet_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3154 "seclang-parser.cc" // lalr1.cc:906 +#line 3169 "seclang-parser.cc" // lalr1.cc:919 break; case 168: -#line 1863 "seclang-parser.yy" // lalr1.cc:906 +#line 1863 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGet_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGet_NoDictElement()); } -#line 3162 "seclang-parser.cc" // lalr1.cc:906 +#line 3177 "seclang-parser.cc" // lalr1.cc:919 break; case 169: -#line 1867 "seclang-parser.yy" // lalr1.cc:906 +#line 1867 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesSizes_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesSizes_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3170 "seclang-parser.cc" // lalr1.cc:906 +#line 3185 "seclang-parser.cc" // lalr1.cc:919 break; case 170: -#line 1871 "seclang-parser.yy" // lalr1.cc:906 +#line 1871 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesSizes_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesSizes_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3178 "seclang-parser.cc" // lalr1.cc:906 +#line 3193 "seclang-parser.cc" // lalr1.cc:919 break; case 171: -#line 1875 "seclang-parser.yy" // lalr1.cc:906 +#line 1875 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesSizes_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesSizes_NoDictElement()); } -#line 3186 "seclang-parser.cc" // lalr1.cc:906 +#line 3201 "seclang-parser.cc" // lalr1.cc:919 break; case 172: -#line 1879 "seclang-parser.yy" // lalr1.cc:906 +#line 1879 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3194 "seclang-parser.cc" // lalr1.cc:906 +#line 3209 "seclang-parser.cc" // lalr1.cc:919 break; case 173: -#line 1883 "seclang-parser.yy" // lalr1.cc:906 +#line 1883 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3202 "seclang-parser.cc" // lalr1.cc:906 +#line 3217 "seclang-parser.cc" // lalr1.cc:919 break; case 174: -#line 1887 "seclang-parser.yy" // lalr1.cc:906 +#line 1887 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesNames_NoDictElement()); } -#line 3210 "seclang-parser.cc" // lalr1.cc:906 +#line 3225 "seclang-parser.cc" // lalr1.cc:919 break; case 175: -#line 1891 "seclang-parser.yy" // lalr1.cc:906 +#line 1891 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpContent_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpContent_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3218 "seclang-parser.cc" // lalr1.cc:906 +#line 3233 "seclang-parser.cc" // lalr1.cc:919 break; case 176: -#line 1895 "seclang-parser.yy" // lalr1.cc:906 +#line 1895 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpContent_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpContent_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3226 "seclang-parser.cc" // lalr1.cc:906 +#line 3241 "seclang-parser.cc" // lalr1.cc:919 break; case 177: -#line 1899 "seclang-parser.yy" // lalr1.cc:906 +#line 1899 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpContent_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpContent_NoDictElement()); } -#line 3234 "seclang-parser.cc" // lalr1.cc:906 +#line 3249 "seclang-parser.cc" // lalr1.cc:919 break; case 178: -#line 1903 "seclang-parser.yy" // lalr1.cc:906 +#line 1903 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartFileName_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartFileName_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3242 "seclang-parser.cc" // lalr1.cc:906 +#line 3257 "seclang-parser.cc" // lalr1.cc:919 break; case 179: -#line 1907 "seclang-parser.yy" // lalr1.cc:906 +#line 1907 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartFileName_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartFileName_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3250 "seclang-parser.cc" // lalr1.cc:906 +#line 3265 "seclang-parser.cc" // lalr1.cc:919 break; case 180: -#line 1911 "seclang-parser.yy" // lalr1.cc:906 +#line 1911 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartFileName_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartFileName_NoDictElement()); } -#line 3258 "seclang-parser.cc" // lalr1.cc:906 +#line 3273 "seclang-parser.cc" // lalr1.cc:919 break; case 181: -#line 1915 "seclang-parser.yy" // lalr1.cc:906 +#line 1915 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartName_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartName_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3266 "seclang-parser.cc" // lalr1.cc:906 +#line 3281 "seclang-parser.cc" // lalr1.cc:919 break; case 182: -#line 1919 "seclang-parser.yy" // lalr1.cc:906 +#line 1919 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartName_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartName_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3274 "seclang-parser.cc" // lalr1.cc:906 +#line 3289 "seclang-parser.cc" // lalr1.cc:919 break; case 183: -#line 1923 "seclang-parser.yy" // lalr1.cc:906 +#line 1923 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultiPartName_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultiPartName_NoDictElement()); } -#line 3282 "seclang-parser.cc" // lalr1.cc:906 +#line 3297 "seclang-parser.cc" // lalr1.cc:919 break; case 184: -#line 1927 "seclang-parser.yy" // lalr1.cc:906 +#line 1927 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVarsNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVarsNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3290 "seclang-parser.cc" // lalr1.cc:906 +#line 3305 "seclang-parser.cc" // lalr1.cc:919 break; case 185: -#line 1931 "seclang-parser.yy" // lalr1.cc:906 +#line 1931 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVarsNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVarsNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3298 "seclang-parser.cc" // lalr1.cc:906 +#line 3313 "seclang-parser.cc" // lalr1.cc:919 break; case 186: -#line 1935 "seclang-parser.yy" // lalr1.cc:906 +#line 1935 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVarsNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVarsNames_NoDictElement()); } -#line 3306 "seclang-parser.cc" // lalr1.cc:906 +#line 3321 "seclang-parser.cc" // lalr1.cc:919 break; case 187: -#line 1939 "seclang-parser.yy" // lalr1.cc:906 +#line 1939 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVars_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVars_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3314 "seclang-parser.cc" // lalr1.cc:906 +#line 3329 "seclang-parser.cc" // lalr1.cc:919 break; case 188: -#line 1943 "seclang-parser.yy" // lalr1.cc:906 +#line 1943 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVars_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVars_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3322 "seclang-parser.cc" // lalr1.cc:906 +#line 3337 "seclang-parser.cc" // lalr1.cc:919 break; case 189: -#line 1947 "seclang-parser.yy" // lalr1.cc:906 +#line 1947 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVars_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVars_NoDictElement()); } -#line 3330 "seclang-parser.cc" // lalr1.cc:906 +#line 3345 "seclang-parser.cc" // lalr1.cc:919 break; case 190: -#line 1951 "seclang-parser.yy" // lalr1.cc:906 +#line 1951 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Files_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Files_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3338 "seclang-parser.cc" // lalr1.cc:906 +#line 3353 "seclang-parser.cc" // lalr1.cc:919 break; case 191: -#line 1955 "seclang-parser.yy" // lalr1.cc:906 +#line 1955 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Files_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Files_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3346 "seclang-parser.cc" // lalr1.cc:906 +#line 3361 "seclang-parser.cc" // lalr1.cc:919 break; case 192: -#line 1959 "seclang-parser.yy" // lalr1.cc:906 +#line 1959 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Files_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Files_NoDictElement()); } -#line 3354 "seclang-parser.cc" // lalr1.cc:906 +#line 3369 "seclang-parser.cc" // lalr1.cc:919 break; case 193: -#line 1963 "seclang-parser.yy" // lalr1.cc:906 +#line 1963 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookies_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookies_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3362 "seclang-parser.cc" // lalr1.cc:906 +#line 3377 "seclang-parser.cc" // lalr1.cc:919 break; case 194: -#line 1967 "seclang-parser.yy" // lalr1.cc:906 +#line 1967 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookies_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookies_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3370 "seclang-parser.cc" // lalr1.cc:906 +#line 3385 "seclang-parser.cc" // lalr1.cc:919 break; case 195: -#line 1971 "seclang-parser.yy" // lalr1.cc:906 +#line 1971 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookies_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookies_NoDictElement()); } -#line 3378 "seclang-parser.cc" // lalr1.cc:906 +#line 3393 "seclang-parser.cc" // lalr1.cc:919 break; case 196: -#line 1975 "seclang-parser.yy" // lalr1.cc:906 +#line 1975 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeaders_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeaders_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3386 "seclang-parser.cc" // lalr1.cc:906 +#line 3401 "seclang-parser.cc" // lalr1.cc:919 break; case 197: -#line 1979 "seclang-parser.yy" // lalr1.cc:906 +#line 1979 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeaders_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeaders_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3394 "seclang-parser.cc" // lalr1.cc:906 +#line 3409 "seclang-parser.cc" // lalr1.cc:919 break; case 198: -#line 1983 "seclang-parser.yy" // lalr1.cc:906 +#line 1983 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeaders_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeaders_NoDictElement()); } -#line 3402 "seclang-parser.cc" // lalr1.cc:906 +#line 3417 "seclang-parser.cc" // lalr1.cc:919 break; case 199: -#line 1987 "seclang-parser.yy" // lalr1.cc:906 +#line 1987 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeaders_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeaders_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3410 "seclang-parser.cc" // lalr1.cc:906 +#line 3425 "seclang-parser.cc" // lalr1.cc:919 break; case 200: -#line 1991 "seclang-parser.yy" // lalr1.cc:906 +#line 1991 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeaders_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeaders_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3418 "seclang-parser.cc" // lalr1.cc:906 +#line 3433 "seclang-parser.cc" // lalr1.cc:919 break; case 201: -#line 1995 "seclang-parser.yy" // lalr1.cc:906 +#line 1995 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeaders_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeaders_NoDictElement()); } -#line 3426 "seclang-parser.cc" // lalr1.cc:906 +#line 3441 "seclang-parser.cc" // lalr1.cc:919 break; case 202: -#line 1999 "seclang-parser.yy" // lalr1.cc:906 +#line 1999 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Geo_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Geo_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3434 "seclang-parser.cc" // lalr1.cc:906 +#line 3449 "seclang-parser.cc" // lalr1.cc:919 break; case 203: -#line 2003 "seclang-parser.yy" // lalr1.cc:906 +#line 2003 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Geo_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Geo_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3442 "seclang-parser.cc" // lalr1.cc:906 +#line 3457 "seclang-parser.cc" // lalr1.cc:919 break; case 204: -#line 2007 "seclang-parser.yy" // lalr1.cc:906 +#line 2007 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Geo_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Geo_NoDictElement()); } -#line 3450 "seclang-parser.cc" // lalr1.cc:906 +#line 3465 "seclang-parser.cc" // lalr1.cc:919 break; case 205: -#line 2011 "seclang-parser.yy" // lalr1.cc:906 +#line 2011 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookiesNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookiesNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3458 "seclang-parser.cc" // lalr1.cc:906 +#line 3473 "seclang-parser.cc" // lalr1.cc:919 break; case 206: -#line 2015 "seclang-parser.yy" // lalr1.cc:906 +#line 2015 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookiesNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookiesNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3466 "seclang-parser.cc" // lalr1.cc:906 +#line 3481 "seclang-parser.cc" // lalr1.cc:919 break; case 207: -#line 2019 "seclang-parser.yy" // lalr1.cc:906 +#line 2019 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestCookiesNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestCookiesNames_NoDictElement()); } -#line 3474 "seclang-parser.cc" // lalr1.cc:906 +#line 3489 "seclang-parser.cc" // lalr1.cc:919 break; case 208: -#line 2023 "seclang-parser.yy" // lalr1.cc:906 +#line 2023 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Rule_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Rule_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3482 "seclang-parser.cc" // lalr1.cc:906 +#line 3497 "seclang-parser.cc" // lalr1.cc:919 break; case 209: -#line 2027 "seclang-parser.yy" // lalr1.cc:906 +#line 2027 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Rule_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Rule_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3490 "seclang-parser.cc" // lalr1.cc:906 +#line 3505 "seclang-parser.cc" // lalr1.cc:919 break; case 210: -#line 2031 "seclang-parser.yy" // lalr1.cc:906 +#line 2031 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Rule_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Rule_NoDictElement()); } -#line 3498 "seclang-parser.cc" // lalr1.cc:906 +#line 3513 "seclang-parser.cc" // lalr1.cc:919 break; case 211: -#line 2035 "seclang-parser.yy" // lalr1.cc:906 +#line 2035 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Env("ENV:" + yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Env("ENV:" + yystack_[0].value.as < std::string > ())); } -#line 3506 "seclang-parser.cc" // lalr1.cc:906 +#line 3521 "seclang-parser.cc" // lalr1.cc:919 break; case 212: -#line 2039 "seclang-parser.yy" // lalr1.cc:906 +#line 2039 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Env("ENV:" + yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Env("ENV:" + yystack_[0].value.as < std::string > ())); } -#line 3514 "seclang-parser.cc" // lalr1.cc:906 +#line 3529 "seclang-parser.cc" // lalr1.cc:919 break; case 213: -#line 2043 "seclang-parser.yy" // lalr1.cc:906 +#line 2043 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Env("ENV")); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Env("ENV")); } -#line 3522 "seclang-parser.cc" // lalr1.cc:906 +#line 3537 "seclang-parser.cc" // lalr1.cc:919 break; case 214: -#line 2047 "seclang-parser.yy" // lalr1.cc:906 +#line 2047 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::XML("XML:" + yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::XML("XML:" + yystack_[0].value.as < std::string > ())); } -#line 3530 "seclang-parser.cc" // lalr1.cc:906 +#line 3545 "seclang-parser.cc" // lalr1.cc:919 break; case 215: -#line 2051 "seclang-parser.yy" // lalr1.cc:906 +#line 2051 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::XML("XML:" + yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::XML("XML:" + yystack_[0].value.as < std::string > ())); } -#line 3538 "seclang-parser.cc" // lalr1.cc:906 +#line 3553 "seclang-parser.cc" // lalr1.cc:919 break; case 216: -#line 2055 "seclang-parser.yy" // lalr1.cc:906 +#line 2055 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::XML_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::XML_NoDictElement()); } -#line 3546 "seclang-parser.cc" // lalr1.cc:906 +#line 3561 "seclang-parser.cc" // lalr1.cc:919 break; case 217: -#line 2059 "seclang-parser.yy" // lalr1.cc:906 +#line 2059 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3554 "seclang-parser.cc" // lalr1.cc:906 +#line 3569 "seclang-parser.cc" // lalr1.cc:919 break; case 218: -#line 2063 "seclang-parser.yy" // lalr1.cc:906 +#line 2063 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3562 "seclang-parser.cc" // lalr1.cc:906 +#line 3577 "seclang-parser.cc" // lalr1.cc:919 break; case 219: -#line 2067 "seclang-parser.yy" // lalr1.cc:906 +#line 2067 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesTmpNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesTmpNames_NoDictElement()); } -#line 3570 "seclang-parser.cc" // lalr1.cc:906 +#line 3585 "seclang-parser.cc" // lalr1.cc:919 break; case 220: -#line 2071 "seclang-parser.yy" // lalr1.cc:906 +#line 2071 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Resource_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Resource_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3578 "seclang-parser.cc" // lalr1.cc:906 +#line 3593 "seclang-parser.cc" // lalr1.cc:919 break; case 221: -#line 2075 "seclang-parser.yy" // lalr1.cc:906 +#line 2075 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Resource_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Resource_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3586 "seclang-parser.cc" // lalr1.cc:906 +#line 3601 "seclang-parser.cc" // lalr1.cc:919 break; case 222: -#line 2079 "seclang-parser.yy" // lalr1.cc:906 +#line 2079 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Resource_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Resource_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3594 "seclang-parser.cc" // lalr1.cc:906 +#line 3609 "seclang-parser.cc" // lalr1.cc:919 break; case 223: -#line 2083 "seclang-parser.yy" // lalr1.cc:906 +#line 2083 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Resource_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Resource_NoDictElement()); } -#line 3602 "seclang-parser.cc" // lalr1.cc:906 +#line 3617 "seclang-parser.cc" // lalr1.cc:919 break; case 224: -#line 2087 "seclang-parser.yy" // lalr1.cc:906 +#line 2087 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Ip_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Ip_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3610 "seclang-parser.cc" // lalr1.cc:906 +#line 3625 "seclang-parser.cc" // lalr1.cc:919 break; case 225: -#line 2091 "seclang-parser.yy" // lalr1.cc:906 +#line 2091 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Ip_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Ip_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3618 "seclang-parser.cc" // lalr1.cc:906 +#line 3633 "seclang-parser.cc" // lalr1.cc:919 break; case 226: -#line 2095 "seclang-parser.yy" // lalr1.cc:906 +#line 2095 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Ip_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Ip_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3626 "seclang-parser.cc" // lalr1.cc:906 +#line 3641 "seclang-parser.cc" // lalr1.cc:919 break; case 227: -#line 2099 "seclang-parser.yy" // lalr1.cc:906 +#line 2099 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Ip_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Ip_NoDictElement()); } -#line 3634 "seclang-parser.cc" // lalr1.cc:906 +#line 3649 "seclang-parser.cc" // lalr1.cc:919 break; case 228: -#line 2103 "seclang-parser.yy" // lalr1.cc:906 +#line 2103 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Global_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Global_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3642 "seclang-parser.cc" // lalr1.cc:906 +#line 3657 "seclang-parser.cc" // lalr1.cc:919 break; case 229: -#line 2107 "seclang-parser.yy" // lalr1.cc:906 +#line 2107 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Global_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Global_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3650 "seclang-parser.cc" // lalr1.cc:906 +#line 3665 "seclang-parser.cc" // lalr1.cc:919 break; case 230: -#line 2111 "seclang-parser.yy" // lalr1.cc:906 +#line 2111 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Global_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Global_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3658 "seclang-parser.cc" // lalr1.cc:906 +#line 3673 "seclang-parser.cc" // lalr1.cc:919 break; case 231: -#line 2115 "seclang-parser.yy" // lalr1.cc:906 +#line 2115 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Global_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Global_NoDictElement()); } -#line 3666 "seclang-parser.cc" // lalr1.cc:906 +#line 3681 "seclang-parser.cc" // lalr1.cc:919 break; case 232: -#line 2119 "seclang-parser.yy" // lalr1.cc:906 +#line 2119 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::User_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::User_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3674 "seclang-parser.cc" // lalr1.cc:906 +#line 3689 "seclang-parser.cc" // lalr1.cc:919 break; case 233: -#line 2123 "seclang-parser.yy" // lalr1.cc:906 +#line 2123 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::User_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::User_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3682 "seclang-parser.cc" // lalr1.cc:906 +#line 3697 "seclang-parser.cc" // lalr1.cc:919 break; case 234: -#line 2127 "seclang-parser.yy" // lalr1.cc:906 +#line 2127 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::User_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::User_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3690 "seclang-parser.cc" // lalr1.cc:906 +#line 3705 "seclang-parser.cc" // lalr1.cc:919 break; case 235: -#line 2131 "seclang-parser.yy" // lalr1.cc:906 +#line 2131 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::User_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::User_NoDictElement()); } -#line 3698 "seclang-parser.cc" // lalr1.cc:906 +#line 3713 "seclang-parser.cc" // lalr1.cc:919 break; case 236: -#line 2135 "seclang-parser.yy" // lalr1.cc:906 +#line 2135 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Tx_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Tx_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3706 "seclang-parser.cc" // lalr1.cc:906 +#line 3721 "seclang-parser.cc" // lalr1.cc:919 break; case 237: -#line 2139 "seclang-parser.yy" // lalr1.cc:906 +#line 2139 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Tx_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Tx_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3714 "seclang-parser.cc" // lalr1.cc:906 +#line 3729 "seclang-parser.cc" // lalr1.cc:919 break; case 238: -#line 2143 "seclang-parser.yy" // lalr1.cc:906 +#line 2143 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Tx_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Tx_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3722 "seclang-parser.cc" // lalr1.cc:906 +#line 3737 "seclang-parser.cc" // lalr1.cc:919 break; case 239: -#line 2147 "seclang-parser.yy" // lalr1.cc:906 +#line 2147 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Tx_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Tx_NoDictElement()); } -#line 3730 "seclang-parser.cc" // lalr1.cc:906 +#line 3745 "seclang-parser.cc" // lalr1.cc:919 break; case 240: -#line 2151 "seclang-parser.yy" // lalr1.cc:906 +#line 2151 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Session_DynamicElement(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Session_DynamicElement(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 3738 "seclang-parser.cc" // lalr1.cc:906 +#line 3753 "seclang-parser.cc" // lalr1.cc:919 break; case 241: -#line 2155 "seclang-parser.yy" // lalr1.cc:906 +#line 2155 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Session_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Session_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3746 "seclang-parser.cc" // lalr1.cc:906 +#line 3761 "seclang-parser.cc" // lalr1.cc:919 break; case 242: -#line 2159 "seclang-parser.yy" // lalr1.cc:906 +#line 2159 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Session_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Session_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3754 "seclang-parser.cc" // lalr1.cc:906 +#line 3769 "seclang-parser.cc" // lalr1.cc:919 break; case 243: -#line 2163 "seclang-parser.yy" // lalr1.cc:906 +#line 2163 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Session_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Session_NoDictElement()); } -#line 3762 "seclang-parser.cc" // lalr1.cc:906 +#line 3777 "seclang-parser.cc" // lalr1.cc:919 break; case 244: -#line 2167 "seclang-parser.yy" // lalr1.cc:906 +#line 2167 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3770 "seclang-parser.cc" // lalr1.cc:906 +#line 3785 "seclang-parser.cc" // lalr1.cc:919 break; case 245: -#line 2171 "seclang-parser.yy" // lalr1.cc:906 +#line 2171 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3778 "seclang-parser.cc" // lalr1.cc:906 +#line 3793 "seclang-parser.cc" // lalr1.cc:919 break; case 246: -#line 2175 "seclang-parser.yy" // lalr1.cc:906 +#line 2175 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsNames_NoDictElement()); } -#line 3786 "seclang-parser.cc" // lalr1.cc:906 +#line 3801 "seclang-parser.cc" // lalr1.cc:919 break; case 247: -#line 2179 "seclang-parser.yy" // lalr1.cc:906 +#line 2179 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGetNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGetNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3794 "seclang-parser.cc" // lalr1.cc:906 +#line 3809 "seclang-parser.cc" // lalr1.cc:919 break; case 248: -#line 2183 "seclang-parser.yy" // lalr1.cc:906 +#line 2183 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGetNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGetNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3802 "seclang-parser.cc" // lalr1.cc:906 +#line 3817 "seclang-parser.cc" // lalr1.cc:919 break; case 249: -#line 2187 "seclang-parser.yy" // lalr1.cc:906 +#line 2187 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsGetNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsGetNames_NoDictElement()); } -#line 3810 "seclang-parser.cc" // lalr1.cc:906 +#line 3825 "seclang-parser.cc" // lalr1.cc:919 break; case 250: -#line 2192 "seclang-parser.yy" // lalr1.cc:906 +#line 2192 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPostNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPostNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3818 "seclang-parser.cc" // lalr1.cc:906 +#line 3833 "seclang-parser.cc" // lalr1.cc:919 break; case 251: -#line 2196 "seclang-parser.yy" // lalr1.cc:906 +#line 2196 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPostNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPostNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3826 "seclang-parser.cc" // lalr1.cc:906 +#line 3841 "seclang-parser.cc" // lalr1.cc:919 break; case 252: -#line 2200 "seclang-parser.yy" // lalr1.cc:906 +#line 2200 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsPostNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsPostNames_NoDictElement()); } -#line 3834 "seclang-parser.cc" // lalr1.cc:906 +#line 3849 "seclang-parser.cc" // lalr1.cc:919 break; case 253: -#line 2205 "seclang-parser.yy" // lalr1.cc:906 +#line 2205 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeadersNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeadersNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3842 "seclang-parser.cc" // lalr1.cc:906 +#line 3857 "seclang-parser.cc" // lalr1.cc:919 break; case 254: -#line 2209 "seclang-parser.yy" // lalr1.cc:906 +#line 2209 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeadersNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeadersNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3850 "seclang-parser.cc" // lalr1.cc:906 +#line 3865 "seclang-parser.cc" // lalr1.cc:919 break; case 255: -#line 2213 "seclang-parser.yy" // lalr1.cc:906 +#line 2213 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestHeadersNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestHeadersNames_NoDictElement()); } -#line 3858 "seclang-parser.cc" // lalr1.cc:906 +#line 3873 "seclang-parser.cc" // lalr1.cc:919 break; case 256: -#line 2218 "seclang-parser.yy" // lalr1.cc:906 +#line 2218 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseContentType()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseContentType()); } -#line 3866 "seclang-parser.cc" // lalr1.cc:906 +#line 3881 "seclang-parser.cc" // lalr1.cc:919 break; case 257: -#line 2223 "seclang-parser.yy" // lalr1.cc:906 +#line 2223 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeadersNames_DictElement(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeadersNames_DictElement(yystack_[0].value.as < std::string > ())); } -#line 3874 "seclang-parser.cc" // lalr1.cc:906 +#line 3889 "seclang-parser.cc" // lalr1.cc:919 break; case 258: -#line 2227 "seclang-parser.yy" // lalr1.cc:906 +#line 2227 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeadersNames_DictElementRegexp(yystack_[0].value.as< std::string > ())); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeadersNames_DictElementRegexp(yystack_[0].value.as < std::string > ())); } -#line 3882 "seclang-parser.cc" // lalr1.cc:906 +#line 3897 "seclang-parser.cc" // lalr1.cc:919 break; case 259: -#line 2231 "seclang-parser.yy" // lalr1.cc:906 +#line 2231 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseHeadersNames_NoDictElement()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseHeadersNames_NoDictElement()); } -#line 3890 "seclang-parser.cc" // lalr1.cc:906 +#line 3905 "seclang-parser.cc" // lalr1.cc:919 break; case 260: -#line 2235 "seclang-parser.yy" // lalr1.cc:906 +#line 2235 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ArgsCombinedSize()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ArgsCombinedSize()); } -#line 3898 "seclang-parser.cc" // lalr1.cc:906 +#line 3913 "seclang-parser.cc" // lalr1.cc:919 break; case 261: -#line 2239 "seclang-parser.yy" // lalr1.cc:906 +#line 2239 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::AuthType()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::AuthType()); } -#line 3906 "seclang-parser.cc" // lalr1.cc:906 +#line 3921 "seclang-parser.cc" // lalr1.cc:919 break; case 262: -#line 2243 "seclang-parser.yy" // lalr1.cc:906 +#line 2243 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FilesCombinedSize()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FilesCombinedSize()); } -#line 3914 "seclang-parser.cc" // lalr1.cc:906 +#line 3929 "seclang-parser.cc" // lalr1.cc:919 break; case 263: -#line 2247 "seclang-parser.yy" // lalr1.cc:906 +#line 2247 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FullRequest()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FullRequest()); } -#line 3922 "seclang-parser.cc" // lalr1.cc:906 +#line 3937 "seclang-parser.cc" // lalr1.cc:919 break; case 264: -#line 2251 "seclang-parser.yy" // lalr1.cc:906 +#line 2251 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::FullRequestLength()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::FullRequestLength()); } -#line 3930 "seclang-parser.cc" // lalr1.cc:906 +#line 3945 "seclang-parser.cc" // lalr1.cc:919 break; case 265: -#line 2255 "seclang-parser.yy" // lalr1.cc:906 +#line 2255 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::InboundDataError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::InboundDataError()); } -#line 3938 "seclang-parser.cc" // lalr1.cc:906 +#line 3953 "seclang-parser.cc" // lalr1.cc:919 break; case 266: -#line 2259 "seclang-parser.yy" // lalr1.cc:906 +#line 2259 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVar()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVar()); } -#line 3946 "seclang-parser.cc" // lalr1.cc:906 +#line 3961 "seclang-parser.cc" // lalr1.cc:919 break; case 267: -#line 2263 "seclang-parser.yy" // lalr1.cc:906 +#line 2263 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MatchedVarName()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MatchedVarName()); } -#line 3954 "seclang-parser.cc" // lalr1.cc:906 +#line 3969 "seclang-parser.cc" // lalr1.cc:919 break; case 268: -#line 2267 "seclang-parser.yy" // lalr1.cc:906 +#line 2267 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartBoundaryQuoted()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartBoundaryQuoted()); } -#line 3962 "seclang-parser.cc" // lalr1.cc:906 +#line 3977 "seclang-parser.cc" // lalr1.cc:919 break; case 269: -#line 2271 "seclang-parser.yy" // lalr1.cc:906 +#line 2271 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartBoundaryWhiteSpace()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartBoundaryWhiteSpace()); } -#line 3970 "seclang-parser.cc" // lalr1.cc:906 +#line 3985 "seclang-parser.cc" // lalr1.cc:919 break; case 270: -#line 2275 "seclang-parser.yy" // lalr1.cc:906 +#line 2275 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartCrlfLFLines()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartCrlfLFLines()); } -#line 3978 "seclang-parser.cc" // lalr1.cc:906 +#line 3993 "seclang-parser.cc" // lalr1.cc:919 break; case 271: -#line 2279 "seclang-parser.yy" // lalr1.cc:906 +#line 2279 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartDateAfter()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartDateAfter()); } -#line 3986 "seclang-parser.cc" // lalr1.cc:906 +#line 4001 "seclang-parser.cc" // lalr1.cc:919 break; case 272: -#line 2283 "seclang-parser.yy" // lalr1.cc:906 +#line 2283 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartDateBefore()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartDateBefore()); } -#line 3994 "seclang-parser.cc" // lalr1.cc:906 +#line 4009 "seclang-parser.cc" // lalr1.cc:919 break; case 273: -#line 2287 "seclang-parser.yy" // lalr1.cc:906 +#line 2287 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartFileLimitExceeded()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartFileLimitExceeded()); } -#line 4002 "seclang-parser.cc" // lalr1.cc:906 +#line 4017 "seclang-parser.cc" // lalr1.cc:919 break; case 274: -#line 2291 "seclang-parser.yy" // lalr1.cc:906 +#line 2291 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartHeaderFolding()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartHeaderFolding()); } -#line 4010 "seclang-parser.cc" // lalr1.cc:906 +#line 4025 "seclang-parser.cc" // lalr1.cc:919 break; case 275: -#line 2295 "seclang-parser.yy" // lalr1.cc:906 +#line 2295 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartInvalidHeaderFolding()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartInvalidHeaderFolding()); } -#line 4018 "seclang-parser.cc" // lalr1.cc:906 +#line 4033 "seclang-parser.cc" // lalr1.cc:919 break; case 276: -#line 2299 "seclang-parser.yy" // lalr1.cc:906 +#line 2299 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartInvalidPart()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartInvalidPart()); } -#line 4026 "seclang-parser.cc" // lalr1.cc:906 +#line 4041 "seclang-parser.cc" // lalr1.cc:919 break; case 277: -#line 2303 "seclang-parser.yy" // lalr1.cc:906 +#line 2303 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartInvalidQuoting()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartInvalidQuoting()); } -#line 4034 "seclang-parser.cc" // lalr1.cc:906 +#line 4049 "seclang-parser.cc" // lalr1.cc:919 break; case 278: -#line 2307 "seclang-parser.yy" // lalr1.cc:906 +#line 2307 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartLFLine()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartLFLine()); } -#line 4042 "seclang-parser.cc" // lalr1.cc:906 +#line 4057 "seclang-parser.cc" // lalr1.cc:919 break; case 279: -#line 2311 "seclang-parser.yy" // lalr1.cc:906 +#line 2311 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartMissingSemicolon()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartMissingSemicolon()); } -#line 4050 "seclang-parser.cc" // lalr1.cc:906 +#line 4065 "seclang-parser.cc" // lalr1.cc:919 break; case 280: -#line 2315 "seclang-parser.yy" // lalr1.cc:906 +#line 2315 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartMissingSemicolon()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartMissingSemicolon()); } -#line 4058 "seclang-parser.cc" // lalr1.cc:906 +#line 4073 "seclang-parser.cc" // lalr1.cc:919 break; case 281: -#line 2319 "seclang-parser.yy" // lalr1.cc:906 +#line 2319 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartStrictError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartStrictError()); } -#line 4066 "seclang-parser.cc" // lalr1.cc:906 +#line 4081 "seclang-parser.cc" // lalr1.cc:919 break; case 282: -#line 2323 "seclang-parser.yy" // lalr1.cc:906 +#line 2323 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::MultipartUnmatchedBoundary()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::MultipartUnmatchedBoundary()); } -#line 4074 "seclang-parser.cc" // lalr1.cc:906 +#line 4089 "seclang-parser.cc" // lalr1.cc:919 break; case 283: -#line 2327 "seclang-parser.yy" // lalr1.cc:906 +#line 2327 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::OutboundDataError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::OutboundDataError()); } -#line 4082 "seclang-parser.cc" // lalr1.cc:906 +#line 4097 "seclang-parser.cc" // lalr1.cc:919 break; case 284: -#line 2331 "seclang-parser.yy" // lalr1.cc:906 +#line 2331 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::PathInfo()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::PathInfo()); } -#line 4090 "seclang-parser.cc" // lalr1.cc:906 +#line 4105 "seclang-parser.cc" // lalr1.cc:919 break; case 285: -#line 2335 "seclang-parser.yy" // lalr1.cc:906 +#line 2335 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::QueryString()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::QueryString()); } -#line 4098 "seclang-parser.cc" // lalr1.cc:906 +#line 4113 "seclang-parser.cc" // lalr1.cc:919 break; case 286: -#line 2339 "seclang-parser.yy" // lalr1.cc:906 +#line 2339 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RemoteAddr()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RemoteAddr()); } -#line 4106 "seclang-parser.cc" // lalr1.cc:906 +#line 4121 "seclang-parser.cc" // lalr1.cc:919 break; case 287: -#line 2343 "seclang-parser.yy" // lalr1.cc:906 +#line 2343 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RemoteHost()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RemoteHost()); } -#line 4114 "seclang-parser.cc" // lalr1.cc:906 +#line 4129 "seclang-parser.cc" // lalr1.cc:919 break; case 288: -#line 2347 "seclang-parser.yy" // lalr1.cc:906 +#line 2347 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RemotePort()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RemotePort()); } -#line 4122 "seclang-parser.cc" // lalr1.cc:906 +#line 4137 "seclang-parser.cc" // lalr1.cc:919 break; case 289: -#line 2351 "seclang-parser.yy" // lalr1.cc:906 +#line 2351 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ReqbodyError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ReqbodyError()); } -#line 4130 "seclang-parser.cc" // lalr1.cc:906 +#line 4145 "seclang-parser.cc" // lalr1.cc:919 break; case 290: -#line 2355 "seclang-parser.yy" // lalr1.cc:906 +#line 2355 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ReqbodyErrorMsg()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ReqbodyErrorMsg()); } -#line 4138 "seclang-parser.cc" // lalr1.cc:906 +#line 4153 "seclang-parser.cc" // lalr1.cc:919 break; case 291: -#line 2359 "seclang-parser.yy" // lalr1.cc:906 +#line 2359 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ReqbodyProcessor()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ReqbodyProcessor()); } -#line 4146 "seclang-parser.cc" // lalr1.cc:906 +#line 4161 "seclang-parser.cc" // lalr1.cc:919 break; case 292: -#line 2363 "seclang-parser.yy" // lalr1.cc:906 +#line 2363 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ReqbodyProcessorError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ReqbodyProcessorError()); } -#line 4154 "seclang-parser.cc" // lalr1.cc:906 +#line 4169 "seclang-parser.cc" // lalr1.cc:919 break; case 293: -#line 2367 "seclang-parser.yy" // lalr1.cc:906 +#line 2367 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ReqbodyProcessorErrorMsg()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ReqbodyProcessorErrorMsg()); } -#line 4162 "seclang-parser.cc" // lalr1.cc:906 +#line 4177 "seclang-parser.cc" // lalr1.cc:919 break; case 294: -#line 2371 "seclang-parser.yy" // lalr1.cc:906 +#line 2371 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestBasename()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestBasename()); } -#line 4170 "seclang-parser.cc" // lalr1.cc:906 +#line 4185 "seclang-parser.cc" // lalr1.cc:919 break; case 295: -#line 2375 "seclang-parser.yy" // lalr1.cc:906 +#line 2375 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestBody()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestBody()); } -#line 4178 "seclang-parser.cc" // lalr1.cc:906 +#line 4193 "seclang-parser.cc" // lalr1.cc:919 break; case 296: -#line 2379 "seclang-parser.yy" // lalr1.cc:906 +#line 2379 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestBodyLength()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestBodyLength()); } -#line 4186 "seclang-parser.cc" // lalr1.cc:906 +#line 4201 "seclang-parser.cc" // lalr1.cc:919 break; case 297: -#line 2383 "seclang-parser.yy" // lalr1.cc:906 +#line 2383 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestFilename()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestFilename()); } -#line 4194 "seclang-parser.cc" // lalr1.cc:906 +#line 4209 "seclang-parser.cc" // lalr1.cc:919 break; case 298: -#line 2387 "seclang-parser.yy" // lalr1.cc:906 +#line 2387 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestLine()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestLine()); } -#line 4202 "seclang-parser.cc" // lalr1.cc:906 +#line 4217 "seclang-parser.cc" // lalr1.cc:919 break; case 299: -#line 2391 "seclang-parser.yy" // lalr1.cc:906 +#line 2391 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestMethod()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestMethod()); } -#line 4210 "seclang-parser.cc" // lalr1.cc:906 +#line 4225 "seclang-parser.cc" // lalr1.cc:919 break; case 300: -#line 2395 "seclang-parser.yy" // lalr1.cc:906 +#line 2395 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestProtocol()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestProtocol()); } -#line 4218 "seclang-parser.cc" // lalr1.cc:906 +#line 4233 "seclang-parser.cc" // lalr1.cc:919 break; case 301: -#line 2399 "seclang-parser.yy" // lalr1.cc:906 +#line 2399 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestURI()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestURI()); } -#line 4226 "seclang-parser.cc" // lalr1.cc:906 +#line 4241 "seclang-parser.cc" // lalr1.cc:919 break; case 302: -#line 2403 "seclang-parser.yy" // lalr1.cc:906 +#line 2403 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::RequestURIRaw()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::RequestURIRaw()); } -#line 4234 "seclang-parser.cc" // lalr1.cc:906 +#line 4249 "seclang-parser.cc" // lalr1.cc:919 break; case 303: -#line 2407 "seclang-parser.yy" // lalr1.cc:906 +#line 2407 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseBody()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseBody()); } -#line 4242 "seclang-parser.cc" // lalr1.cc:906 +#line 4257 "seclang-parser.cc" // lalr1.cc:919 break; case 304: -#line 2411 "seclang-parser.yy" // lalr1.cc:906 +#line 2411 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseContentLength()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseContentLength()); } -#line 4250 "seclang-parser.cc" // lalr1.cc:906 +#line 4265 "seclang-parser.cc" // lalr1.cc:919 break; case 305: -#line 2415 "seclang-parser.yy" // lalr1.cc:906 +#line 2415 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseProtocol()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseProtocol()); } -#line 4258 "seclang-parser.cc" // lalr1.cc:906 +#line 4273 "seclang-parser.cc" // lalr1.cc:919 break; case 306: -#line 2419 "seclang-parser.yy" // lalr1.cc:906 +#line 2419 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ResponseStatus()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ResponseStatus()); } -#line 4266 "seclang-parser.cc" // lalr1.cc:906 +#line 4281 "seclang-parser.cc" // lalr1.cc:919 break; case 307: -#line 2423 "seclang-parser.yy" // lalr1.cc:906 +#line 2423 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ServerAddr()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ServerAddr()); } -#line 4274 "seclang-parser.cc" // lalr1.cc:906 +#line 4289 "seclang-parser.cc" // lalr1.cc:919 break; case 308: -#line 2427 "seclang-parser.yy" // lalr1.cc:906 +#line 2427 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ServerName()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ServerName()); } -#line 4282 "seclang-parser.cc" // lalr1.cc:906 +#line 4297 "seclang-parser.cc" // lalr1.cc:919 break; case 309: -#line 2431 "seclang-parser.yy" // lalr1.cc:906 +#line 2431 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::ServerPort()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::ServerPort()); } -#line 4290 "seclang-parser.cc" // lalr1.cc:906 +#line 4305 "seclang-parser.cc" // lalr1.cc:919 break; case 310: -#line 2435 "seclang-parser.yy" // lalr1.cc:906 +#line 2435 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::SessionID()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::SessionID()); } -#line 4298 "seclang-parser.cc" // lalr1.cc:906 +#line 4313 "seclang-parser.cc" // lalr1.cc:919 break; case 311: -#line 2439 "seclang-parser.yy" // lalr1.cc:906 +#line 2439 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::UniqueID()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::UniqueID()); } -#line 4306 "seclang-parser.cc" // lalr1.cc:906 +#line 4321 "seclang-parser.cc" // lalr1.cc:919 break; case 312: -#line 2443 "seclang-parser.yy" // lalr1.cc:906 +#line 2443 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::UrlEncodedError()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::UrlEncodedError()); } -#line 4314 "seclang-parser.cc" // lalr1.cc:906 +#line 4329 "seclang-parser.cc" // lalr1.cc:919 break; case 313: -#line 2447 "seclang-parser.yy" // lalr1.cc:906 +#line 2447 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::UserID()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::UserID()); } -#line 4322 "seclang-parser.cc" // lalr1.cc:906 +#line 4337 "seclang-parser.cc" // lalr1.cc:919 break; case 314: -#line 2451 "seclang-parser.yy" // lalr1.cc:906 +#line 2451 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Status()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Status()); } -#line 4330 "seclang-parser.cc" // lalr1.cc:906 +#line 4345 "seclang-parser.cc" // lalr1.cc:919 break; case 315: -#line 2455 "seclang-parser.yy" // lalr1.cc:906 +#line 2455 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::Status()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::Status()); } -#line 4338 "seclang-parser.cc" // lalr1.cc:906 +#line 4353 "seclang-parser.cc" // lalr1.cc:919 break; case 316: -#line 2459 "seclang-parser.yy" // lalr1.cc:906 +#line 2459 "seclang-parser.yy" // lalr1.cc:919 { - VARIABLE_CONTAINER(yylhs.value.as< std::unique_ptr > (), new variables::WebAppId()); + VARIABLE_CONTAINER(yylhs.value.as < std::unique_ptr > (), new variables::WebAppId()); } -#line 4346 "seclang-parser.cc" // lalr1.cc:906 +#line 4361 "seclang-parser.cc" // lalr1.cc:919 break; case 317: -#line 2463 "seclang-parser.yy" // lalr1.cc:906 +#line 2463 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new Duration(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4357 "seclang-parser.cc" // lalr1.cc:906 +#line 4372 "seclang-parser.cc" // lalr1.cc:919 break; case 318: -#line 2471 "seclang-parser.yy" // lalr1.cc:906 +#line 2471 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new ModsecBuild(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4368 "seclang-parser.cc" // lalr1.cc:906 +#line 4383 "seclang-parser.cc" // lalr1.cc:919 break; case 319: -#line 2478 "seclang-parser.yy" // lalr1.cc:906 +#line 2478 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new HighestSeverity(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4379 "seclang-parser.cc" // lalr1.cc:906 +#line 4394 "seclang-parser.cc" // lalr1.cc:919 break; case 320: -#line 2485 "seclang-parser.yy" // lalr1.cc:906 +#line 2485 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new RemoteUser(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4390 "seclang-parser.cc" // lalr1.cc:906 +#line 4405 "seclang-parser.cc" // lalr1.cc:919 break; case 321: -#line 2492 "seclang-parser.yy" // lalr1.cc:906 +#line 2492 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new Time(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4401 "seclang-parser.cc" // lalr1.cc:906 +#line 4416 "seclang-parser.cc" // lalr1.cc:919 break; case 322: -#line 2499 "seclang-parser.yy" // lalr1.cc:906 +#line 2499 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeDay(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4412 "seclang-parser.cc" // lalr1.cc:906 +#line 4427 "seclang-parser.cc" // lalr1.cc:919 break; case 323: -#line 2506 "seclang-parser.yy" // lalr1.cc:906 +#line 2506 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeEpoch(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4423 "seclang-parser.cc" // lalr1.cc:906 +#line 4438 "seclang-parser.cc" // lalr1.cc:919 break; case 324: -#line 2513 "seclang-parser.yy" // lalr1.cc:906 +#line 2513 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeHour(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4434 "seclang-parser.cc" // lalr1.cc:906 +#line 4449 "seclang-parser.cc" // lalr1.cc:919 break; case 325: -#line 2520 "seclang-parser.yy" // lalr1.cc:906 +#line 2520 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeMin(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4445 "seclang-parser.cc" // lalr1.cc:906 +#line 4460 "seclang-parser.cc" // lalr1.cc:919 break; case 326: -#line 2527 "seclang-parser.yy" // lalr1.cc:906 +#line 2527 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeMon(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4456 "seclang-parser.cc" // lalr1.cc:906 +#line 4471 "seclang-parser.cc" // lalr1.cc:919 break; case 327: -#line 2534 "seclang-parser.yy" // lalr1.cc:906 +#line 2534 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeSec(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4467 "seclang-parser.cc" // lalr1.cc:906 +#line 4482 "seclang-parser.cc" // lalr1.cc:919 break; case 328: -#line 2541 "seclang-parser.yy" // lalr1.cc:906 +#line 2541 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeWDay(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4478 "seclang-parser.cc" // lalr1.cc:906 +#line 4493 "seclang-parser.cc" // lalr1.cc:919 break; case 329: -#line 2548 "seclang-parser.yy" // lalr1.cc:906 +#line 2548 "seclang-parser.yy" // lalr1.cc:919 { - std::string name(yystack_[0].value.as< std::string > ()); + std::string name(yystack_[0].value.as < std::string > ()); char z = name.at(0); std::unique_ptr c(new TimeYear(name)); - yylhs.value.as< std::unique_ptr > () = std::move(c); + yylhs.value.as < std::unique_ptr > () = std::move(c); } -#line 4489 "seclang-parser.cc" // lalr1.cc:906 +#line 4504 "seclang-parser.cc" // lalr1.cc:919 break; case 330: -#line 2558 "seclang-parser.yy" // lalr1.cc:906 +#line 2558 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Accuracy(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Accuracy(yystack_[0].value.as < std::string > ())); } -#line 4497 "seclang-parser.cc" // lalr1.cc:906 +#line 4512 "seclang-parser.cc" // lalr1.cc:919 break; case 331: -#line 2562 "seclang-parser.yy" // lalr1.cc:906 +#line 2562 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::disruptive::Allow(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::disruptive::Allow(yystack_[0].value.as < std::string > ())); } -#line 4505 "seclang-parser.cc" // lalr1.cc:906 +#line 4520 "seclang-parser.cc" // lalr1.cc:919 break; case 332: -#line 2566 "seclang-parser.yy" // lalr1.cc:906 +#line 2566 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("Append", yystack_[1].location); } -#line 4513 "seclang-parser.cc" // lalr1.cc:906 +#line 4528 "seclang-parser.cc" // lalr1.cc:919 break; case 333: -#line 2570 "seclang-parser.yy" // lalr1.cc:906 +#line 2570 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::AuditLog(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::AuditLog(yystack_[0].value.as < std::string > ())); } -#line 4521 "seclang-parser.cc" // lalr1.cc:906 +#line 4536 "seclang-parser.cc" // lalr1.cc:919 break; case 334: -#line 2574 "seclang-parser.yy" // lalr1.cc:906 +#line 2574 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Block(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Block(yystack_[0].value.as < std::string > ())); } -#line 4529 "seclang-parser.cc" // lalr1.cc:906 +#line 4544 "seclang-parser.cc" // lalr1.cc:919 break; case 335: -#line 2578 "seclang-parser.yy" // lalr1.cc:906 +#line 2578 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Capture(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Capture(yystack_[0].value.as < std::string > ())); } -#line 4537 "seclang-parser.cc" // lalr1.cc:906 +#line 4552 "seclang-parser.cc" // lalr1.cc:919 break; case 336: -#line 2582 "seclang-parser.yy" // lalr1.cc:906 +#line 2582 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Chain(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Chain(yystack_[0].value.as < std::string > ())); } -#line 4545 "seclang-parser.cc" // lalr1.cc:906 +#line 4560 "seclang-parser.cc" // lalr1.cc:919 break; case 337: -#line 2586 "seclang-parser.yy" // lalr1.cc:906 +#line 2586 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("CtlAuditEngine", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[1].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[1].value.as < std::string > ())); } -#line 4554 "seclang-parser.cc" // lalr1.cc:906 +#line 4569 "seclang-parser.cc" // lalr1.cc:919 break; case 338: -#line 2591 "seclang-parser.yy" // lalr1.cc:906 +#line 2591 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("CtlAuditEngine", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[1].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[1].value.as < std::string > ())); } -#line 4563 "seclang-parser.cc" // lalr1.cc:906 +#line 4578 "seclang-parser.cc" // lalr1.cc:919 break; case 339: -#line 2596 "seclang-parser.yy" // lalr1.cc:906 +#line 2596 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("CtlAuditEngine", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[1].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[1].value.as < std::string > ())); } -#line 4572 "seclang-parser.cc" // lalr1.cc:906 +#line 4587 "seclang-parser.cc" // lalr1.cc:919 break; case 340: -#line 2601 "seclang-parser.yy" // lalr1.cc:906 +#line 2601 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::AuditLogParts(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::AuditLogParts(yystack_[0].value.as < std::string > ())); } -#line 4580 "seclang-parser.cc" // lalr1.cc:906 +#line 4595 "seclang-parser.cc" // lalr1.cc:919 break; case 341: -#line 2605 "seclang-parser.yy" // lalr1.cc:906 +#line 2605 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RequestBodyProcessorJSON(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RequestBodyProcessorJSON(yystack_[0].value.as < std::string > ())); } -#line 4588 "seclang-parser.cc" // lalr1.cc:906 +#line 4603 "seclang-parser.cc" // lalr1.cc:919 break; case 342: -#line 2609 "seclang-parser.yy" // lalr1.cc:906 +#line 2609 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RequestBodyProcessorXML(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RequestBodyProcessorXML(yystack_[0].value.as < std::string > ())); } -#line 4596 "seclang-parser.cc" // lalr1.cc:906 +#line 4611 "seclang-parser.cc" // lalr1.cc:919 break; case 343: -#line 2613 "seclang-parser.yy" // lalr1.cc:906 +#line 2613 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RequestBodyProcessorURLENCODED(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RequestBodyProcessorURLENCODED(yystack_[0].value.as < std::string > ())); } -#line 4604 "seclang-parser.cc" // lalr1.cc:906 +#line 4619 "seclang-parser.cc" // lalr1.cc:919 break; case 344: -#line 2617 "seclang-parser.yy" // lalr1.cc:906 +#line 2617 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("CtlForceReequestBody", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[1].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[1].value.as < std::string > ())); } -#line 4613 "seclang-parser.cc" // lalr1.cc:906 +#line 4628 "seclang-parser.cc" // lalr1.cc:919 break; case 345: -#line 2622 "seclang-parser.yy" // lalr1.cc:906 +#line 2622 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("CtlForceReequestBody", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[1].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[1].value.as < std::string > ())); } -#line 4622 "seclang-parser.cc" // lalr1.cc:906 +#line 4637 "seclang-parser.cc" // lalr1.cc:919 break; case 346: -#line 2627 "seclang-parser.yy" // lalr1.cc:906 +#line 2627 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RequestBodyAccess(yystack_[1].value.as< std::string > () + "true")); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RequestBodyAccess(yystack_[1].value.as < std::string > () + "true")); } -#line 4630 "seclang-parser.cc" // lalr1.cc:906 +#line 4645 "seclang-parser.cc" // lalr1.cc:919 break; case 347: -#line 2631 "seclang-parser.yy" // lalr1.cc:906 +#line 2631 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RequestBodyAccess(yystack_[1].value.as< std::string > () + "false")); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RequestBodyAccess(yystack_[1].value.as < std::string > () + "false")); } -#line 4638 "seclang-parser.cc" // lalr1.cc:906 +#line 4653 "seclang-parser.cc" // lalr1.cc:919 break; case 348: -#line 2635 "seclang-parser.yy" // lalr1.cc:906 +#line 2635 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=on")); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=on")); } -#line 4646 "seclang-parser.cc" // lalr1.cc:906 +#line 4661 "seclang-parser.cc" // lalr1.cc:919 break; case 349: -#line 2639 "seclang-parser.yy" // lalr1.cc:906 +#line 2639 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=off")); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=off")); } -#line 4654 "seclang-parser.cc" // lalr1.cc:906 +#line 4669 "seclang-parser.cc" // lalr1.cc:919 break; case 350: -#line 2643 "seclang-parser.yy" // lalr1.cc:906 +#line 2643 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=detectiononly")); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleEngine("ctl:RuleEngine=detectiononly")); } -#line 4662 "seclang-parser.cc" // lalr1.cc:906 +#line 4677 "seclang-parser.cc" // lalr1.cc:919 break; case 351: -#line 2647 "seclang-parser.yy" // lalr1.cc:906 +#line 2647 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleRemoveById(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleRemoveById(yystack_[0].value.as < std::string > ())); } -#line 4670 "seclang-parser.cc" // lalr1.cc:906 +#line 4685 "seclang-parser.cc" // lalr1.cc:919 break; case 352: -#line 2651 "seclang-parser.yy" // lalr1.cc:906 +#line 2651 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleRemoveByTag(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleRemoveByTag(yystack_[0].value.as < std::string > ())); } -#line 4678 "seclang-parser.cc" // lalr1.cc:906 +#line 4693 "seclang-parser.cc" // lalr1.cc:919 break; case 353: -#line 2655 "seclang-parser.yy" // lalr1.cc:906 +#line 2655 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleRemoveTargetById(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleRemoveTargetById(yystack_[0].value.as < std::string > ())); } -#line 4686 "seclang-parser.cc" // lalr1.cc:906 +#line 4701 "seclang-parser.cc" // lalr1.cc:919 break; case 354: -#line 2659 "seclang-parser.yy" // lalr1.cc:906 +#line 2659 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::ctl::RuleRemoveTargetByTag(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::ctl::RuleRemoveTargetByTag(yystack_[0].value.as < std::string > ())); } -#line 4694 "seclang-parser.cc" // lalr1.cc:906 +#line 4709 "seclang-parser.cc" // lalr1.cc:919 break; case 355: -#line 2663 "seclang-parser.yy" // lalr1.cc:906 +#line 2663 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::disruptive::Deny(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::disruptive::Deny(yystack_[0].value.as < std::string > ())); } -#line 4702 "seclang-parser.cc" // lalr1.cc:906 +#line 4717 "seclang-parser.cc" // lalr1.cc:919 break; case 356: -#line 2667 "seclang-parser.yy" // lalr1.cc:906 +#line 2667 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("DeprecateVar", yystack_[1].location); } -#line 4710 "seclang-parser.cc" // lalr1.cc:906 +#line 4725 "seclang-parser.cc" // lalr1.cc:919 break; case 357: -#line 2671 "seclang-parser.yy" // lalr1.cc:906 +#line 2671 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::disruptive::Drop(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::disruptive::Drop(yystack_[0].value.as < std::string > ())); } -#line 4718 "seclang-parser.cc" // lalr1.cc:906 +#line 4733 "seclang-parser.cc" // lalr1.cc:919 break; case 358: -#line 2675 "seclang-parser.yy" // lalr1.cc:906 +#line 2675 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Exec(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Exec(yystack_[0].value.as < std::string > ())); } -#line 4726 "seclang-parser.cc" // lalr1.cc:906 +#line 4741 "seclang-parser.cc" // lalr1.cc:919 break; case 359: -#line 2679 "seclang-parser.yy" // lalr1.cc:906 +#line 2679 "seclang-parser.yy" // lalr1.cc:919 { //ACTION_NOT_SUPPORTED("ExpireVar", @0); - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Action(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Action(yystack_[0].value.as < std::string > ())); } -#line 4735 "seclang-parser.cc" // lalr1.cc:906 +#line 4750 "seclang-parser.cc" // lalr1.cc:919 break; case 360: -#line 2684 "seclang-parser.yy" // lalr1.cc:906 +#line 2684 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::RuleId(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::RuleId(yystack_[0].value.as < std::string > ())); } -#line 4743 "seclang-parser.cc" // lalr1.cc:906 +#line 4758 "seclang-parser.cc" // lalr1.cc:919 break; case 361: -#line 2688 "seclang-parser.yy" // lalr1.cc:906 +#line 2688 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::InitCol(yystack_[1].value.as< std::string > (), std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::InitCol(yystack_[1].value.as < std::string > (), std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4751 "seclang-parser.cc" // lalr1.cc:906 +#line 4766 "seclang-parser.cc" // lalr1.cc:919 break; case 362: -#line 2692 "seclang-parser.yy" // lalr1.cc:906 +#line 2692 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::LogData(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::LogData(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4759 "seclang-parser.cc" // lalr1.cc:906 +#line 4774 "seclang-parser.cc" // lalr1.cc:919 break; case 363: -#line 2696 "seclang-parser.yy" // lalr1.cc:906 +#line 2696 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Log(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Log(yystack_[0].value.as < std::string > ())); } -#line 4767 "seclang-parser.cc" // lalr1.cc:906 +#line 4782 "seclang-parser.cc" // lalr1.cc:919 break; case 364: -#line 2700 "seclang-parser.yy" // lalr1.cc:906 +#line 2700 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Maturity(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Maturity(yystack_[0].value.as < std::string > ())); } -#line 4775 "seclang-parser.cc" // lalr1.cc:906 +#line 4790 "seclang-parser.cc" // lalr1.cc:919 break; case 365: -#line 2704 "seclang-parser.yy" // lalr1.cc:906 +#line 2704 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Msg(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Msg(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4783 "seclang-parser.cc" // lalr1.cc:906 +#line 4798 "seclang-parser.cc" // lalr1.cc:919 break; case 366: -#line 2708 "seclang-parser.yy" // lalr1.cc:906 +#line 2708 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::MultiMatch(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::MultiMatch(yystack_[0].value.as < std::string > ())); } -#line 4791 "seclang-parser.cc" // lalr1.cc:906 +#line 4806 "seclang-parser.cc" // lalr1.cc:919 break; case 367: -#line 2712 "seclang-parser.yy" // lalr1.cc:906 +#line 2712 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::NoAuditLog(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::NoAuditLog(yystack_[0].value.as < std::string > ())); } -#line 4799 "seclang-parser.cc" // lalr1.cc:906 +#line 4814 "seclang-parser.cc" // lalr1.cc:919 break; case 368: -#line 2716 "seclang-parser.yy" // lalr1.cc:906 +#line 2716 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::NoLog(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::NoLog(yystack_[0].value.as < std::string > ())); } -#line 4807 "seclang-parser.cc" // lalr1.cc:906 +#line 4822 "seclang-parser.cc" // lalr1.cc:919 break; case 369: -#line 2720 "seclang-parser.yy" // lalr1.cc:906 +#line 2720 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::disruptive::Pass(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::disruptive::Pass(yystack_[0].value.as < std::string > ())); } -#line 4815 "seclang-parser.cc" // lalr1.cc:906 +#line 4830 "seclang-parser.cc" // lalr1.cc:919 break; case 370: -#line 2724 "seclang-parser.yy" // lalr1.cc:906 +#line 2724 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("Pause", yystack_[1].location); } -#line 4823 "seclang-parser.cc" // lalr1.cc:906 +#line 4838 "seclang-parser.cc" // lalr1.cc:919 break; case 371: -#line 2728 "seclang-parser.yy" // lalr1.cc:906 +#line 2728 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Phase(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Phase(yystack_[0].value.as < std::string > ())); } -#line 4831 "seclang-parser.cc" // lalr1.cc:906 +#line 4846 "seclang-parser.cc" // lalr1.cc:919 break; case 372: -#line 2732 "seclang-parser.yy" // lalr1.cc:906 +#line 2732 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("Prepend", yystack_[1].location); } -#line 4839 "seclang-parser.cc" // lalr1.cc:906 +#line 4854 "seclang-parser.cc" // lalr1.cc:919 break; case 373: -#line 2736 "seclang-parser.yy" // lalr1.cc:906 +#line 2736 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("Proxy", yystack_[1].location); } -#line 4847 "seclang-parser.cc" // lalr1.cc:906 +#line 4862 "seclang-parser.cc" // lalr1.cc:919 break; case 374: -#line 2740 "seclang-parser.yy" // lalr1.cc:906 +#line 2740 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::disruptive::Redirect(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::disruptive::Redirect(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4855 "seclang-parser.cc" // lalr1.cc:906 +#line 4870 "seclang-parser.cc" // lalr1.cc:919 break; case 375: -#line 2744 "seclang-parser.yy" // lalr1.cc:906 +#line 2744 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Rev(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Rev(yystack_[0].value.as < std::string > ())); } -#line 4863 "seclang-parser.cc" // lalr1.cc:906 +#line 4878 "seclang-parser.cc" // lalr1.cc:919 break; case 376: -#line 2748 "seclang-parser.yy" // lalr1.cc:906 +#line 2748 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("SanitiseArg", yystack_[1].location); } -#line 4871 "seclang-parser.cc" // lalr1.cc:906 +#line 4886 "seclang-parser.cc" // lalr1.cc:919 break; case 377: -#line 2752 "seclang-parser.yy" // lalr1.cc:906 +#line 2752 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("SanitiseMatched", yystack_[1].location); } -#line 4879 "seclang-parser.cc" // lalr1.cc:906 +#line 4894 "seclang-parser.cc" // lalr1.cc:919 break; case 378: -#line 2756 "seclang-parser.yy" // lalr1.cc:906 +#line 2756 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("SanitiseMatchedBytes", yystack_[1].location); } -#line 4887 "seclang-parser.cc" // lalr1.cc:906 +#line 4902 "seclang-parser.cc" // lalr1.cc:919 break; case 379: -#line 2760 "seclang-parser.yy" // lalr1.cc:906 +#line 2760 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("SanitiseRequestHeader", yystack_[1].location); } -#line 4895 "seclang-parser.cc" // lalr1.cc:906 +#line 4910 "seclang-parser.cc" // lalr1.cc:919 break; case 380: -#line 2764 "seclang-parser.yy" // lalr1.cc:906 +#line 2764 "seclang-parser.yy" // lalr1.cc:919 { ACTION_NOT_SUPPORTED("SanitiseResponseHeader", yystack_[1].location); } -#line 4903 "seclang-parser.cc" // lalr1.cc:906 +#line 4918 "seclang-parser.cc" // lalr1.cc:919 break; case 381: -#line 2768 "seclang-parser.yy" // lalr1.cc:906 +#line 2768 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetENV(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetENV(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4911 "seclang-parser.cc" // lalr1.cc:906 +#line 4926 "seclang-parser.cc" // lalr1.cc:919 break; case 382: -#line 2772 "seclang-parser.yy" // lalr1.cc:906 +#line 2772 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetRSC(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetRSC(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4919 "seclang-parser.cc" // lalr1.cc:906 +#line 4934 "seclang-parser.cc" // lalr1.cc:919 break; case 383: -#line 2776 "seclang-parser.yy" // lalr1.cc:906 +#line 2776 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetSID(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetSID(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4927 "seclang-parser.cc" // lalr1.cc:906 +#line 4942 "seclang-parser.cc" // lalr1.cc:919 break; case 384: -#line 2780 "seclang-parser.yy" // lalr1.cc:906 +#line 2780 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetUID(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetUID(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4935 "seclang-parser.cc" // lalr1.cc:906 +#line 4950 "seclang-parser.cc" // lalr1.cc:919 break; case 385: -#line 2784 "seclang-parser.yy" // lalr1.cc:906 +#line 2784 "seclang-parser.yy" // lalr1.cc:919 { - yylhs.value.as< std::unique_ptr > () = std::move(yystack_[0].value.as< std::unique_ptr > ()); + yylhs.value.as < std::unique_ptr > () = std::move(yystack_[0].value.as < std::unique_ptr > ()); } -#line 4943 "seclang-parser.cc" // lalr1.cc:906 +#line 4958 "seclang-parser.cc" // lalr1.cc:919 break; case 386: -#line 2788 "seclang-parser.yy" // lalr1.cc:906 +#line 2788 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Severity(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Severity(yystack_[0].value.as < std::string > ())); } -#line 4951 "seclang-parser.cc" // lalr1.cc:906 +#line 4966 "seclang-parser.cc" // lalr1.cc:919 break; case 387: -#line 2792 "seclang-parser.yy" // lalr1.cc:906 +#line 2792 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Skip(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Skip(yystack_[0].value.as < std::string > ())); } -#line 4959 "seclang-parser.cc" // lalr1.cc:906 +#line 4974 "seclang-parser.cc" // lalr1.cc:919 break; case 388: -#line 2796 "seclang-parser.yy" // lalr1.cc:906 +#line 2796 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SkipAfter(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SkipAfter(yystack_[0].value.as < std::string > ())); } -#line 4967 "seclang-parser.cc" // lalr1.cc:906 +#line 4982 "seclang-parser.cc" // lalr1.cc:919 break; case 389: -#line 2800 "seclang-parser.yy" // lalr1.cc:906 +#line 2800 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::data::Status(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::data::Status(yystack_[0].value.as < std::string > ())); } -#line 4975 "seclang-parser.cc" // lalr1.cc:906 +#line 4990 "seclang-parser.cc" // lalr1.cc:919 break; case 390: -#line 2804 "seclang-parser.yy" // lalr1.cc:906 +#line 2804 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Tag(std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Tag(std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 4983 "seclang-parser.cc" // lalr1.cc:906 +#line 4998 "seclang-parser.cc" // lalr1.cc:919 break; case 391: -#line 2808 "seclang-parser.yy" // lalr1.cc:906 +#line 2808 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::Ver(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::Ver(yystack_[0].value.as < std::string > ())); } -#line 4991 "seclang-parser.cc" // lalr1.cc:906 +#line 5006 "seclang-parser.cc" // lalr1.cc:919 break; case 392: -#line 2812 "seclang-parser.yy" // lalr1.cc:906 +#line 2812 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::XmlNS(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::XmlNS(yystack_[0].value.as < std::string > ())); } -#line 4999 "seclang-parser.cc" // lalr1.cc:906 +#line 5014 "seclang-parser.cc" // lalr1.cc:919 break; case 393: -#line 2816 "seclang-parser.yy" // lalr1.cc:906 +#line 2816 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::ParityZero7bit(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::ParityZero7bit(yystack_[0].value.as < std::string > ())); } -#line 5007 "seclang-parser.cc" // lalr1.cc:906 +#line 5022 "seclang-parser.cc" // lalr1.cc:919 break; case 394: -#line 2820 "seclang-parser.yy" // lalr1.cc:906 +#line 2820 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::ParityOdd7bit(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::ParityOdd7bit(yystack_[0].value.as < std::string > ())); } -#line 5015 "seclang-parser.cc" // lalr1.cc:906 +#line 5030 "seclang-parser.cc" // lalr1.cc:919 break; case 395: -#line 2824 "seclang-parser.yy" // lalr1.cc:906 +#line 2824 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::ParityEven7bit(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::ParityEven7bit(yystack_[0].value.as < std::string > ())); } -#line 5023 "seclang-parser.cc" // lalr1.cc:906 +#line 5038 "seclang-parser.cc" // lalr1.cc:919 break; case 396: -#line 2828 "seclang-parser.yy" // lalr1.cc:906 +#line 2828 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::SqlHexDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::SqlHexDecode(yystack_[0].value.as < std::string > ())); } -#line 5031 "seclang-parser.cc" // lalr1.cc:906 +#line 5046 "seclang-parser.cc" // lalr1.cc:919 break; case 397: -#line 2832 "seclang-parser.yy" // lalr1.cc:906 +#line 2832 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Base64Encode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Base64Encode(yystack_[0].value.as < std::string > ())); } -#line 5039 "seclang-parser.cc" // lalr1.cc:906 +#line 5054 "seclang-parser.cc" // lalr1.cc:919 break; case 398: -#line 2836 "seclang-parser.yy" // lalr1.cc:906 +#line 2836 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Base64Decode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Base64Decode(yystack_[0].value.as < std::string > ())); } -#line 5047 "seclang-parser.cc" // lalr1.cc:906 +#line 5062 "seclang-parser.cc" // lalr1.cc:919 break; case 399: -#line 2840 "seclang-parser.yy" // lalr1.cc:906 +#line 2840 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Base64DecodeExt(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Base64DecodeExt(yystack_[0].value.as < std::string > ())); } -#line 5055 "seclang-parser.cc" // lalr1.cc:906 +#line 5070 "seclang-parser.cc" // lalr1.cc:919 break; case 400: -#line 2844 "seclang-parser.yy" // lalr1.cc:906 +#line 2844 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::CmdLine(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::CmdLine(yystack_[0].value.as < std::string > ())); } -#line 5063 "seclang-parser.cc" // lalr1.cc:906 +#line 5078 "seclang-parser.cc" // lalr1.cc:919 break; case 401: -#line 2848 "seclang-parser.yy" // lalr1.cc:906 +#line 2848 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Sha1(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Sha1(yystack_[0].value.as < std::string > ())); } -#line 5071 "seclang-parser.cc" // lalr1.cc:906 +#line 5086 "seclang-parser.cc" // lalr1.cc:919 break; case 402: -#line 2852 "seclang-parser.yy" // lalr1.cc:906 +#line 2852 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Md5(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Md5(yystack_[0].value.as < std::string > ())); } -#line 5079 "seclang-parser.cc" // lalr1.cc:906 +#line 5094 "seclang-parser.cc" // lalr1.cc:919 break; case 403: -#line 2856 "seclang-parser.yy" // lalr1.cc:906 +#line 2856 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::EscapeSeqDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::EscapeSeqDecode(yystack_[0].value.as < std::string > ())); } -#line 5087 "seclang-parser.cc" // lalr1.cc:906 +#line 5102 "seclang-parser.cc" // lalr1.cc:919 break; case 404: -#line 2860 "seclang-parser.yy" // lalr1.cc:906 +#line 2860 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::HexEncode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::HexEncode(yystack_[0].value.as < std::string > ())); } -#line 5095 "seclang-parser.cc" // lalr1.cc:906 +#line 5110 "seclang-parser.cc" // lalr1.cc:919 break; case 405: -#line 2864 "seclang-parser.yy" // lalr1.cc:906 +#line 2864 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::HexDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::HexDecode(yystack_[0].value.as < std::string > ())); } -#line 5103 "seclang-parser.cc" // lalr1.cc:906 +#line 5118 "seclang-parser.cc" // lalr1.cc:919 break; case 406: -#line 2868 "seclang-parser.yy" // lalr1.cc:906 +#line 2868 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::LowerCase(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::LowerCase(yystack_[0].value.as < std::string > ())); } -#line 5111 "seclang-parser.cc" // lalr1.cc:906 +#line 5126 "seclang-parser.cc" // lalr1.cc:919 break; case 407: -#line 2872 "seclang-parser.yy" // lalr1.cc:906 +#line 2872 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::UpperCase(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::UpperCase(yystack_[0].value.as < std::string > ())); } -#line 5119 "seclang-parser.cc" // lalr1.cc:906 +#line 5134 "seclang-parser.cc" // lalr1.cc:919 break; case 408: -#line 2876 "seclang-parser.yy" // lalr1.cc:906 +#line 2876 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::UrlDecodeUni(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::UrlDecodeUni(yystack_[0].value.as < std::string > ())); } -#line 5127 "seclang-parser.cc" // lalr1.cc:906 +#line 5142 "seclang-parser.cc" // lalr1.cc:919 break; case 409: -#line 2880 "seclang-parser.yy" // lalr1.cc:906 +#line 2880 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::UrlDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::UrlDecode(yystack_[0].value.as < std::string > ())); } -#line 5135 "seclang-parser.cc" // lalr1.cc:906 +#line 5150 "seclang-parser.cc" // lalr1.cc:919 break; case 410: -#line 2884 "seclang-parser.yy" // lalr1.cc:906 +#line 2884 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::UrlEncode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::UrlEncode(yystack_[0].value.as < std::string > ())); } -#line 5143 "seclang-parser.cc" // lalr1.cc:906 +#line 5158 "seclang-parser.cc" // lalr1.cc:919 break; case 411: -#line 2888 "seclang-parser.yy" // lalr1.cc:906 +#line 2888 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::None(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::None(yystack_[0].value.as < std::string > ())); } -#line 5151 "seclang-parser.cc" // lalr1.cc:906 +#line 5166 "seclang-parser.cc" // lalr1.cc:919 break; case 412: -#line 2892 "seclang-parser.yy" // lalr1.cc:906 +#line 2892 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::CompressWhitespace(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::CompressWhitespace(yystack_[0].value.as < std::string > ())); } -#line 5159 "seclang-parser.cc" // lalr1.cc:906 +#line 5174 "seclang-parser.cc" // lalr1.cc:919 break; case 413: -#line 2896 "seclang-parser.yy" // lalr1.cc:906 +#line 2896 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::RemoveWhitespace(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::RemoveWhitespace(yystack_[0].value.as < std::string > ())); } -#line 5167 "seclang-parser.cc" // lalr1.cc:906 +#line 5182 "seclang-parser.cc" // lalr1.cc:919 break; case 414: -#line 2900 "seclang-parser.yy" // lalr1.cc:906 +#line 2900 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::ReplaceNulls(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::ReplaceNulls(yystack_[0].value.as < std::string > ())); } -#line 5175 "seclang-parser.cc" // lalr1.cc:906 +#line 5190 "seclang-parser.cc" // lalr1.cc:919 break; case 415: -#line 2904 "seclang-parser.yy" // lalr1.cc:906 +#line 2904 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::RemoveNulls(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::RemoveNulls(yystack_[0].value.as < std::string > ())); } -#line 5183 "seclang-parser.cc" // lalr1.cc:906 +#line 5198 "seclang-parser.cc" // lalr1.cc:919 break; case 416: -#line 2908 "seclang-parser.yy" // lalr1.cc:906 +#line 2908 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::HtmlEntityDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::HtmlEntityDecode(yystack_[0].value.as < std::string > ())); } -#line 5191 "seclang-parser.cc" // lalr1.cc:906 +#line 5206 "seclang-parser.cc" // lalr1.cc:919 break; case 417: -#line 2912 "seclang-parser.yy" // lalr1.cc:906 +#line 2912 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::JsDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::JsDecode(yystack_[0].value.as < std::string > ())); } -#line 5199 "seclang-parser.cc" // lalr1.cc:906 +#line 5214 "seclang-parser.cc" // lalr1.cc:919 break; case 418: -#line 2916 "seclang-parser.yy" // lalr1.cc:906 +#line 2916 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::CssDecode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::CssDecode(yystack_[0].value.as < std::string > ())); } -#line 5207 "seclang-parser.cc" // lalr1.cc:906 +#line 5222 "seclang-parser.cc" // lalr1.cc:919 break; case 419: -#line 2920 "seclang-parser.yy" // lalr1.cc:906 +#line 2920 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Trim(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Trim(yystack_[0].value.as < std::string > ())); } -#line 5215 "seclang-parser.cc" // lalr1.cc:906 +#line 5230 "seclang-parser.cc" // lalr1.cc:919 break; case 420: -#line 2924 "seclang-parser.yy" // lalr1.cc:906 +#line 2924 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::TrimLeft(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::TrimLeft(yystack_[0].value.as < std::string > ())); } -#line 5223 "seclang-parser.cc" // lalr1.cc:906 +#line 5238 "seclang-parser.cc" // lalr1.cc:919 break; case 421: -#line 2928 "seclang-parser.yy" // lalr1.cc:906 +#line 2928 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::TrimRight(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::TrimRight(yystack_[0].value.as < std::string > ())); } -#line 5231 "seclang-parser.cc" // lalr1.cc:906 +#line 5246 "seclang-parser.cc" // lalr1.cc:919 break; case 422: -#line 2932 "seclang-parser.yy" // lalr1.cc:906 +#line 2932 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::NormalisePathWin(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::NormalisePathWin(yystack_[0].value.as < std::string > ())); } -#line 5239 "seclang-parser.cc" // lalr1.cc:906 +#line 5254 "seclang-parser.cc" // lalr1.cc:919 break; case 423: -#line 2936 "seclang-parser.yy" // lalr1.cc:906 +#line 2936 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::NormalisePath(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::NormalisePath(yystack_[0].value.as < std::string > ())); } -#line 5247 "seclang-parser.cc" // lalr1.cc:906 +#line 5262 "seclang-parser.cc" // lalr1.cc:919 break; case 424: -#line 2940 "seclang-parser.yy" // lalr1.cc:906 +#line 2940 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Length(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Length(yystack_[0].value.as < std::string > ())); } -#line 5255 "seclang-parser.cc" // lalr1.cc:906 +#line 5270 "seclang-parser.cc" // lalr1.cc:919 break; case 425: -#line 2944 "seclang-parser.yy" // lalr1.cc:906 +#line 2944 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::Utf8ToUnicode(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::Utf8ToUnicode(yystack_[0].value.as < std::string > ())); } -#line 5263 "seclang-parser.cc" // lalr1.cc:906 +#line 5278 "seclang-parser.cc" // lalr1.cc:919 break; case 426: -#line 2948 "seclang-parser.yy" // lalr1.cc:906 +#line 2948 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::RemoveCommentsChar(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::RemoveCommentsChar(yystack_[0].value.as < std::string > ())); } -#line 5271 "seclang-parser.cc" // lalr1.cc:906 +#line 5286 "seclang-parser.cc" // lalr1.cc:919 break; case 427: -#line 2952 "seclang-parser.yy" // lalr1.cc:906 +#line 2952 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::RemoveComments(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::RemoveComments(yystack_[0].value.as < std::string > ())); } -#line 5279 "seclang-parser.cc" // lalr1.cc:906 +#line 5294 "seclang-parser.cc" // lalr1.cc:919 break; case 428: -#line 2956 "seclang-parser.yy" // lalr1.cc:906 +#line 2956 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::transformations::ReplaceComments(yystack_[0].value.as< std::string > ())); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::transformations::ReplaceComments(yystack_[0].value.as < std::string > ())); } -#line 5287 "seclang-parser.cc" // lalr1.cc:906 +#line 5302 "seclang-parser.cc" // lalr1.cc:919 break; case 429: -#line 2963 "seclang-parser.yy" // lalr1.cc:906 +#line 2963 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::unsetOperation, std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::unsetOperation, std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 5295 "seclang-parser.cc" // lalr1.cc:906 +#line 5310 "seclang-parser.cc" // lalr1.cc:919 break; case 430: -#line 2967 "seclang-parser.yy" // lalr1.cc:906 +#line 2967 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::setToOneOperation, std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::setToOneOperation, std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 5303 "seclang-parser.cc" // lalr1.cc:906 +#line 5318 "seclang-parser.cc" // lalr1.cc:919 break; case 431: -#line 2971 "seclang-parser.yy" // lalr1.cc:906 +#line 2971 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::setOperation, std::move(yystack_[2].value.as< std::unique_ptr > ()), std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::setOperation, std::move(yystack_[2].value.as < std::unique_ptr > ()), std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 5311 "seclang-parser.cc" // lalr1.cc:906 +#line 5326 "seclang-parser.cc" // lalr1.cc:919 break; case 432: -#line 2975 "seclang-parser.yy" // lalr1.cc:906 +#line 2975 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::sumAndSetOperation, std::move(yystack_[2].value.as< std::unique_ptr > ()), std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::sumAndSetOperation, std::move(yystack_[2].value.as < std::unique_ptr > ()), std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 5319 "seclang-parser.cc" // lalr1.cc:906 +#line 5334 "seclang-parser.cc" // lalr1.cc:919 break; case 433: -#line 2979 "seclang-parser.yy" // lalr1.cc:906 +#line 2979 "seclang-parser.yy" // lalr1.cc:919 { - ACTION_CONTAINER(yylhs.value.as< std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::substractAndSetOperation, std::move(yystack_[2].value.as< std::unique_ptr > ()), std::move(yystack_[0].value.as< std::unique_ptr > ()))); + ACTION_CONTAINER(yylhs.value.as < std::unique_ptr > (), new actions::SetVar(actions::SetVarOperation::substractAndSetOperation, std::move(yystack_[2].value.as < std::unique_ptr > ()), std::move(yystack_[0].value.as < std::unique_ptr > ()))); } -#line 5327 "seclang-parser.cc" // lalr1.cc:906 +#line 5342 "seclang-parser.cc" // lalr1.cc:919 break; case 434: -#line 2986 "seclang-parser.yy" // lalr1.cc:906 +#line 2986 "seclang-parser.yy" // lalr1.cc:919 { - yystack_[1].value.as< std::unique_ptr > ()->appendText(yystack_[0].value.as< std::string > ()); - yylhs.value.as< std::unique_ptr > () = std::move(yystack_[1].value.as< std::unique_ptr > ()); + yystack_[1].value.as < std::unique_ptr > ()->appendText(yystack_[0].value.as < std::string > ()); + yylhs.value.as < std::unique_ptr > () = std::move(yystack_[1].value.as < std::unique_ptr > ()); } -#line 5336 "seclang-parser.cc" // lalr1.cc:906 +#line 5351 "seclang-parser.cc" // lalr1.cc:919 break; case 435: -#line 2991 "seclang-parser.yy" // lalr1.cc:906 +#line 2991 "seclang-parser.yy" // lalr1.cc:919 { - yystack_[1].value.as< std::unique_ptr > ()->appendVar(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > () = std::move(yystack_[1].value.as< std::unique_ptr > ()); + yystack_[1].value.as < std::unique_ptr > ()->appendVar(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > () = std::move(yystack_[1].value.as < std::unique_ptr > ()); } -#line 5345 "seclang-parser.cc" // lalr1.cc:906 +#line 5360 "seclang-parser.cc" // lalr1.cc:919 break; case 436: -#line 2996 "seclang-parser.yy" // lalr1.cc:906 +#line 2996 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr r(new RunTimeString()); - r->appendText(yystack_[0].value.as< std::string > ()); - yylhs.value.as< std::unique_ptr > () = std::move(r); + r->appendText(yystack_[0].value.as < std::string > ()); + yylhs.value.as < std::unique_ptr > () = std::move(r); } -#line 5355 "seclang-parser.cc" // lalr1.cc:906 +#line 5370 "seclang-parser.cc" // lalr1.cc:919 break; case 437: -#line 3002 "seclang-parser.yy" // lalr1.cc:906 +#line 3002 "seclang-parser.yy" // lalr1.cc:919 { std::unique_ptr r(new RunTimeString()); - r->appendVar(std::move(yystack_[0].value.as< std::unique_ptr > ())); - yylhs.value.as< std::unique_ptr > () = std::move(r); + r->appendVar(std::move(yystack_[0].value.as < std::unique_ptr > ())); + yylhs.value.as < std::unique_ptr > () = std::move(r); } -#line 5365 "seclang-parser.cc" // lalr1.cc:906 +#line 5380 "seclang-parser.cc" // lalr1.cc:919 break; -#line 5369 "seclang-parser.cc" // lalr1.cc:906 +#line 5384 "seclang-parser.cc" // lalr1.cc:919 default: break; } @@ -5373,6 +5388,7 @@ namespace yy { #if YY_EXCEPTIONS catch (const syntax_error& yyexc) { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; error (yyexc); YYERROR; } @@ -5387,6 +5403,7 @@ namespace yy { } goto yynewstate; + /*--------------------------------------. | yyerrlab -- here on detecting error. | `--------------------------------------*/ @@ -5423,18 +5440,18 @@ namespace yy { | yyerrorlab -- error raised explicitly by YYERROR. | `---------------------------------------------------*/ yyerrorlab: - - /* Pacify compilers like GCC when the user code never invokes - YYERROR and the label yyerrorlab therefore never appears in user - code. */ + /* Pacify compilers when the user code never invokes YYERROR and + the label yyerrorlab therefore never appears in user code. */ if (false) - goto yyerrorlab; + YYERROR; + /* Do not reclaim the symbols of the rule whose action triggered this YYERROR. */ yypop_ (yylen); yylen = 0; goto yyerrlab1; + /*-------------------------------------------------------------. | yyerrlab1 -- common code for both syntax error and YYERROR. | `-------------------------------------------------------------*/ @@ -5475,16 +5492,26 @@ namespace yy { } goto yynewstate; - // Accept. + + /*-------------------------------------. + | yyacceptlab -- YYACCEPT comes here. | + `-------------------------------------*/ yyacceptlab: yyresult = 0; goto yyreturn; - // Abort. + + /*-----------------------------------. + | yyabortlab -- YYABORT comes here. | + `-----------------------------------*/ yyabortlab: yyresult = 1; goto yyreturn; + + /*-----------------------------------------------------. + | yyreturn -- parsing is finished, return the result. | + `-----------------------------------------------------*/ yyreturn: if (!yyla.empty ()) yy_destroy_ ("Cleanup: discarding lookahead", yyla); @@ -6845,8 +6872,8 @@ namespace yy { } // yy -#line 6849 "seclang-parser.cc" // lalr1.cc:1217 -#line 3008 "seclang-parser.yy" // lalr1.cc:1218 +#line 6876 "seclang-parser.cc" // lalr1.cc:1242 +#line 3008 "seclang-parser.yy" // lalr1.cc:1243 void yy::seclang_parser::error (const location_type& l, const std::string& m) { diff --git a/src/parser/seclang-parser.hh b/src/parser/seclang-parser.hh index 0c0795c0..e941e878 100644 --- a/src/parser/seclang-parser.hh +++ b/src/parser/seclang-parser.hh @@ -1,8 +1,8 @@ -// A Bison parser, made by GNU Bison 3.2. +// A Bison parser, made by GNU Bison 3.3.2. // Skeleton interface for Bison LALR(1) parsers in C++ -// Copyright (C) 2002-2015, 2018 Free Software Foundation, Inc. +// Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -44,7 +44,7 @@ #ifndef YY_YY_SECLANG_PARSER_HH_INCLUDED # define YY_YY_SECLANG_PARSER_HH_INCLUDED // // "%code requires" blocks. -#line 10 "seclang-parser.yy" // lalr1.cc:403 +#line 10 "seclang-parser.yy" // lalr1.cc:401 #include #include @@ -347,7 +347,7 @@ using namespace modsecurity::operators; a = std::move(c); -#line 351 "seclang-parser.hh" // lalr1.cc:403 +#line 351 "seclang-parser.hh" // lalr1.cc:401 # include # include // std::abort @@ -356,8 +356,14 @@ using namespace modsecurity::operators; # include # include +#if defined __cplusplus +# define YY_CPLUSPLUS __cplusplus +#else +# define YY_CPLUSPLUS 199711L +#endif + // Support move semantics when possible. -#if defined __cplusplus && 201103L <= __cplusplus +#if 201103L <= YY_CPLUSPLUS # define YY_MOVE std::move # define YY_MOVE_OR_COPY move # define YY_MOVE_REF(Type) Type&& @@ -370,6 +376,22 @@ using namespace modsecurity::operators; # define YY_RVREF(Type) const Type& # define YY_COPY(Type) const Type& #endif + +// Support noexcept when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_NOEXCEPT noexcept +# define YY_NOTHROW +#else +# define YY_NOEXCEPT +# define YY_NOTHROW throw () +#endif + +// Support constexpr when possible. +#if 201703 <= YY_CPLUSPLUS +# define YY_CONSTEXPR constexpr +#else +# define YY_CONSTEXPR +#endif # include "location.hh" #include #ifndef YYASSERT @@ -441,191 +463,77 @@ using namespace modsecurity::operators; namespace yy { -#line 445 "seclang-parser.hh" // lalr1.cc:403 +#line 467 "seclang-parser.hh" // lalr1.cc:401 - /// A stack with random access from its top. - template > - class stack + + + /// A Bison parser. + class seclang_parser { public: - // Hide our reversed order. - typedef typename S::reverse_iterator iterator; - typedef typename S::const_reverse_iterator const_iterator; - typedef typename S::size_type size_type; - - stack (size_type n = 200) - : seq_ (n) - {} - - /// Random access. - /// - /// Index 0 returns the topmost element. - T& - operator[] (size_type i) - { - return seq_[size () - 1 - i]; - } - - /// Random access. - /// - /// Index 0 returns the topmost element. - T& - operator[] (int i) - { - return operator[] (size_type (i)); - } - - /// Random access. - /// - /// Index 0 returns the topmost element. - const T& - operator[] (size_type i) const - { - return seq_[size () - 1 - i]; - } - - /// Random access. - /// - /// Index 0 returns the topmost element. - const T& - operator[] (int i) const - { - return operator[] (size_type (i)); - } - - /// Steal the contents of \a t. - /// - /// Close to move-semantics. - void - push (YY_MOVE_REF (T) t) - { - seq_.push_back (T ()); - operator[](0).move (t); - } - - void - pop (int n = 1) - { - for (; 0 < n; --n) - seq_.pop_back (); - } - - void - clear () - { - seq_.clear (); - } - - size_type - size () const - { - return seq_.size (); - } - - const_iterator - begin () const - { - return seq_.rbegin (); - } - - const_iterator - end () const - { - return seq_.rend (); - } - - private: - stack (const stack&); - stack& operator= (const stack&); - /// The wrapped container. - S seq_; - }; - - /// Present a slice of the top of a stack. - template > - class slice - { - public: - slice (const S& stack, int range) - : stack_ (stack) - , range_ (range) - {} - - const T& - operator[] (int i) const - { - return stack_[range_ - i]; - } - - private: - const S& stack_; - int range_; - }; - - - - /// A char[S] buffer to store and retrieve objects. +#ifndef YYSTYPE + /// A buffer to store and retrieve objects. /// /// Sort of a variant, but does not keep track of the nature /// of the stored data, since that knowledge is available - /// via the current state. - template - struct variant + /// via the current parser state. + class semantic_type { + public: /// Type of *this. - typedef variant self_type; + typedef semantic_type self_type; /// Empty construction. - variant () + semantic_type () YY_NOEXCEPT : yybuffer_ () , yytypeid_ (YY_NULLPTR) {} /// Construct and fill. template - variant (YY_RVREF (T) t) + semantic_type (YY_RVREF (T) t) : yytypeid_ (&typeid (T)) { - YYASSERT (sizeof (T) <= S); + YYASSERT (sizeof (T) <= size); new (yyas_ ()) T (YY_MOVE (t)); } /// Destruction, allowed only if empty. - ~variant () + ~semantic_type () YY_NOEXCEPT { YYASSERT (!yytypeid_); } +# if 201103L <= YY_CPLUSPLUS + /// Instantiate a \a T in here from \a t. + template + T& + emplace (U&&... u) + { + YYASSERT (!yytypeid_); + YYASSERT (sizeof (T) <= size); + yytypeid_ = & typeid (T); + return *new (yyas_ ()) T (std::forward (u)...); + } +# else /// Instantiate an empty \a T in here. template T& emplace () { YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= S); + YYASSERT (sizeof (T) <= size); yytypeid_ = & typeid (T); return *new (yyas_ ()) T (); } -# if defined __cplusplus && 201103L <= __cplusplus - /// Instantiate a \a T in here from \a t. - template - T& - emplace (U&& u) - { - YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= S); - yytypeid_ = & typeid (T); - return *new (yyas_ ()) T (std::forward (u)); - } -# else /// Instantiate a \a T in here from \a t. template T& emplace (const T& t) { YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= S); + YYASSERT (sizeof (T) <= size); yytypeid_ = & typeid (T); return *new (yyas_ ()) T (std::move((T&)t)); } @@ -652,75 +560,75 @@ namespace yy { /// Accessor to a built \a T. template T& - as () + as () YY_NOEXCEPT { YYASSERT (yytypeid_); YYASSERT (*yytypeid_ == typeid (T)); - YYASSERT (sizeof (T) <= S); + YYASSERT (sizeof (T) <= size); return *yyas_ (); } /// Const accessor to a built \a T (for %printer). template const T& - as () const + as () const YY_NOEXCEPT { YYASSERT (yytypeid_); YYASSERT (*yytypeid_ == typeid (T)); - YYASSERT (sizeof (T) <= S); + YYASSERT (sizeof (T) <= size); return *yyas_ (); } - /// Swap the content with \a other, of same type. + /// Swap the content with \a that, of same type. /// /// Both variants must be built beforehand, because swapping the actual /// data requires reading it (with as()), and this is not possible on /// unconstructed variants: it would require some dynamic testing, which /// should not be the variant's responsibility. /// Swapping between built and (possibly) non-built is done with - /// variant::move (). + /// self_type::move (). template void - swap (self_type& other) + swap (self_type& that) YY_NOEXCEPT { YYASSERT (yytypeid_); - YYASSERT (*yytypeid_ == *other.yytypeid_); - std::swap (as (), other.as ()); + YYASSERT (*yytypeid_ == *that.yytypeid_); + std::swap (as (), that.as ()); } - /// Move the content of \a other to this. + /// Move the content of \a that to this. /// - /// Destroys \a other. + /// Destroys \a that. template void - move (self_type& other) + move (self_type& that) { -# if defined __cplusplus && 201103L <= __cplusplus - emplace (std::move (other.as ())); +# if 201103L <= YY_CPLUSPLUS + emplace (std::move (that.as ())); # else emplace (); - swap (other); + swap (that); # endif - other.destroy (); + that.destroy (); } -# if defined __cplusplus && 201103L <= __cplusplus - /// Move the content of \a other to this. +# if 201103L <= YY_CPLUSPLUS + /// Move the content of \a that to this. template void - move (self_type&& other) + move (self_type&& that) { - emplace (std::move (other.as ())); - other.destroy (); + emplace (std::move (that.as ())); + that.destroy (); } #endif - /// Copy the content of \a other to this. + /// Copy the content of \a that to this. template void - copy (const self_type& other) + copy (const self_type& that) { - emplace (other.as ()); + emplace (that.as ()); } /// Destroy the stored \a T. @@ -735,12 +643,12 @@ namespace yy { private: /// Prohibit blind copies. self_type& operator= (const self_type&); - variant (const self_type&); + semantic_type (const self_type&); /// Accessor to raw memory as \a T. template T* - yyas_ () + yyas_ () YY_NOEXCEPT { void *yyp = yybuffer_.yyraw; return static_cast (yyp); @@ -749,30 +657,12 @@ namespace yy { /// Const accessor to raw memory as \a T. template const T* - yyas_ () const + yyas_ () const YY_NOEXCEPT { const void *yyp = yybuffer_.yyraw; return static_cast (yyp); } - union - { - /// Strongest alignment constraints. - long double yyalign_me; - /// A buffer large enough to store any of the semantic values. - char yyraw[S]; - } yybuffer_; - - /// Whether the content is built: if defined, the name of the stored type. - const std::type_info *yytypeid_; - }; - - - /// A Bison parser. - class seclang_parser - { - public: -#ifndef YYSTYPE /// An auxiliary type to compute the largest semantic type. union union_type { @@ -996,10 +886,24 @@ namespace yy { // actions // actions_may_quoted char dummy7[sizeof (std::unique_ptr > > )]; -}; + }; + + /// The size of the largest semantic type. + enum { size = sizeof (union_type) }; + + /// A buffer to store semantic values. + union + { + /// Strongest alignment constraints. + long double yyalign_me; + /// A buffer large enough to store any of the semantic values. + char yyraw[size]; + } yybuffer_; + + /// Whether the content is built: if defined, the name of the stored type. + const std::type_info *yytypeid_; + }; - /// Symbol semantic values. - typedef variant semantic_type; #else typedef YYSTYPE semantic_type; #endif @@ -1009,7 +913,18 @@ namespace yy { /// Syntax errors thrown from user actions. struct syntax_error : std::runtime_error { - syntax_error (const location_type& l, const std::string& m); + syntax_error (const location_type& l, const std::string& m) + : std::runtime_error (m) + , location (l) + {} + + syntax_error (const syntax_error& s) + : std::runtime_error (s.what ()) + , location (s.location) + {} + + ~syntax_error () YY_NOEXCEPT YY_NOTHROW; + location_type location; }; @@ -1384,2083 +1299,144 @@ namespace yy { typedef Base super_type; /// Default constructor. - basic_symbol (); + basic_symbol () + : value () + , location () + {} - /// Move or copy constructor. - basic_symbol (YY_RVREF (basic_symbol) other); +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + basic_symbol (basic_symbol&& that); +#endif + /// Copy constructor. + basic_symbol (const basic_symbol& that); /// Constructor for valueless symbols, and symbols from each type. - basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr > > ) v, YY_RVREF (location_type) l); - basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr > > ) v, YY_RVREF (location_type) l); - +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, location_type&& l) + : Base (t) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const location_type& l) + : Base (t) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr&& v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr& v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr&& v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr& v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr&& v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr& v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr&& v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr& v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr > > && v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr > > & v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif +#if 201103L <= YY_CPLUSPLUS + basic_symbol (typename Base::kind_type t, std::unique_ptr > > && v, location_type&& l) + : Base (t) + , value (std::move (v)) + , location (std::move (l)) + {} +#else + basic_symbol (typename Base::kind_type t, const std::unique_ptr > > & v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} +#endif /// Destroy the symbol. - ~basic_symbol (); + ~basic_symbol () + { + clear (); + } /// Destroy contents, and record that is empty. - void clear (); - - /// Whether empty. - bool empty () const; - - /// Destructive move, \a s is emptied into this. - void move (basic_symbol& s); - - /// The semantic value. - semantic_type value; - - /// The location. - location_type location; - - private: -#if defined __cplusplus && __cplusplus < 201103L - /// Assignment operator. - basic_symbol& operator= (const basic_symbol& other); -#endif - }; - - /// Type access provider for token (enum) based symbols. - struct by_type - { - /// Default constructor. - by_type (); - - /// Copy constructor. - by_type (const by_type& other); - - /// The symbol type as needed by the constructor. - typedef token_type kind_type; - - /// Constructor from (external) token numbers. - by_type (kind_type t); - - /// Record that this symbol is empty. - void clear (); - - /// Steal the symbol type from \a that. - void move (by_type& that); - - /// The (internal) type number (corresponding to \a type). - /// \a empty when empty. - symbol_number_type type_get () const; - - /// The token. - token_type token () const; - - /// The symbol type. - /// \a empty_symbol when empty. - /// An int, not token_number_type, to be able to store empty_symbol. - int type; - }; - - /// "External" symbols: returned by the scanner. - typedef basic_symbol symbol_type; - - /// Build a parser object. - seclang_parser (modsecurity::Parser::Driver& driver_yyarg); - virtual ~seclang_parser (); - - /// Parse. An alias for parse (). - /// \returns 0 iff parsing succeeded. - int operator() (); - - /// Parse. - /// \returns 0 iff parsing succeeded. - virtual int parse (); - -#if YYDEBUG - /// The current debugging stream. - std::ostream& debug_stream () const YY_ATTRIBUTE_PURE; - /// Set the current debugging stream. - void set_debug_stream (std::ostream &); - - /// Type for debugging levels. - typedef int debug_level_type; - /// The current debugging level. - debug_level_type debug_level () const YY_ATTRIBUTE_PURE; - /// Set the current debugging level. - void set_debug_level (debug_level_type l); -#endif - - /// Report a syntax error. - /// \param loc where the syntax error is found. - /// \param msg a description of the syntax error. - virtual void error (const location_type& loc, const std::string& msg); - - /// Report a syntax error. - void error (const syntax_error& err); - - // Symbol constructors declarations. - static - symbol_type - make_END (YY_COPY (location_type) l); - - static - symbol_type - make_COMMA (YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_CONTENT_INJECTION (YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR (YY_COPY (location_type) l); - - static - symbol_type - make_PIPE (YY_COPY (location_type) l); - - static - symbol_type - make_NEW_LINE (YY_COPY (location_type) l); - - static - symbol_type - make_VAR_COUNT (YY_COPY (location_type) l); - - static - symbol_type - make_VAR_EXCLUSION (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_POST (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_GET (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES_SIZES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES_TMP_CONTENT (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_FILENAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_NAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MATCHED_VARS_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MATCHED_VARS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_COOKIES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_HEADERS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_HEADERS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_GEO (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_COOKIES_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_COMBINED_SIZE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_GET_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RULE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_ARGS_POST_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_AUTH_TYPE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES_COMBINED_SIZE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FILES_TMP_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FULL_REQUEST (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_FULL_REQUEST_LENGTH (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_INBOUND_DATA_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MATCHED_VAR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MATCHED_VAR_NAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_BOUNDARY_QUOTED (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_CRLF_LF_LINES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_DATA_AFTER (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_DATA_BEFORE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_HEADER_FOLDING (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_INVALID_PART (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_INVALID_QUOTING (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_LF_LINE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_MISSING_SEMICOLON (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_SEMICOLON_MISSING (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_STRICT_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_OUTBOUND_DATA_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_PATH_INFO (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_QUERY_STRING (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REMOTE_ADDR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REMOTE_HOST (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REMOTE_PORT (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQBODY_ERROR_MSG (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQBODY_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQBODY_PROCESSOR_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQBODY_PROCESSOR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_BASENAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_BODY_LENGTH (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_BODY (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_FILE_NAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_HEADERS_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_LINE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_METHOD (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_PROTOCOL (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_URI_RAW (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_REQUEST_URI (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESOURCE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_BODY (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_CONTENT_LENGTH (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_CONTENT_TYPE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_HEADERS_NAMES (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_PROTOCOL (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_RESPONSE_STATUS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_SERVER_ADDR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_SERVER_NAME (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_SERVER_PORT (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_SESSION_ID (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_UNIQUE_ID (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_URL_ENCODED_ERROR (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_USER_ID (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_WEB_APP_ID (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_STATUS (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_STATUS_LINE (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_IP (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_GLOBAL (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_TX (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_SESSION (YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE_USER (YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_ENV (YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_XML (YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SETVAR (YY_COPY (location_type) l); - - static - symbol_type - make_SETVAR_OPERATION_EQUALS (YY_COPY (location_type) l); - - static - symbol_type - make_SETVAR_OPERATION_EQUALS_PLUS (YY_COPY (location_type) l); - - static - symbol_type - make_SETVAR_OPERATION_EQUALS_MINUS (YY_COPY (location_type) l); - - static - symbol_type - make_NOT (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_BEGINS_WITH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_CONTAINS (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_CONTAINS_WORD (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_DETECT_SQLI (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_DETECT_XSS (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_ENDS_WITH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_EQ (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_FUZZY_HASH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_GEOLOOKUP (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_GE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_GSB_LOOKUP (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_GT (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_INSPECT_FILE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_IP_MATCH_FROM_FILE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_IP_MATCH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_LE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_LT (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_PM_FROM_FILE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_PM (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_RBL (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_RSUB (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_RX_CONTENT_ONLY (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_RX (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_STR_EQ (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_STR_MATCH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_UNCONDITIONAL_MATCH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_BYTE_RANGE (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_DTD (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_HASH (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_SCHEMA (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_URL_ENCODING (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VALIDATE_UTF8_ENCODING (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VERIFY_CC (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VERIFY_CPF (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_VERIFY_SSN (YY_COPY (location_type) l); - - static - symbol_type - make_OPERATOR_WITHIN (YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_LOG_FMT (YY_COPY (location_type) l); - - static - symbol_type - make_JSON (YY_COPY (location_type) l); - - static - symbol_type - make_NATIVE (YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_RULE_ENGINE (YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_ACCURACY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_ALLOW (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_APPEND (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_BLOCK (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CAPTURE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CHAIN (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_AUDIT_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_AUDIT_LOG_PARTS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_BDY_JSON (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_BDY_XML (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_BDY_URLENCODED (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_FORCE_REQ_BODY_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_REQUEST_BODY_ACCESS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_RULE_REMOVE_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_RULE_REMOVE_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_DENY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_DEPRECATE_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_DROP (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_EXEC (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_EXPIRE_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_INITCOL (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_LOG_DATA (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_MATURITY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_MULTI_MATCH (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_NO_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_NO_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_PASS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_PAUSE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_PHASE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_PREPEND (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_PROXY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_REDIRECT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_REV (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SANITISE_ARG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SANITISE_MATCHED (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SANITISE_MATCHED_BYTES (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SANITISE_REQUEST_HEADER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SANITISE_RESPONSE_HEADER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SETENV (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SETRSC (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SETSID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SETUID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SEVERITY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SKIP (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_SKIP_AFTER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_STATUS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_BASE_64_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_BASE_64_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_CMD_LINE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_CSS_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_HEX_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_HEX_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_JS_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_LENGTH (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_LOWERCASE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_MD5 (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_NONE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_NORMALISE_PATH (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REMOVE_COMMENTS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REMOVE_NULLS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REMOVE_WHITESPACE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REPLACE_COMMENTS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_REPLACE_NULLS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_SHA1 (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_SQL_HEX_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_TRIM (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_TRIM_LEFT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_TRIM_RIGHT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_UPPERCASE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_URL_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_URL_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_URL_DECODE_UNI (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_TRANSFORMATION_UTF8_TO_UNICODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_VER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_ACTION_XMLNS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_COMPONENT_SIG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_CONN_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_ARGUMENT_SEPARATOR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_WEB_APP_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_SERVER_SIG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_DIR_MOD (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_ENG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_FLE_MOD (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_LOG2 (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_LOG_P (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_STS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_AUDIT_TPE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_DEBUG_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_DEBUG_LVL (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_CACHE_TRANSFORMATIONS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_DISABLE_BACKEND_COMPRESS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HASH_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HASH_KEY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HASH_PARAM (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HASH_METHOD_RX (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HASH_METHOD_PM (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_CHROOT_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_GEO_DB (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_GSB_DB (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_GUARDIAN_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_PCRE_MATCH_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_CONN_R_STATE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_CONN_W_STATE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_SENSOR_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_REQ_BODY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_REQ_BODY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_REQ_BODY_LIMIT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_RES_BODY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_RES_BODY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_RES_BODY_LIMIT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_INHERITANCE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_PERF_TIME (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_RULE_ENG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_SEC_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_SEC_DEFAULT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_SEC_MARKER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_UNICODE_MAP_FILE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_DIR_UNICODE_CODE_PAGE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_COLLECTION_TIMEOUT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_HTTP_BLKEY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_INTERCEPT_ON_ERROR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_REMOVE_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_REMOVE_BY_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_REMOVE_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_UPDLOAD_KEEP_FILES (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_UPDLOAD_SAVE_TMP_FILES (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_UPLOAD_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_UPLOAD_FILE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_UPLOAD_FILE_MODE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_ABORT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_DETC (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_HTTPS (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_OFF (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_ON (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_PARALLEL (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_PROCESS_PARTIAL (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_REJECT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_RELEVANT_ONLY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_SERIAL (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_VALUE_WARN (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_XML_EXTERNAL_ENTITY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_RESPONSE_BODY_MP (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_SEC_ARG_SEP (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_SEC_COOKIE_FORMAT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_COOKIEV0_SEPARATOR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_SEC_DATA_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_SEC_STATUS_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_STREAM_IN_BODY_INSPECTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_CONGIG_DIR_SEC_TMP_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_DIRECTIVE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_DIRECTIVE_SECRULESCRIPT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_FREE_TEXT_QUOTE_MACRO_EXPANSION (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_QUOTATION_MARK (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_BLD (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_DUR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_HSV (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_REMOTE_USER (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_DAY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_EPOCH (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_HOUR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_MIN (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_MON (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_SEC (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_WDAY (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_RUN_TIME_VAR_TIME_YEAR (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_VARIABLE (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_DICT_ELEMENT (YY_COPY (std::string) v, YY_COPY (location_type) l); - - static - symbol_type - make_DICT_ELEMENT_REGEXP (YY_COPY (std::string) v, YY_COPY (location_type) l); - - - - private: - /// This class is not copyable. - seclang_parser (const seclang_parser&); - seclang_parser& operator= (const seclang_parser&); - - /// State numbers. - typedef int state_type; - - /// Generate an error message. - /// \param yystate the state where the error occurred. - /// \param yyla the lookahead token. - virtual std::string yysyntax_error_ (state_type yystate, - const symbol_type& yyla) const; - - /// Compute post-reduction state. - /// \param yystate the current state - /// \param yysym the nonterminal to push on the stack - state_type yy_lr_goto_state_ (state_type yystate, int yysym); - - /// Whether the given \c yypact_ value indicates a defaulted state. - /// \param yyvalue the value to check - static bool yy_pact_value_is_default_ (int yyvalue); - - /// Whether the given \c yytable_ value indicates a syntax error. - /// \param yyvalue the value to check - static bool yy_table_value_is_error_ (int yyvalue); - - static const short yypact_ninf_; - static const signed char yytable_ninf_; - - /// Convert a scanner token number \a t to a symbol number. - static token_number_type yytranslate_ (token_type t); - - // Tables. - // YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing - // STATE-NUM. - static const short yypact_[]; - - // YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. - // Performed when YYTABLE does not specify something else to do. Zero - // means the default is an error. - static const unsigned short yydefact_[]; - - // YYPGOTO[NTERM-NUM]. - static const short yypgoto_[]; - - // YYDEFGOTO[NTERM-NUM]. - static const short yydefgoto_[]; - - // YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If - // positive, shift that token. If negative, reduce the rule whose - // number is the opposite. If YYTABLE_NINF, syntax error. - static const unsigned short yytable_[]; - - static const short yycheck_[]; - - // YYSTOS[STATE-NUM] -- The (internal number of the) accessing - // symbol of state STATE-NUM. - static const unsigned short yystos_[]; - - // YYR1[YYN] -- Symbol number of symbol that rule YYN derives. - static const unsigned short yyr1_[]; - - // YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. - static const unsigned char yyr2_[]; - - - /// Convert the symbol name \a n to a form suitable for a diagnostic. - static std::string yytnamerr_ (const char *n); - - - /// For a symbol, its name in clear. - static const char* const yytname_[]; -#if YYDEBUG - // YYRLINE[YYN] -- Source line where rule number YYN was defined. - static const unsigned short yyrline_[]; - /// Report on the debug stream that the rule \a r is going to be reduced. - virtual void yy_reduce_print_ (int r); - /// Print the state stack on the debug stream. - virtual void yystack_print_ (); - - // Debugging. - int yydebug_; - std::ostream* yycdebug_; - - /// \brief Display a symbol type, value and location. - /// \param yyo The output stream. - /// \param yysym The symbol. - template - void yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const; -#endif - - /// \brief Reclaim the memory associated to a symbol. - /// \param yymsg Why this token is reclaimed. - /// If null, print nothing. - /// \param yysym The symbol. - template - void yy_destroy_ (const char* yymsg, basic_symbol& yysym) const; - - private: - /// Type access provider for state based symbols. - struct by_state - { - /// Default constructor. - by_state (); - - /// The symbol type as needed by the constructor. - typedef state_type kind_type; - - /// Constructor. - by_state (kind_type s); - - /// Copy constructor. - by_state (const by_state& other); - - /// Record that this symbol is empty. - void clear (); - - /// Steal the symbol type from \a that. - void move (by_state& that); - - /// The (internal) type number (corresponding to \a state). - /// \a empty_symbol when empty. - symbol_number_type type_get () const; - - /// The state number used to denote an empty symbol. - enum { empty_state = -1 }; - - /// The state. - /// \a empty when empty. - state_type state; - }; - - /// "Internal" symbol: element of the stack. - struct stack_symbol_type : basic_symbol - { - /// Superclass. - typedef basic_symbol super_type; - /// Construct an empty symbol. - stack_symbol_type (); - /// Move or copy construction. - stack_symbol_type (YY_RVREF (stack_symbol_type) that); - /// Steal the contents from \a sym to build this. - stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym); -#if defined __cplusplus && __cplusplus < 201103L - /// Assignment, needed by push_back by some old implementations. - /// Moves the contents of that. - stack_symbol_type& operator= (stack_symbol_type& that); -#endif - }; - - /// Stack type. - typedef stack stack_type; - - /// The stack. - stack_type yystack_; - - /// Push a new state on the stack. - /// \param m a debug message to display - /// if null, no trace is output. - /// \param sym the symbol - /// \warning the contents of \a s.value is stolen. - void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym); - - /// Push a new look ahead token on the state on the stack. - /// \param m a debug message to display - /// if null, no trace is output. - /// \param s the state - /// \param sym the symbol (for its value and location). - /// \warning the contents of \a sym.value is stolen. - void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); - - /// Pop \a n symbols from the stack. - void yypop_ (int n = 1); - - /// Constants. - enum - { - yyeof_ = 0, - yylast_ = 3295, ///< Last index in yytable_. - yynnts_ = 16, ///< Number of nonterminal symbols. - yyfinal_ = 336, ///< Termination state number. - yyterror_ = 1, - yyerrcode_ = 256, - yyntokens_ = 340 ///< Number of tokens. - }; - - - // User arguments. - modsecurity::Parser::Driver& driver; - }; - - // Symbol number corresponding to token number t. - inline - seclang_parser::token_number_type - seclang_parser::yytranslate_ (token_type t) - { - static - const token_number_type - translate_table[] = - { - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339 - }; - const unsigned user_token_number_max_ = 594; - const token_number_type undef_token_ = 2; - - if (static_cast (t) <= yyeof_) - return yyeof_; - else if (static_cast (t) <= user_token_number_max_) - return translate_table[t]; - else - return undef_token_; - } - - inline - seclang_parser::syntax_error::syntax_error (const location_type& l, const std::string& m) - : std::runtime_error (m) - , location (l) - {} - - // basic_symbol. - template - seclang_parser::basic_symbol::basic_symbol () - : value () - , location () - {} - - template - seclang_parser::basic_symbol::basic_symbol (YY_RVREF (basic_symbol) other) - : Base (YY_MOVE (other)) - , value () - , location (YY_MOVE (other.location)) - { - switch (other.type_get ()) - { - case 144: // "Accuracy" - case 145: // "Allow" - case 146: // "Append" - case 147: // "AuditLog" - case 148: // "Block" - case 149: // "Capture" - case 150: // "Chain" - case 151: // "ACTION_CTL_AUDIT_ENGINE" - case 152: // "ACTION_CTL_AUDIT_LOG_PARTS" - case 153: // "ACTION_CTL_BDY_JSON" - case 154: // "ACTION_CTL_BDY_XML" - case 155: // "ACTION_CTL_BDY_URLENCODED" - case 156: // "ACTION_CTL_FORCE_REQ_BODY_VAR" - case 157: // "ACTION_CTL_REQUEST_BODY_ACCESS" - case 158: // "ACTION_CTL_RULE_REMOVE_BY_ID" - case 159: // "ACTION_CTL_RULE_REMOVE_BY_TAG" - case 160: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_ID" - case 161: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG" - case 162: // "Deny" - case 163: // "DeprecateVar" - case 164: // "Drop" - case 165: // "Exec" - case 166: // "ExpireVar" - case 167: // "Id" - case 168: // "InitCol" - case 169: // "Log" - case 170: // "LogData" - case 171: // "Maturity" - case 172: // "Msg" - case 173: // "MultiMatch" - case 174: // "NoAuditLog" - case 175: // "NoLog" - case 176: // "Pass" - case 177: // "Pause" - case 178: // "Phase" - case 179: // "Prepend" - case 180: // "Proxy" - case 181: // "Redirect" - case 182: // "Rev" - case 183: // "SanitiseArg" - case 184: // "SanitiseMatched" - case 185: // "SanitiseMatchedBytes" - case 186: // "SanitiseRequestHeader" - case 187: // "SanitiseResponseHeader" - case 188: // "SetEnv" - case 189: // "SetRsc" - case 190: // "SetSid" - case 191: // "SetUID" - case 192: // "Severity" - case 193: // "Skip" - case 194: // "SkipAfter" - case 195: // "Status" - case 196: // "Tag" - case 197: // "ACTION_TRANSFORMATION_BASE_64_ENCODE" - case 198: // "ACTION_TRANSFORMATION_BASE_64_DECODE" - case 199: // "ACTION_TRANSFORMATION_BASE_64_DECODE_EXT" - case 200: // "ACTION_TRANSFORMATION_CMD_LINE" - case 201: // "ACTION_TRANSFORMATION_COMPRESS_WHITESPACE" - case 202: // "ACTION_TRANSFORMATION_CSS_DECODE" - case 203: // "ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE" - case 204: // "ACTION_TRANSFORMATION_HEX_ENCODE" - case 205: // "ACTION_TRANSFORMATION_HEX_DECODE" - case 206: // "ACTION_TRANSFORMATION_HTML_ENTITY_DECODE" - case 207: // "ACTION_TRANSFORMATION_JS_DECODE" - case 208: // "ACTION_TRANSFORMATION_LENGTH" - case 209: // "ACTION_TRANSFORMATION_LOWERCASE" - case 210: // "ACTION_TRANSFORMATION_MD5" - case 211: // "ACTION_TRANSFORMATION_NONE" - case 212: // "ACTION_TRANSFORMATION_NORMALISE_PATH" - case 213: // "ACTION_TRANSFORMATION_NORMALISE_PATH_WIN" - case 214: // "ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT" - case 215: // "ACTION_TRANSFORMATION_PARITY_ODD_7_BIT" - case 216: // "ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT" - case 217: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS" - case 218: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR" - case 219: // "ACTION_TRANSFORMATION_REMOVE_NULLS" - case 220: // "ACTION_TRANSFORMATION_REMOVE_WHITESPACE" - case 221: // "ACTION_TRANSFORMATION_REPLACE_COMMENTS" - case 222: // "ACTION_TRANSFORMATION_REPLACE_NULLS" - case 223: // "ACTION_TRANSFORMATION_SHA1" - case 224: // "ACTION_TRANSFORMATION_SQL_HEX_DECODE" - case 225: // "ACTION_TRANSFORMATION_TRIM" - case 226: // "ACTION_TRANSFORMATION_TRIM_LEFT" - case 227: // "ACTION_TRANSFORMATION_TRIM_RIGHT" - case 228: // "ACTION_TRANSFORMATION_UPPERCASE" - case 229: // "ACTION_TRANSFORMATION_URL_ENCODE" - case 230: // "ACTION_TRANSFORMATION_URL_DECODE" - case 231: // "ACTION_TRANSFORMATION_URL_DECODE_UNI" - case 232: // "ACTION_TRANSFORMATION_UTF8_TO_UNICODE" - case 233: // "Ver" - case 234: // "xmlns" - case 235: // "CONFIG_COMPONENT_SIG" - case 236: // "CONFIG_CONN_ENGINE" - case 237: // "CONFIG_SEC_ARGUMENT_SEPARATOR" - case 238: // "CONFIG_SEC_WEB_APP_ID" - case 239: // "CONFIG_SEC_SERVER_SIG" - case 240: // "CONFIG_DIR_AUDIT_DIR" - case 241: // "CONFIG_DIR_AUDIT_DIR_MOD" - case 242: // "CONFIG_DIR_AUDIT_ENG" - case 243: // "CONFIG_DIR_AUDIT_FLE_MOD" - case 244: // "CONFIG_DIR_AUDIT_LOG" - case 245: // "CONFIG_DIR_AUDIT_LOG2" - case 246: // "CONFIG_DIR_AUDIT_LOG_P" - case 247: // "CONFIG_DIR_AUDIT_STS" - case 248: // "CONFIG_DIR_AUDIT_TPE" - case 249: // "CONFIG_DIR_DEBUG_LOG" - case 250: // "CONFIG_DIR_DEBUG_LVL" - case 251: // "CONFIG_SEC_CACHE_TRANSFORMATIONS" - case 252: // "CONFIG_SEC_DISABLE_BACKEND_COMPRESS" - case 253: // "CONFIG_SEC_HASH_ENGINE" - case 254: // "CONFIG_SEC_HASH_KEY" - case 255: // "CONFIG_SEC_HASH_PARAM" - case 256: // "CONFIG_SEC_HASH_METHOD_RX" - case 257: // "CONFIG_SEC_HASH_METHOD_PM" - case 258: // "CONFIG_SEC_CHROOT_DIR" - case 259: // "CONFIG_DIR_GEO_DB" - case 260: // "CONFIG_DIR_GSB_DB" - case 261: // "CONFIG_SEC_GUARDIAN_LOG" - case 262: // "CONFIG_DIR_PCRE_MATCH_LIMIT" - case 263: // "CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION" - case 264: // "CONFIG_SEC_CONN_R_STATE_LIMIT" - case 265: // "CONFIG_SEC_CONN_W_STATE_LIMIT" - case 266: // "CONFIG_SEC_SENSOR_ID" - case 267: // "CONFIG_DIR_REQ_BODY" - case 268: // "CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT" - case 269: // "CONFIG_DIR_REQ_BODY_LIMIT" - case 270: // "CONFIG_DIR_REQ_BODY_LIMIT_ACTION" - case 271: // "CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT" - case 272: // "CONFIG_DIR_RES_BODY" - case 273: // "CONFIG_DIR_RES_BODY_LIMIT" - case 274: // "CONFIG_DIR_RES_BODY_LIMIT_ACTION" - case 275: // "CONFIG_SEC_RULE_INHERITANCE" - case 276: // "CONFIG_SEC_RULE_PERF_TIME" - case 277: // "CONFIG_DIR_RULE_ENG" - case 278: // "CONFIG_DIR_SEC_ACTION" - case 279: // "CONFIG_DIR_SEC_DEFAULT_ACTION" - case 280: // "CONFIG_DIR_SEC_MARKER" - case 281: // "CONFIG_DIR_UNICODE_MAP_FILE" - case 282: // "CONFIG_DIR_UNICODE_CODE_PAGE" - case 283: // "CONFIG_SEC_COLLECTION_TIMEOUT" - case 284: // "CONFIG_SEC_HTTP_BLKEY" - case 285: // "CONFIG_SEC_INTERCEPT_ON_ERROR" - case 286: // "CONFIG_SEC_REMOTE_RULES_FAIL_ACTION" - case 287: // "CONFIG_SEC_RULE_REMOVE_BY_ID" - case 288: // "CONFIG_SEC_RULE_REMOVE_BY_MSG" - case 289: // "CONFIG_SEC_RULE_REMOVE_BY_TAG" - case 290: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG" - case 291: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG" - case 292: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID" - case 293: // "CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID" - case 294: // "CONFIG_UPDLOAD_KEEP_FILES" - case 295: // "CONFIG_UPDLOAD_SAVE_TMP_FILES" - case 296: // "CONFIG_UPLOAD_DIR" - case 297: // "CONFIG_UPLOAD_FILE_LIMIT" - case 298: // "CONFIG_UPLOAD_FILE_MODE" - case 299: // "CONFIG_VALUE_ABORT" - case 300: // "CONFIG_VALUE_DETC" - case 301: // "CONFIG_VALUE_HTTPS" - case 302: // "CONFIG_VALUE_OFF" - case 303: // "CONFIG_VALUE_ON" - case 304: // "CONFIG_VALUE_PARALLEL" - case 305: // "CONFIG_VALUE_PROCESS_PARTIAL" - case 306: // "CONFIG_VALUE_REJECT" - case 307: // "CONFIG_VALUE_RELEVANT_ONLY" - case 308: // "CONFIG_VALUE_SERIAL" - case 309: // "CONFIG_VALUE_WARN" - case 310: // "CONFIG_XML_EXTERNAL_ENTITY" - case 311: // "CONGIG_DIR_RESPONSE_BODY_MP" - case 312: // "CONGIG_DIR_SEC_ARG_SEP" - case 313: // "CONGIG_DIR_SEC_COOKIE_FORMAT" - case 314: // "CONFIG_SEC_COOKIEV0_SEPARATOR" - case 315: // "CONGIG_DIR_SEC_DATA_DIR" - case 316: // "CONGIG_DIR_SEC_STATUS_ENGINE" - case 317: // "CONFIG_SEC_STREAM_IN_BODY_INSPECTION" - case 318: // "CONFIG_SEC_STREAM_OUT_BODY_INSPECTION" - case 319: // "CONGIG_DIR_SEC_TMP_DIR" - case 320: // "DIRECTIVE" - case 321: // "DIRECTIVE_SECRULESCRIPT" - case 322: // "FREE_TEXT_QUOTE_MACRO_EXPANSION" - case 323: // "QUOTATION_MARK" - case 324: // "RUN_TIME_VAR_BLD" - case 325: // "RUN_TIME_VAR_DUR" - case 326: // "RUN_TIME_VAR_HSV" - case 327: // "RUN_TIME_VAR_REMOTE_USER" - case 328: // "RUN_TIME_VAR_TIME" - case 329: // "RUN_TIME_VAR_TIME_DAY" - case 330: // "RUN_TIME_VAR_TIME_EPOCH" - case 331: // "RUN_TIME_VAR_TIME_HOUR" - case 332: // "RUN_TIME_VAR_TIME_MIN" - case 333: // "RUN_TIME_VAR_TIME_MON" - case 334: // "RUN_TIME_VAR_TIME_SEC" - case 335: // "RUN_TIME_VAR_TIME_WDAY" - case 336: // "RUN_TIME_VAR_TIME_YEAR" - case 337: // "VARIABLE" - case 338: // "Dictionary element" - case 339: // "Dictionary element, selected by regexp" - value.YY_MOVE_OR_COPY< std::string > (YY_MOVE (other.value)); - break; - - case 346: // op - case 347: // op_before_init - value.YY_MOVE_OR_COPY< std::unique_ptr > (YY_MOVE (other.value)); - break; - - case 355: // run_time_string - value.YY_MOVE_OR_COPY< std::unique_ptr > (YY_MOVE (other.value)); - break; - - case 352: // var - value.YY_MOVE_OR_COPY< std::unique_ptr > (YY_MOVE (other.value)); - break; - - case 353: // act - case 354: // setvar_action - value.YY_MOVE_OR_COPY< std::unique_ptr > (YY_MOVE (other.value)); - break; - - case 349: // variables - case 350: // variables_pre_process - case 351: // variables_may_be_quoted - value.YY_MOVE_OR_COPY< std::unique_ptr > > > (YY_MOVE (other.value)); - break; - - case 344: // actions - case 345: // actions_may_quoted - value.YY_MOVE_OR_COPY< std::unique_ptr > > > (YY_MOVE (other.value)); - break; - - default: - break; - } - - } - - - // Implementation of basic_symbol constructor for each type. - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l) - : Base (t) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr > > ) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - template - seclang_parser::basic_symbol::basic_symbol (typename Base::kind_type t, YY_RVREF (std::unique_ptr > > ) v, YY_RVREF (location_type) l) - : Base (t) - , value (YY_MOVE (v)) - , location (YY_MOVE (l)) - {} - - - - template - seclang_parser::basic_symbol::~basic_symbol () - { - clear (); - } - - template - void - seclang_parser::basic_symbol::clear () - { - // User destructor. - symbol_number_type yytype = this->type_get (); - basic_symbol& yysym = *this; - (void) yysym; - switch (yytype) - { - default: - break; - } - - // Type destructor. - switch (yytype) + void clear () + { + // User destructor. + symbol_number_type yytype = this->type_get (); + basic_symbol& yysym = *this; + (void) yysym; + switch (yytype) + { + default: + break; + } + + // Type destructor. +switch (yytype) { case 144: // "Accuracy" case 145: // "Allow" @@ -3694,12 +1670,6103 @@ namespace yy { break; } - Base::clear (); + Base::clear (); + } + + /// Whether empty. + bool empty () const YY_NOEXCEPT; + + /// Destructive move, \a s is emptied into this. + void move (basic_symbol& s); + + /// The semantic value. + semantic_type value; + + /// The location. + location_type location; + + private: +#if YY_CPLUSPLUS < 201103L + /// Assignment operator. + basic_symbol& operator= (const basic_symbol& that); +#endif + }; + + /// Type access provider for token (enum) based symbols. + struct by_type + { + /// Default constructor. + by_type (); + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + by_type (by_type&& that); +#endif + + /// Copy constructor. + by_type (const by_type& that); + + /// The symbol type as needed by the constructor. + typedef token_type kind_type; + + /// Constructor from (external) token numbers. + by_type (kind_type t); + + /// Record that this symbol is empty. + void clear (); + + /// Steal the symbol type from \a that. + void move (by_type& that); + + /// The (internal) type number (corresponding to \a type). + /// \a empty when empty. + symbol_number_type type_get () const YY_NOEXCEPT; + + /// The token. + token_type token () const YY_NOEXCEPT; + + /// The symbol type. + /// \a empty_symbol when empty. + /// An int, not token_number_type, to be able to store empty_symbol. + int type; + }; + + /// "External" symbols: returned by the scanner. + struct symbol_type : basic_symbol + { + /// Superclass. + typedef basic_symbol super_type; + + /// Empty symbol. + symbol_type () {} + + /// Constructor for valueless symbols, and symbols from each type. +#if 201103L <= YY_CPLUSPLUS + symbol_type (int tok, location_type l) + : super_type(token_type (tok), std::move (l)) + { + YYASSERT (tok == token::TOK_END || tok == token::TOK_COMMA || tok == token::TOK_CONFIG_CONTENT_INJECTION || tok == token::TOK_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR || tok == token::TOK_PIPE || tok == token::TOK_NEW_LINE || tok == token::TOK_VAR_COUNT || tok == token::TOK_VAR_EXCLUSION || tok == token::TOK_VARIABLE_ARGS || tok == token::TOK_VARIABLE_ARGS_POST || tok == token::TOK_VARIABLE_ARGS_GET || tok == token::TOK_VARIABLE_FILES_SIZES || tok == token::TOK_VARIABLE_FILES_NAMES || tok == token::TOK_VARIABLE_FILES_TMP_CONTENT || tok == token::TOK_VARIABLE_MULTIPART_FILENAME || tok == token::TOK_VARIABLE_MULTIPART_NAME || tok == token::TOK_VARIABLE_MATCHED_VARS_NAMES || tok == token::TOK_VARIABLE_MATCHED_VARS || tok == token::TOK_VARIABLE_FILES || tok == token::TOK_VARIABLE_REQUEST_COOKIES || tok == token::TOK_VARIABLE_REQUEST_HEADERS || tok == token::TOK_VARIABLE_RESPONSE_HEADERS || tok == token::TOK_VARIABLE_GEO || tok == token::TOK_VARIABLE_REQUEST_COOKIES_NAMES || tok == token::TOK_VARIABLE_ARGS_COMBINED_SIZE || tok == token::TOK_VARIABLE_ARGS_GET_NAMES || tok == token::TOK_VARIABLE_RULE || tok == token::TOK_VARIABLE_ARGS_NAMES || tok == token::TOK_VARIABLE_ARGS_POST_NAMES || tok == token::TOK_VARIABLE_AUTH_TYPE || tok == token::TOK_VARIABLE_FILES_COMBINED_SIZE || tok == token::TOK_VARIABLE_FILES_TMP_NAMES || tok == token::TOK_VARIABLE_FULL_REQUEST || tok == token::TOK_VARIABLE_FULL_REQUEST_LENGTH || tok == token::TOK_VARIABLE_INBOUND_DATA_ERROR || tok == token::TOK_VARIABLE_MATCHED_VAR || tok == token::TOK_VARIABLE_MATCHED_VAR_NAME || tok == token::TOK_VARIABLE_MULTIPART_BOUNDARY_QUOTED || tok == token::TOK_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE || tok == token::TOK_VARIABLE_MULTIPART_CRLF_LF_LINES || tok == token::TOK_VARIABLE_MULTIPART_DATA_AFTER || tok == token::TOK_VARIABLE_MULTIPART_DATA_BEFORE || tok == token::TOK_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED || tok == token::TOK_VARIABLE_MULTIPART_HEADER_FOLDING || tok == token::TOK_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING || tok == token::TOK_VARIABLE_MULTIPART_INVALID_PART || tok == token::TOK_VARIABLE_MULTIPART_INVALID_QUOTING || tok == token::TOK_VARIABLE_MULTIPART_LF_LINE || tok == token::TOK_VARIABLE_MULTIPART_MISSING_SEMICOLON || tok == token::TOK_VARIABLE_MULTIPART_SEMICOLON_MISSING || tok == token::TOK_VARIABLE_MULTIPART_STRICT_ERROR || tok == token::TOK_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY || tok == token::TOK_VARIABLE_OUTBOUND_DATA_ERROR || tok == token::TOK_VARIABLE_PATH_INFO || tok == token::TOK_VARIABLE_QUERY_STRING || tok == token::TOK_VARIABLE_REMOTE_ADDR || tok == token::TOK_VARIABLE_REMOTE_HOST || tok == token::TOK_VARIABLE_REMOTE_PORT || tok == token::TOK_VARIABLE_REQBODY_ERROR_MSG || tok == token::TOK_VARIABLE_REQBODY_ERROR || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR || tok == token::TOK_VARIABLE_REQUEST_BASENAME || tok == token::TOK_VARIABLE_REQUEST_BODY_LENGTH || tok == token::TOK_VARIABLE_REQUEST_BODY || tok == token::TOK_VARIABLE_REQUEST_FILE_NAME || tok == token::TOK_VARIABLE_REQUEST_HEADERS_NAMES || tok == token::TOK_VARIABLE_REQUEST_LINE || tok == token::TOK_VARIABLE_REQUEST_METHOD || tok == token::TOK_VARIABLE_REQUEST_PROTOCOL || tok == token::TOK_VARIABLE_REQUEST_URI_RAW || tok == token::TOK_VARIABLE_REQUEST_URI || tok == token::TOK_VARIABLE_RESOURCE || tok == token::TOK_VARIABLE_RESPONSE_BODY || tok == token::TOK_VARIABLE_RESPONSE_CONTENT_LENGTH || tok == token::TOK_VARIABLE_RESPONSE_CONTENT_TYPE || tok == token::TOK_VARIABLE_RESPONSE_HEADERS_NAMES || tok == token::TOK_VARIABLE_RESPONSE_PROTOCOL || tok == token::TOK_VARIABLE_RESPONSE_STATUS || tok == token::TOK_VARIABLE_SERVER_ADDR || tok == token::TOK_VARIABLE_SERVER_NAME || tok == token::TOK_VARIABLE_SERVER_PORT || tok == token::TOK_VARIABLE_SESSION_ID || tok == token::TOK_VARIABLE_UNIQUE_ID || tok == token::TOK_VARIABLE_URL_ENCODED_ERROR || tok == token::TOK_VARIABLE_USER_ID || tok == token::TOK_VARIABLE_WEB_APP_ID || tok == token::TOK_VARIABLE_STATUS || tok == token::TOK_VARIABLE_STATUS_LINE || tok == token::TOK_VARIABLE_IP || tok == token::TOK_VARIABLE_GLOBAL || tok == token::TOK_VARIABLE_TX || tok == token::TOK_VARIABLE_SESSION || tok == token::TOK_VARIABLE_USER || tok == token::TOK_RUN_TIME_VAR_ENV || tok == token::TOK_RUN_TIME_VAR_XML || tok == token::TOK_ACTION_SETVAR || tok == token::TOK_SETVAR_OPERATION_EQUALS || tok == token::TOK_SETVAR_OPERATION_EQUALS_PLUS || tok == token::TOK_SETVAR_OPERATION_EQUALS_MINUS || tok == token::TOK_NOT || tok == token::TOK_OPERATOR_BEGINS_WITH || tok == token::TOK_OPERATOR_CONTAINS || tok == token::TOK_OPERATOR_CONTAINS_WORD || tok == token::TOK_OPERATOR_DETECT_SQLI || tok == token::TOK_OPERATOR_DETECT_XSS || tok == token::TOK_OPERATOR_ENDS_WITH || tok == token::TOK_OPERATOR_EQ || tok == token::TOK_OPERATOR_FUZZY_HASH || tok == token::TOK_OPERATOR_GEOLOOKUP || tok == token::TOK_OPERATOR_GE || tok == token::TOK_OPERATOR_GSB_LOOKUP || tok == token::TOK_OPERATOR_GT || tok == token::TOK_OPERATOR_INSPECT_FILE || tok == token::TOK_OPERATOR_IP_MATCH_FROM_FILE || tok == token::TOK_OPERATOR_IP_MATCH || tok == token::TOK_OPERATOR_LE || tok == token::TOK_OPERATOR_LT || tok == token::TOK_OPERATOR_PM_FROM_FILE || tok == token::TOK_OPERATOR_PM || tok == token::TOK_OPERATOR_RBL || tok == token::TOK_OPERATOR_RSUB || tok == token::TOK_OPERATOR_RX_CONTENT_ONLY || tok == token::TOK_OPERATOR_RX || tok == token::TOK_OPERATOR_STR_EQ || tok == token::TOK_OPERATOR_STR_MATCH || tok == token::TOK_OPERATOR_UNCONDITIONAL_MATCH || tok == token::TOK_OPERATOR_VALIDATE_BYTE_RANGE || tok == token::TOK_OPERATOR_VALIDATE_DTD || tok == token::TOK_OPERATOR_VALIDATE_HASH || tok == token::TOK_OPERATOR_VALIDATE_SCHEMA || tok == token::TOK_OPERATOR_VALIDATE_URL_ENCODING || tok == token::TOK_OPERATOR_VALIDATE_UTF8_ENCODING || tok == token::TOK_OPERATOR_VERIFY_CC || tok == token::TOK_OPERATOR_VERIFY_CPF || tok == token::TOK_OPERATOR_VERIFY_SSN || tok == token::TOK_OPERATOR_WITHIN || tok == token::TOK_CONFIG_DIR_AUDIT_LOG_FMT || tok == token::TOK_JSON || tok == token::TOK_NATIVE || tok == token::TOK_ACTION_CTL_RULE_ENGINE); + } +#else + symbol_type (int tok, const location_type& l) + : super_type(token_type (tok), l) + { + YYASSERT (tok == token::TOK_END || tok == token::TOK_COMMA || tok == token::TOK_CONFIG_CONTENT_INJECTION || tok == token::TOK_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR || tok == token::TOK_PIPE || tok == token::TOK_NEW_LINE || tok == token::TOK_VAR_COUNT || tok == token::TOK_VAR_EXCLUSION || tok == token::TOK_VARIABLE_ARGS || tok == token::TOK_VARIABLE_ARGS_POST || tok == token::TOK_VARIABLE_ARGS_GET || tok == token::TOK_VARIABLE_FILES_SIZES || tok == token::TOK_VARIABLE_FILES_NAMES || tok == token::TOK_VARIABLE_FILES_TMP_CONTENT || tok == token::TOK_VARIABLE_MULTIPART_FILENAME || tok == token::TOK_VARIABLE_MULTIPART_NAME || tok == token::TOK_VARIABLE_MATCHED_VARS_NAMES || tok == token::TOK_VARIABLE_MATCHED_VARS || tok == token::TOK_VARIABLE_FILES || tok == token::TOK_VARIABLE_REQUEST_COOKIES || tok == token::TOK_VARIABLE_REQUEST_HEADERS || tok == token::TOK_VARIABLE_RESPONSE_HEADERS || tok == token::TOK_VARIABLE_GEO || tok == token::TOK_VARIABLE_REQUEST_COOKIES_NAMES || tok == token::TOK_VARIABLE_ARGS_COMBINED_SIZE || tok == token::TOK_VARIABLE_ARGS_GET_NAMES || tok == token::TOK_VARIABLE_RULE || tok == token::TOK_VARIABLE_ARGS_NAMES || tok == token::TOK_VARIABLE_ARGS_POST_NAMES || tok == token::TOK_VARIABLE_AUTH_TYPE || tok == token::TOK_VARIABLE_FILES_COMBINED_SIZE || tok == token::TOK_VARIABLE_FILES_TMP_NAMES || tok == token::TOK_VARIABLE_FULL_REQUEST || tok == token::TOK_VARIABLE_FULL_REQUEST_LENGTH || tok == token::TOK_VARIABLE_INBOUND_DATA_ERROR || tok == token::TOK_VARIABLE_MATCHED_VAR || tok == token::TOK_VARIABLE_MATCHED_VAR_NAME || tok == token::TOK_VARIABLE_MULTIPART_BOUNDARY_QUOTED || tok == token::TOK_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE || tok == token::TOK_VARIABLE_MULTIPART_CRLF_LF_LINES || tok == token::TOK_VARIABLE_MULTIPART_DATA_AFTER || tok == token::TOK_VARIABLE_MULTIPART_DATA_BEFORE || tok == token::TOK_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED || tok == token::TOK_VARIABLE_MULTIPART_HEADER_FOLDING || tok == token::TOK_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING || tok == token::TOK_VARIABLE_MULTIPART_INVALID_PART || tok == token::TOK_VARIABLE_MULTIPART_INVALID_QUOTING || tok == token::TOK_VARIABLE_MULTIPART_LF_LINE || tok == token::TOK_VARIABLE_MULTIPART_MISSING_SEMICOLON || tok == token::TOK_VARIABLE_MULTIPART_SEMICOLON_MISSING || tok == token::TOK_VARIABLE_MULTIPART_STRICT_ERROR || tok == token::TOK_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY || tok == token::TOK_VARIABLE_OUTBOUND_DATA_ERROR || tok == token::TOK_VARIABLE_PATH_INFO || tok == token::TOK_VARIABLE_QUERY_STRING || tok == token::TOK_VARIABLE_REMOTE_ADDR || tok == token::TOK_VARIABLE_REMOTE_HOST || tok == token::TOK_VARIABLE_REMOTE_PORT || tok == token::TOK_VARIABLE_REQBODY_ERROR_MSG || tok == token::TOK_VARIABLE_REQBODY_ERROR || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR || tok == token::TOK_VARIABLE_REQBODY_PROCESSOR || tok == token::TOK_VARIABLE_REQUEST_BASENAME || tok == token::TOK_VARIABLE_REQUEST_BODY_LENGTH || tok == token::TOK_VARIABLE_REQUEST_BODY || tok == token::TOK_VARIABLE_REQUEST_FILE_NAME || tok == token::TOK_VARIABLE_REQUEST_HEADERS_NAMES || tok == token::TOK_VARIABLE_REQUEST_LINE || tok == token::TOK_VARIABLE_REQUEST_METHOD || tok == token::TOK_VARIABLE_REQUEST_PROTOCOL || tok == token::TOK_VARIABLE_REQUEST_URI_RAW || tok == token::TOK_VARIABLE_REQUEST_URI || tok == token::TOK_VARIABLE_RESOURCE || tok == token::TOK_VARIABLE_RESPONSE_BODY || tok == token::TOK_VARIABLE_RESPONSE_CONTENT_LENGTH || tok == token::TOK_VARIABLE_RESPONSE_CONTENT_TYPE || tok == token::TOK_VARIABLE_RESPONSE_HEADERS_NAMES || tok == token::TOK_VARIABLE_RESPONSE_PROTOCOL || tok == token::TOK_VARIABLE_RESPONSE_STATUS || tok == token::TOK_VARIABLE_SERVER_ADDR || tok == token::TOK_VARIABLE_SERVER_NAME || tok == token::TOK_VARIABLE_SERVER_PORT || tok == token::TOK_VARIABLE_SESSION_ID || tok == token::TOK_VARIABLE_UNIQUE_ID || tok == token::TOK_VARIABLE_URL_ENCODED_ERROR || tok == token::TOK_VARIABLE_USER_ID || tok == token::TOK_VARIABLE_WEB_APP_ID || tok == token::TOK_VARIABLE_STATUS || tok == token::TOK_VARIABLE_STATUS_LINE || tok == token::TOK_VARIABLE_IP || tok == token::TOK_VARIABLE_GLOBAL || tok == token::TOK_VARIABLE_TX || tok == token::TOK_VARIABLE_SESSION || tok == token::TOK_VARIABLE_USER || tok == token::TOK_RUN_TIME_VAR_ENV || tok == token::TOK_RUN_TIME_VAR_XML || tok == token::TOK_ACTION_SETVAR || tok == token::TOK_SETVAR_OPERATION_EQUALS || tok == token::TOK_SETVAR_OPERATION_EQUALS_PLUS || tok == token::TOK_SETVAR_OPERATION_EQUALS_MINUS || tok == token::TOK_NOT || tok == token::TOK_OPERATOR_BEGINS_WITH || tok == token::TOK_OPERATOR_CONTAINS || tok == token::TOK_OPERATOR_CONTAINS_WORD || tok == token::TOK_OPERATOR_DETECT_SQLI || tok == token::TOK_OPERATOR_DETECT_XSS || tok == token::TOK_OPERATOR_ENDS_WITH || tok == token::TOK_OPERATOR_EQ || tok == token::TOK_OPERATOR_FUZZY_HASH || tok == token::TOK_OPERATOR_GEOLOOKUP || tok == token::TOK_OPERATOR_GE || tok == token::TOK_OPERATOR_GSB_LOOKUP || tok == token::TOK_OPERATOR_GT || tok == token::TOK_OPERATOR_INSPECT_FILE || tok == token::TOK_OPERATOR_IP_MATCH_FROM_FILE || tok == token::TOK_OPERATOR_IP_MATCH || tok == token::TOK_OPERATOR_LE || tok == token::TOK_OPERATOR_LT || tok == token::TOK_OPERATOR_PM_FROM_FILE || tok == token::TOK_OPERATOR_PM || tok == token::TOK_OPERATOR_RBL || tok == token::TOK_OPERATOR_RSUB || tok == token::TOK_OPERATOR_RX_CONTENT_ONLY || tok == token::TOK_OPERATOR_RX || tok == token::TOK_OPERATOR_STR_EQ || tok == token::TOK_OPERATOR_STR_MATCH || tok == token::TOK_OPERATOR_UNCONDITIONAL_MATCH || tok == token::TOK_OPERATOR_VALIDATE_BYTE_RANGE || tok == token::TOK_OPERATOR_VALIDATE_DTD || tok == token::TOK_OPERATOR_VALIDATE_HASH || tok == token::TOK_OPERATOR_VALIDATE_SCHEMA || tok == token::TOK_OPERATOR_VALIDATE_URL_ENCODING || tok == token::TOK_OPERATOR_VALIDATE_UTF8_ENCODING || tok == token::TOK_OPERATOR_VERIFY_CC || tok == token::TOK_OPERATOR_VERIFY_CPF || tok == token::TOK_OPERATOR_VERIFY_SSN || tok == token::TOK_OPERATOR_WITHIN || tok == token::TOK_CONFIG_DIR_AUDIT_LOG_FMT || tok == token::TOK_JSON || tok == token::TOK_NATIVE || tok == token::TOK_ACTION_CTL_RULE_ENGINE); + } +#endif +#if 201103L <= YY_CPLUSPLUS + symbol_type (int tok, std::string v, location_type l) + : super_type(token_type (tok), std::move (v), std::move (l)) + { + YYASSERT (tok == token::TOK_ACTION_ACCURACY || tok == token::TOK_ACTION_ALLOW || tok == token::TOK_ACTION_APPEND || tok == token::TOK_ACTION_AUDIT_LOG || tok == token::TOK_ACTION_BLOCK || tok == token::TOK_ACTION_CAPTURE || tok == token::TOK_ACTION_CHAIN || tok == token::TOK_ACTION_CTL_AUDIT_ENGINE || tok == token::TOK_ACTION_CTL_AUDIT_LOG_PARTS || tok == token::TOK_ACTION_CTL_BDY_JSON || tok == token::TOK_ACTION_CTL_BDY_XML || tok == token::TOK_ACTION_CTL_BDY_URLENCODED || tok == token::TOK_ACTION_CTL_FORCE_REQ_BODY_VAR || tok == token::TOK_ACTION_CTL_REQUEST_BODY_ACCESS || tok == token::TOK_ACTION_CTL_RULE_REMOVE_BY_ID || tok == token::TOK_ACTION_CTL_RULE_REMOVE_BY_TAG || tok == token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID || tok == token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG || tok == token::TOK_ACTION_DENY || tok == token::TOK_ACTION_DEPRECATE_VAR || tok == token::TOK_ACTION_DROP || tok == token::TOK_ACTION_EXEC || tok == token::TOK_ACTION_EXPIRE_VAR || tok == token::TOK_ACTION_ID || tok == token::TOK_ACTION_INITCOL || tok == token::TOK_ACTION_LOG || tok == token::TOK_ACTION_LOG_DATA || tok == token::TOK_ACTION_MATURITY || tok == token::TOK_ACTION_MSG || tok == token::TOK_ACTION_MULTI_MATCH || tok == token::TOK_ACTION_NO_AUDIT_LOG || tok == token::TOK_ACTION_NO_LOG || tok == token::TOK_ACTION_PASS || tok == token::TOK_ACTION_PAUSE || tok == token::TOK_ACTION_PHASE || tok == token::TOK_ACTION_PREPEND || tok == token::TOK_ACTION_PROXY || tok == token::TOK_ACTION_REDIRECT || tok == token::TOK_ACTION_REV || tok == token::TOK_ACTION_SANITISE_ARG || tok == token::TOK_ACTION_SANITISE_MATCHED || tok == token::TOK_ACTION_SANITISE_MATCHED_BYTES || tok == token::TOK_ACTION_SANITISE_REQUEST_HEADER || tok == token::TOK_ACTION_SANITISE_RESPONSE_HEADER || tok == token::TOK_ACTION_SETENV || tok == token::TOK_ACTION_SETRSC || tok == token::TOK_ACTION_SETSID || tok == token::TOK_ACTION_SETUID || tok == token::TOK_ACTION_SEVERITY || tok == token::TOK_ACTION_SKIP || tok == token::TOK_ACTION_SKIP_AFTER || tok == token::TOK_ACTION_STATUS || tok == token::TOK_ACTION_TAG || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT || tok == token::TOK_ACTION_TRANSFORMATION_CMD_LINE || tok == token::TOK_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE || tok == token::TOK_ACTION_TRANSFORMATION_CSS_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_HEX_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_HEX_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_JS_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_LENGTH || tok == token::TOK_ACTION_TRANSFORMATION_LOWERCASE || tok == token::TOK_ACTION_TRANSFORMATION_MD5 || tok == token::TOK_ACTION_TRANSFORMATION_NONE || tok == token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH || tok == token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_NULLS || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_WHITESPACE || tok == token::TOK_ACTION_TRANSFORMATION_REPLACE_COMMENTS || tok == token::TOK_ACTION_TRANSFORMATION_REPLACE_NULLS || tok == token::TOK_ACTION_TRANSFORMATION_SHA1 || tok == token::TOK_ACTION_TRANSFORMATION_SQL_HEX_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_TRIM || tok == token::TOK_ACTION_TRANSFORMATION_TRIM_LEFT || tok == token::TOK_ACTION_TRANSFORMATION_TRIM_RIGHT || tok == token::TOK_ACTION_TRANSFORMATION_UPPERCASE || tok == token::TOK_ACTION_TRANSFORMATION_URL_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_URL_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_URL_DECODE_UNI || tok == token::TOK_ACTION_TRANSFORMATION_UTF8_TO_UNICODE || tok == token::TOK_ACTION_VER || tok == token::TOK_ACTION_XMLNS || tok == token::TOK_CONFIG_COMPONENT_SIG || tok == token::TOK_CONFIG_CONN_ENGINE || tok == token::TOK_CONFIG_SEC_ARGUMENT_SEPARATOR || tok == token::TOK_CONFIG_SEC_WEB_APP_ID || tok == token::TOK_CONFIG_SEC_SERVER_SIG || tok == token::TOK_CONFIG_DIR_AUDIT_DIR || tok == token::TOK_CONFIG_DIR_AUDIT_DIR_MOD || tok == token::TOK_CONFIG_DIR_AUDIT_ENG || tok == token::TOK_CONFIG_DIR_AUDIT_FLE_MOD || tok == token::TOK_CONFIG_DIR_AUDIT_LOG || tok == token::TOK_CONFIG_DIR_AUDIT_LOG2 || tok == token::TOK_CONFIG_DIR_AUDIT_LOG_P || tok == token::TOK_CONFIG_DIR_AUDIT_STS || tok == token::TOK_CONFIG_DIR_AUDIT_TPE || tok == token::TOK_CONFIG_DIR_DEBUG_LOG || tok == token::TOK_CONFIG_DIR_DEBUG_LVL || tok == token::TOK_CONFIG_SEC_CACHE_TRANSFORMATIONS || tok == token::TOK_CONFIG_SEC_DISABLE_BACKEND_COMPRESS || tok == token::TOK_CONFIG_SEC_HASH_ENGINE || tok == token::TOK_CONFIG_SEC_HASH_KEY || tok == token::TOK_CONFIG_SEC_HASH_PARAM || tok == token::TOK_CONFIG_SEC_HASH_METHOD_RX || tok == token::TOK_CONFIG_SEC_HASH_METHOD_PM || tok == token::TOK_CONFIG_SEC_CHROOT_DIR || tok == token::TOK_CONFIG_DIR_GEO_DB || tok == token::TOK_CONFIG_DIR_GSB_DB || tok == token::TOK_CONFIG_SEC_GUARDIAN_LOG || tok == token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT || tok == token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION || tok == token::TOK_CONFIG_SEC_CONN_R_STATE_LIMIT || tok == token::TOK_CONFIG_SEC_CONN_W_STATE_LIMIT || tok == token::TOK_CONFIG_SEC_SENSOR_ID || tok == token::TOK_CONFIG_DIR_REQ_BODY || tok == token::TOK_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT || tok == token::TOK_CONFIG_DIR_REQ_BODY_LIMIT || tok == token::TOK_CONFIG_DIR_REQ_BODY_LIMIT_ACTION || tok == token::TOK_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT || tok == token::TOK_CONFIG_DIR_RES_BODY || tok == token::TOK_CONFIG_DIR_RES_BODY_LIMIT || tok == token::TOK_CONFIG_DIR_RES_BODY_LIMIT_ACTION || tok == token::TOK_CONFIG_SEC_RULE_INHERITANCE || tok == token::TOK_CONFIG_SEC_RULE_PERF_TIME || tok == token::TOK_CONFIG_DIR_RULE_ENG || tok == token::TOK_CONFIG_DIR_SEC_ACTION || tok == token::TOK_CONFIG_DIR_SEC_DEFAULT_ACTION || tok == token::TOK_CONFIG_DIR_SEC_MARKER || tok == token::TOK_CONFIG_DIR_UNICODE_MAP_FILE || tok == token::TOK_CONFIG_DIR_UNICODE_CODE_PAGE || tok == token::TOK_CONFIG_SEC_COLLECTION_TIMEOUT || tok == token::TOK_CONFIG_SEC_HTTP_BLKEY || tok == token::TOK_CONFIG_SEC_INTERCEPT_ON_ERROR || tok == token::TOK_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_ID || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_MSG || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_TAG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID || tok == token::TOK_CONFIG_UPDLOAD_KEEP_FILES || tok == token::TOK_CONFIG_UPDLOAD_SAVE_TMP_FILES || tok == token::TOK_CONFIG_UPLOAD_DIR || tok == token::TOK_CONFIG_UPLOAD_FILE_LIMIT || tok == token::TOK_CONFIG_UPLOAD_FILE_MODE || tok == token::TOK_CONFIG_VALUE_ABORT || tok == token::TOK_CONFIG_VALUE_DETC || tok == token::TOK_CONFIG_VALUE_HTTPS || tok == token::TOK_CONFIG_VALUE_OFF || tok == token::TOK_CONFIG_VALUE_ON || tok == token::TOK_CONFIG_VALUE_PARALLEL || tok == token::TOK_CONFIG_VALUE_PROCESS_PARTIAL || tok == token::TOK_CONFIG_VALUE_REJECT || tok == token::TOK_CONFIG_VALUE_RELEVANT_ONLY || tok == token::TOK_CONFIG_VALUE_SERIAL || tok == token::TOK_CONFIG_VALUE_WARN || tok == token::TOK_CONFIG_XML_EXTERNAL_ENTITY || tok == token::TOK_CONGIG_DIR_RESPONSE_BODY_MP || tok == token::TOK_CONGIG_DIR_SEC_ARG_SEP || tok == token::TOK_CONGIG_DIR_SEC_COOKIE_FORMAT || tok == token::TOK_CONFIG_SEC_COOKIEV0_SEPARATOR || tok == token::TOK_CONGIG_DIR_SEC_DATA_DIR || tok == token::TOK_CONGIG_DIR_SEC_STATUS_ENGINE || tok == token::TOK_CONFIG_SEC_STREAM_IN_BODY_INSPECTION || tok == token::TOK_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION || tok == token::TOK_CONGIG_DIR_SEC_TMP_DIR || tok == token::TOK_DIRECTIVE || tok == token::TOK_DIRECTIVE_SECRULESCRIPT || tok == token::TOK_FREE_TEXT_QUOTE_MACRO_EXPANSION || tok == token::TOK_QUOTATION_MARK || tok == token::TOK_RUN_TIME_VAR_BLD || tok == token::TOK_RUN_TIME_VAR_DUR || tok == token::TOK_RUN_TIME_VAR_HSV || tok == token::TOK_RUN_TIME_VAR_REMOTE_USER || tok == token::TOK_RUN_TIME_VAR_TIME || tok == token::TOK_RUN_TIME_VAR_TIME_DAY || tok == token::TOK_RUN_TIME_VAR_TIME_EPOCH || tok == token::TOK_RUN_TIME_VAR_TIME_HOUR || tok == token::TOK_RUN_TIME_VAR_TIME_MIN || tok == token::TOK_RUN_TIME_VAR_TIME_MON || tok == token::TOK_RUN_TIME_VAR_TIME_SEC || tok == token::TOK_RUN_TIME_VAR_TIME_WDAY || tok == token::TOK_RUN_TIME_VAR_TIME_YEAR || tok == token::TOK_VARIABLE || tok == token::TOK_DICT_ELEMENT || tok == token::TOK_DICT_ELEMENT_REGEXP); + } +#else + symbol_type (int tok, const std::string& v, const location_type& l) + : super_type(token_type (tok), v, l) + { + YYASSERT (tok == token::TOK_ACTION_ACCURACY || tok == token::TOK_ACTION_ALLOW || tok == token::TOK_ACTION_APPEND || tok == token::TOK_ACTION_AUDIT_LOG || tok == token::TOK_ACTION_BLOCK || tok == token::TOK_ACTION_CAPTURE || tok == token::TOK_ACTION_CHAIN || tok == token::TOK_ACTION_CTL_AUDIT_ENGINE || tok == token::TOK_ACTION_CTL_AUDIT_LOG_PARTS || tok == token::TOK_ACTION_CTL_BDY_JSON || tok == token::TOK_ACTION_CTL_BDY_XML || tok == token::TOK_ACTION_CTL_BDY_URLENCODED || tok == token::TOK_ACTION_CTL_FORCE_REQ_BODY_VAR || tok == token::TOK_ACTION_CTL_REQUEST_BODY_ACCESS || tok == token::TOK_ACTION_CTL_RULE_REMOVE_BY_ID || tok == token::TOK_ACTION_CTL_RULE_REMOVE_BY_TAG || tok == token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID || tok == token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG || tok == token::TOK_ACTION_DENY || tok == token::TOK_ACTION_DEPRECATE_VAR || tok == token::TOK_ACTION_DROP || tok == token::TOK_ACTION_EXEC || tok == token::TOK_ACTION_EXPIRE_VAR || tok == token::TOK_ACTION_ID || tok == token::TOK_ACTION_INITCOL || tok == token::TOK_ACTION_LOG || tok == token::TOK_ACTION_LOG_DATA || tok == token::TOK_ACTION_MATURITY || tok == token::TOK_ACTION_MSG || tok == token::TOK_ACTION_MULTI_MATCH || tok == token::TOK_ACTION_NO_AUDIT_LOG || tok == token::TOK_ACTION_NO_LOG || tok == token::TOK_ACTION_PASS || tok == token::TOK_ACTION_PAUSE || tok == token::TOK_ACTION_PHASE || tok == token::TOK_ACTION_PREPEND || tok == token::TOK_ACTION_PROXY || tok == token::TOK_ACTION_REDIRECT || tok == token::TOK_ACTION_REV || tok == token::TOK_ACTION_SANITISE_ARG || tok == token::TOK_ACTION_SANITISE_MATCHED || tok == token::TOK_ACTION_SANITISE_MATCHED_BYTES || tok == token::TOK_ACTION_SANITISE_REQUEST_HEADER || tok == token::TOK_ACTION_SANITISE_RESPONSE_HEADER || tok == token::TOK_ACTION_SETENV || tok == token::TOK_ACTION_SETRSC || tok == token::TOK_ACTION_SETSID || tok == token::TOK_ACTION_SETUID || tok == token::TOK_ACTION_SEVERITY || tok == token::TOK_ACTION_SKIP || tok == token::TOK_ACTION_SKIP_AFTER || tok == token::TOK_ACTION_STATUS || tok == token::TOK_ACTION_TAG || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT || tok == token::TOK_ACTION_TRANSFORMATION_CMD_LINE || tok == token::TOK_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE || tok == token::TOK_ACTION_TRANSFORMATION_CSS_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_HEX_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_HEX_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_JS_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_LENGTH || tok == token::TOK_ACTION_TRANSFORMATION_LOWERCASE || tok == token::TOK_ACTION_TRANSFORMATION_MD5 || tok == token::TOK_ACTION_TRANSFORMATION_NONE || tok == token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH || tok == token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_NULLS || tok == token::TOK_ACTION_TRANSFORMATION_REMOVE_WHITESPACE || tok == token::TOK_ACTION_TRANSFORMATION_REPLACE_COMMENTS || tok == token::TOK_ACTION_TRANSFORMATION_REPLACE_NULLS || tok == token::TOK_ACTION_TRANSFORMATION_SHA1 || tok == token::TOK_ACTION_TRANSFORMATION_SQL_HEX_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_TRIM || tok == token::TOK_ACTION_TRANSFORMATION_TRIM_LEFT || tok == token::TOK_ACTION_TRANSFORMATION_TRIM_RIGHT || tok == token::TOK_ACTION_TRANSFORMATION_UPPERCASE || tok == token::TOK_ACTION_TRANSFORMATION_URL_ENCODE || tok == token::TOK_ACTION_TRANSFORMATION_URL_DECODE || tok == token::TOK_ACTION_TRANSFORMATION_URL_DECODE_UNI || tok == token::TOK_ACTION_TRANSFORMATION_UTF8_TO_UNICODE || tok == token::TOK_ACTION_VER || tok == token::TOK_ACTION_XMLNS || tok == token::TOK_CONFIG_COMPONENT_SIG || tok == token::TOK_CONFIG_CONN_ENGINE || tok == token::TOK_CONFIG_SEC_ARGUMENT_SEPARATOR || tok == token::TOK_CONFIG_SEC_WEB_APP_ID || tok == token::TOK_CONFIG_SEC_SERVER_SIG || tok == token::TOK_CONFIG_DIR_AUDIT_DIR || tok == token::TOK_CONFIG_DIR_AUDIT_DIR_MOD || tok == token::TOK_CONFIG_DIR_AUDIT_ENG || tok == token::TOK_CONFIG_DIR_AUDIT_FLE_MOD || tok == token::TOK_CONFIG_DIR_AUDIT_LOG || tok == token::TOK_CONFIG_DIR_AUDIT_LOG2 || tok == token::TOK_CONFIG_DIR_AUDIT_LOG_P || tok == token::TOK_CONFIG_DIR_AUDIT_STS || tok == token::TOK_CONFIG_DIR_AUDIT_TPE || tok == token::TOK_CONFIG_DIR_DEBUG_LOG || tok == token::TOK_CONFIG_DIR_DEBUG_LVL || tok == token::TOK_CONFIG_SEC_CACHE_TRANSFORMATIONS || tok == token::TOK_CONFIG_SEC_DISABLE_BACKEND_COMPRESS || tok == token::TOK_CONFIG_SEC_HASH_ENGINE || tok == token::TOK_CONFIG_SEC_HASH_KEY || tok == token::TOK_CONFIG_SEC_HASH_PARAM || tok == token::TOK_CONFIG_SEC_HASH_METHOD_RX || tok == token::TOK_CONFIG_SEC_HASH_METHOD_PM || tok == token::TOK_CONFIG_SEC_CHROOT_DIR || tok == token::TOK_CONFIG_DIR_GEO_DB || tok == token::TOK_CONFIG_DIR_GSB_DB || tok == token::TOK_CONFIG_SEC_GUARDIAN_LOG || tok == token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT || tok == token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION || tok == token::TOK_CONFIG_SEC_CONN_R_STATE_LIMIT || tok == token::TOK_CONFIG_SEC_CONN_W_STATE_LIMIT || tok == token::TOK_CONFIG_SEC_SENSOR_ID || tok == token::TOK_CONFIG_DIR_REQ_BODY || tok == token::TOK_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT || tok == token::TOK_CONFIG_DIR_REQ_BODY_LIMIT || tok == token::TOK_CONFIG_DIR_REQ_BODY_LIMIT_ACTION || tok == token::TOK_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT || tok == token::TOK_CONFIG_DIR_RES_BODY || tok == token::TOK_CONFIG_DIR_RES_BODY_LIMIT || tok == token::TOK_CONFIG_DIR_RES_BODY_LIMIT_ACTION || tok == token::TOK_CONFIG_SEC_RULE_INHERITANCE || tok == token::TOK_CONFIG_SEC_RULE_PERF_TIME || tok == token::TOK_CONFIG_DIR_RULE_ENG || tok == token::TOK_CONFIG_DIR_SEC_ACTION || tok == token::TOK_CONFIG_DIR_SEC_DEFAULT_ACTION || tok == token::TOK_CONFIG_DIR_SEC_MARKER || tok == token::TOK_CONFIG_DIR_UNICODE_MAP_FILE || tok == token::TOK_CONFIG_DIR_UNICODE_CODE_PAGE || tok == token::TOK_CONFIG_SEC_COLLECTION_TIMEOUT || tok == token::TOK_CONFIG_SEC_HTTP_BLKEY || tok == token::TOK_CONFIG_SEC_INTERCEPT_ON_ERROR || tok == token::TOK_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_ID || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_MSG || tok == token::TOK_CONFIG_SEC_RULE_REMOVE_BY_TAG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID || tok == token::TOK_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID || tok == token::TOK_CONFIG_UPDLOAD_KEEP_FILES || tok == token::TOK_CONFIG_UPDLOAD_SAVE_TMP_FILES || tok == token::TOK_CONFIG_UPLOAD_DIR || tok == token::TOK_CONFIG_UPLOAD_FILE_LIMIT || tok == token::TOK_CONFIG_UPLOAD_FILE_MODE || tok == token::TOK_CONFIG_VALUE_ABORT || tok == token::TOK_CONFIG_VALUE_DETC || tok == token::TOK_CONFIG_VALUE_HTTPS || tok == token::TOK_CONFIG_VALUE_OFF || tok == token::TOK_CONFIG_VALUE_ON || tok == token::TOK_CONFIG_VALUE_PARALLEL || tok == token::TOK_CONFIG_VALUE_PROCESS_PARTIAL || tok == token::TOK_CONFIG_VALUE_REJECT || tok == token::TOK_CONFIG_VALUE_RELEVANT_ONLY || tok == token::TOK_CONFIG_VALUE_SERIAL || tok == token::TOK_CONFIG_VALUE_WARN || tok == token::TOK_CONFIG_XML_EXTERNAL_ENTITY || tok == token::TOK_CONGIG_DIR_RESPONSE_BODY_MP || tok == token::TOK_CONGIG_DIR_SEC_ARG_SEP || tok == token::TOK_CONGIG_DIR_SEC_COOKIE_FORMAT || tok == token::TOK_CONFIG_SEC_COOKIEV0_SEPARATOR || tok == token::TOK_CONGIG_DIR_SEC_DATA_DIR || tok == token::TOK_CONGIG_DIR_SEC_STATUS_ENGINE || tok == token::TOK_CONFIG_SEC_STREAM_IN_BODY_INSPECTION || tok == token::TOK_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION || tok == token::TOK_CONGIG_DIR_SEC_TMP_DIR || tok == token::TOK_DIRECTIVE || tok == token::TOK_DIRECTIVE_SECRULESCRIPT || tok == token::TOK_FREE_TEXT_QUOTE_MACRO_EXPANSION || tok == token::TOK_QUOTATION_MARK || tok == token::TOK_RUN_TIME_VAR_BLD || tok == token::TOK_RUN_TIME_VAR_DUR || tok == token::TOK_RUN_TIME_VAR_HSV || tok == token::TOK_RUN_TIME_VAR_REMOTE_USER || tok == token::TOK_RUN_TIME_VAR_TIME || tok == token::TOK_RUN_TIME_VAR_TIME_DAY || tok == token::TOK_RUN_TIME_VAR_TIME_EPOCH || tok == token::TOK_RUN_TIME_VAR_TIME_HOUR || tok == token::TOK_RUN_TIME_VAR_TIME_MIN || tok == token::TOK_RUN_TIME_VAR_TIME_MON || tok == token::TOK_RUN_TIME_VAR_TIME_SEC || tok == token::TOK_RUN_TIME_VAR_TIME_WDAY || tok == token::TOK_RUN_TIME_VAR_TIME_YEAR || tok == token::TOK_VARIABLE || tok == token::TOK_DICT_ELEMENT || tok == token::TOK_DICT_ELEMENT_REGEXP); + } +#endif + }; + + /// Build a parser object. + seclang_parser (modsecurity::Parser::Driver& driver_yyarg); + virtual ~seclang_parser (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if YYDEBUG + /// The current debugging stream. + std::ostream& debug_stream () const YY_ATTRIBUTE_PURE; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const YY_ATTRIBUTE_PURE; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error. + /// \param loc where the syntax error is found. + /// \param msg a description of the syntax error. + virtual void error (const location_type& loc, const std::string& msg); + + /// Report a syntax error. + void error (const syntax_error& err); + + // Implementation of make_symbol for each symbol type. +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_END (location_type l) + { + return symbol_type (token::TOK_END, std::move (l)); + } +#else + static + symbol_type + make_END (const location_type& l) + { + return symbol_type (token::TOK_END, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_COMMA (location_type l) + { + return symbol_type (token::TOK_COMMA, std::move (l)); + } +#else + static + symbol_type + make_COMMA (const location_type& l) + { + return symbol_type (token::TOK_COMMA, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_CONTENT_INJECTION (location_type l) + { + return symbol_type (token::TOK_CONFIG_CONTENT_INJECTION, std::move (l)); + } +#else + static + symbol_type + make_CONFIG_CONTENT_INJECTION (const location_type& l) + { + return symbol_type (token::TOK_CONFIG_CONTENT_INJECTION, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR (location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR, std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR (const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_PIPE (location_type l) + { + return symbol_type (token::TOK_PIPE, std::move (l)); + } +#else + static + symbol_type + make_PIPE (const location_type& l) + { + return symbol_type (token::TOK_PIPE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_NEW_LINE (location_type l) + { + return symbol_type (token::TOK_NEW_LINE, std::move (l)); + } +#else + static + symbol_type + make_NEW_LINE (const location_type& l) + { + return symbol_type (token::TOK_NEW_LINE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VAR_COUNT (location_type l) + { + return symbol_type (token::TOK_VAR_COUNT, std::move (l)); + } +#else + static + symbol_type + make_VAR_COUNT (const location_type& l) + { + return symbol_type (token::TOK_VAR_COUNT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VAR_EXCLUSION (location_type l) + { + return symbol_type (token::TOK_VAR_EXCLUSION, std::move (l)); + } +#else + static + symbol_type + make_VAR_EXCLUSION (const location_type& l) + { + return symbol_type (token::TOK_VAR_EXCLUSION, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_POST (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_POST, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_POST (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_POST, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_GET (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_GET, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_GET (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_GET, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES_SIZES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES_SIZES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES_SIZES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES_SIZES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES_TMP_CONTENT (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES_TMP_CONTENT, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES_TMP_CONTENT (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES_TMP_CONTENT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_FILENAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_FILENAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_FILENAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_FILENAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_NAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_NAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_NAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_NAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MATCHED_VARS_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VARS_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MATCHED_VARS_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VARS_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MATCHED_VARS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VARS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MATCHED_VARS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VARS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_COOKIES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_COOKIES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_HEADERS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_HEADERS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_HEADERS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_HEADERS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_GEO (location_type l) + { + return symbol_type (token::TOK_VARIABLE_GEO, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_GEO (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_GEO, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_COOKIES_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_COOKIES_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_COMBINED_SIZE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_COMBINED_SIZE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_COMBINED_SIZE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_COMBINED_SIZE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_GET_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_GET_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_GET_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_GET_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RULE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RULE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RULE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RULE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_ARGS_POST_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_POST_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_ARGS_POST_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_ARGS_POST_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_AUTH_TYPE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_AUTH_TYPE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_AUTH_TYPE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_AUTH_TYPE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES_COMBINED_SIZE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES_COMBINED_SIZE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES_COMBINED_SIZE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES_COMBINED_SIZE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FILES_TMP_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FILES_TMP_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FILES_TMP_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FILES_TMP_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FULL_REQUEST (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FULL_REQUEST, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FULL_REQUEST (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FULL_REQUEST, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_FULL_REQUEST_LENGTH (location_type l) + { + return symbol_type (token::TOK_VARIABLE_FULL_REQUEST_LENGTH, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_FULL_REQUEST_LENGTH (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_FULL_REQUEST_LENGTH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_INBOUND_DATA_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_INBOUND_DATA_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_INBOUND_DATA_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_INBOUND_DATA_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MATCHED_VAR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VAR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MATCHED_VAR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VAR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MATCHED_VAR_NAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VAR_NAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MATCHED_VAR_NAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MATCHED_VAR_NAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_BOUNDARY_QUOTED (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_QUOTED, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_BOUNDARY_QUOTED (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_QUOTED, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_CRLF_LF_LINES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_CRLF_LF_LINES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_CRLF_LF_LINES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_CRLF_LF_LINES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_DATA_AFTER (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_AFTER, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_DATA_AFTER (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_AFTER, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_DATA_BEFORE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_BEFORE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_DATA_BEFORE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_BEFORE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_HEADER_FOLDING (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_HEADER_FOLDING, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_HEADER_FOLDING (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_HEADER_FOLDING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_PART (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_PART, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_PART (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_PART, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_QUOTING (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_QUOTING, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_INVALID_QUOTING (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_QUOTING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_LF_LINE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_LF_LINE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_LF_LINE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_LF_LINE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_MISSING_SEMICOLON (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_MISSING_SEMICOLON, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_MISSING_SEMICOLON (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_MISSING_SEMICOLON, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_SEMICOLON_MISSING (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_SEMICOLON_MISSING, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_SEMICOLON_MISSING (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_SEMICOLON_MISSING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_STRICT_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_STRICT_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_STRICT_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_STRICT_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY (location_type l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_OUTBOUND_DATA_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_OUTBOUND_DATA_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_OUTBOUND_DATA_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_OUTBOUND_DATA_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_PATH_INFO (location_type l) + { + return symbol_type (token::TOK_VARIABLE_PATH_INFO, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_PATH_INFO (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_PATH_INFO, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_QUERY_STRING (location_type l) + { + return symbol_type (token::TOK_VARIABLE_QUERY_STRING, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_QUERY_STRING (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_QUERY_STRING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REMOTE_ADDR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_ADDR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REMOTE_ADDR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_ADDR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REMOTE_HOST (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_HOST, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REMOTE_HOST (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_HOST, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REMOTE_PORT (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_PORT, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REMOTE_PORT (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REMOTE_PORT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQBODY_ERROR_MSG (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR_MSG, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQBODY_ERROR_MSG (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR_MSG, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQBODY_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQBODY_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQBODY_PROCESSOR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_BASENAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BASENAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_BASENAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BASENAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_BODY_LENGTH (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BODY_LENGTH, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_BODY_LENGTH (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BODY_LENGTH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_BODY (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BODY, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_BODY (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_BODY, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_FILE_NAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_FILE_NAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_FILE_NAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_FILE_NAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_HEADERS_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_HEADERS_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_LINE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_LINE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_LINE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_LINE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_METHOD (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_METHOD, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_METHOD (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_METHOD, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_PROTOCOL (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_PROTOCOL, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_PROTOCOL (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_PROTOCOL, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_URI_RAW (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_URI_RAW, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_URI_RAW (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_URI_RAW, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_REQUEST_URI (location_type l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_URI, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_REQUEST_URI (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_REQUEST_URI, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESOURCE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESOURCE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESOURCE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESOURCE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_BODY (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_BODY, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_BODY (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_BODY, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_CONTENT_LENGTH (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_LENGTH, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_CONTENT_LENGTH (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_LENGTH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_CONTENT_TYPE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_TYPE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_CONTENT_TYPE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_TYPE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_HEADERS_NAMES (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS_NAMES, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_HEADERS_NAMES (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS_NAMES, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_PROTOCOL (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_PROTOCOL, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_PROTOCOL (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_PROTOCOL, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_RESPONSE_STATUS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_STATUS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_RESPONSE_STATUS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_RESPONSE_STATUS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_SERVER_ADDR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_ADDR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_SERVER_ADDR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_ADDR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_SERVER_NAME (location_type l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_NAME, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_SERVER_NAME (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_NAME, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_SERVER_PORT (location_type l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_PORT, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_SERVER_PORT (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_SERVER_PORT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_SESSION_ID (location_type l) + { + return symbol_type (token::TOK_VARIABLE_SESSION_ID, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_SESSION_ID (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_SESSION_ID, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_UNIQUE_ID (location_type l) + { + return symbol_type (token::TOK_VARIABLE_UNIQUE_ID, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_UNIQUE_ID (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_UNIQUE_ID, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_URL_ENCODED_ERROR (location_type l) + { + return symbol_type (token::TOK_VARIABLE_URL_ENCODED_ERROR, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_URL_ENCODED_ERROR (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_URL_ENCODED_ERROR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_USER_ID (location_type l) + { + return symbol_type (token::TOK_VARIABLE_USER_ID, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_USER_ID (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_USER_ID, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_WEB_APP_ID (location_type l) + { + return symbol_type (token::TOK_VARIABLE_WEB_APP_ID, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_WEB_APP_ID (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_WEB_APP_ID, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_STATUS (location_type l) + { + return symbol_type (token::TOK_VARIABLE_STATUS, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_STATUS (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_STATUS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_STATUS_LINE (location_type l) + { + return symbol_type (token::TOK_VARIABLE_STATUS_LINE, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_STATUS_LINE (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_STATUS_LINE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_IP (location_type l) + { + return symbol_type (token::TOK_VARIABLE_IP, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_IP (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_IP, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_GLOBAL (location_type l) + { + return symbol_type (token::TOK_VARIABLE_GLOBAL, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_GLOBAL (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_GLOBAL, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_TX (location_type l) + { + return symbol_type (token::TOK_VARIABLE_TX, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_TX (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_TX, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_SESSION (location_type l) + { + return symbol_type (token::TOK_VARIABLE_SESSION, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_SESSION (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_SESSION, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE_USER (location_type l) + { + return symbol_type (token::TOK_VARIABLE_USER, std::move (l)); + } +#else + static + symbol_type + make_VARIABLE_USER (const location_type& l) + { + return symbol_type (token::TOK_VARIABLE_USER, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_ENV (location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_ENV, std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_ENV (const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_ENV, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_XML (location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_XML, std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_XML (const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_XML, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SETVAR (location_type l) + { + return symbol_type (token::TOK_ACTION_SETVAR, std::move (l)); + } +#else + static + symbol_type + make_ACTION_SETVAR (const location_type& l) + { + return symbol_type (token::TOK_ACTION_SETVAR, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_SETVAR_OPERATION_EQUALS (location_type l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS, std::move (l)); + } +#else + static + symbol_type + make_SETVAR_OPERATION_EQUALS (const location_type& l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_SETVAR_OPERATION_EQUALS_PLUS (location_type l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_PLUS, std::move (l)); + } +#else + static + symbol_type + make_SETVAR_OPERATION_EQUALS_PLUS (const location_type& l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_PLUS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_SETVAR_OPERATION_EQUALS_MINUS (location_type l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_MINUS, std::move (l)); + } +#else + static + symbol_type + make_SETVAR_OPERATION_EQUALS_MINUS (const location_type& l) + { + return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_MINUS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_NOT (location_type l) + { + return symbol_type (token::TOK_NOT, std::move (l)); + } +#else + static + symbol_type + make_NOT (const location_type& l) + { + return symbol_type (token::TOK_NOT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_BEGINS_WITH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_BEGINS_WITH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_BEGINS_WITH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_BEGINS_WITH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_CONTAINS (location_type l) + { + return symbol_type (token::TOK_OPERATOR_CONTAINS, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_CONTAINS (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_CONTAINS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_CONTAINS_WORD (location_type l) + { + return symbol_type (token::TOK_OPERATOR_CONTAINS_WORD, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_CONTAINS_WORD (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_CONTAINS_WORD, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_DETECT_SQLI (location_type l) + { + return symbol_type (token::TOK_OPERATOR_DETECT_SQLI, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_DETECT_SQLI (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_DETECT_SQLI, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_DETECT_XSS (location_type l) + { + return symbol_type (token::TOK_OPERATOR_DETECT_XSS, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_DETECT_XSS (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_DETECT_XSS, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_ENDS_WITH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_ENDS_WITH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_ENDS_WITH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_ENDS_WITH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_EQ (location_type l) + { + return symbol_type (token::TOK_OPERATOR_EQ, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_EQ (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_EQ, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_FUZZY_HASH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_FUZZY_HASH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_FUZZY_HASH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_FUZZY_HASH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_GEOLOOKUP (location_type l) + { + return symbol_type (token::TOK_OPERATOR_GEOLOOKUP, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_GEOLOOKUP (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_GEOLOOKUP, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_GE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_GE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_GE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_GE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_GSB_LOOKUP (location_type l) + { + return symbol_type (token::TOK_OPERATOR_GSB_LOOKUP, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_GSB_LOOKUP (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_GSB_LOOKUP, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_GT (location_type l) + { + return symbol_type (token::TOK_OPERATOR_GT, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_GT (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_GT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_INSPECT_FILE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_INSPECT_FILE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_INSPECT_FILE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_INSPECT_FILE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_IP_MATCH_FROM_FILE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_IP_MATCH_FROM_FILE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_IP_MATCH_FROM_FILE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_IP_MATCH_FROM_FILE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_IP_MATCH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_IP_MATCH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_IP_MATCH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_IP_MATCH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_LE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_LE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_LE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_LE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_LT (location_type l) + { + return symbol_type (token::TOK_OPERATOR_LT, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_LT (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_LT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_PM_FROM_FILE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_PM_FROM_FILE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_PM_FROM_FILE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_PM_FROM_FILE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_PM (location_type l) + { + return symbol_type (token::TOK_OPERATOR_PM, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_PM (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_PM, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_RBL (location_type l) + { + return symbol_type (token::TOK_OPERATOR_RBL, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_RBL (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_RBL, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_RSUB (location_type l) + { + return symbol_type (token::TOK_OPERATOR_RSUB, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_RSUB (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_RSUB, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_RX_CONTENT_ONLY (location_type l) + { + return symbol_type (token::TOK_OPERATOR_RX_CONTENT_ONLY, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_RX_CONTENT_ONLY (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_RX_CONTENT_ONLY, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_RX (location_type l) + { + return symbol_type (token::TOK_OPERATOR_RX, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_RX (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_RX, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_STR_EQ (location_type l) + { + return symbol_type (token::TOK_OPERATOR_STR_EQ, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_STR_EQ (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_STR_EQ, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_STR_MATCH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_STR_MATCH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_STR_MATCH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_STR_MATCH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_UNCONDITIONAL_MATCH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_UNCONDITIONAL_MATCH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_UNCONDITIONAL_MATCH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_UNCONDITIONAL_MATCH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_BYTE_RANGE (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_BYTE_RANGE, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_BYTE_RANGE (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_BYTE_RANGE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_DTD (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_DTD, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_DTD (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_DTD, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_HASH (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_HASH, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_HASH (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_HASH, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_SCHEMA (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_SCHEMA, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_SCHEMA (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_SCHEMA, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_URL_ENCODING (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_URL_ENCODING, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_URL_ENCODING (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_URL_ENCODING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VALIDATE_UTF8_ENCODING (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_UTF8_ENCODING, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VALIDATE_UTF8_ENCODING (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VALIDATE_UTF8_ENCODING, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VERIFY_CC (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_CC, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VERIFY_CC (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_CC, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VERIFY_CPF (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_CPF, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VERIFY_CPF (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_CPF, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_VERIFY_SSN (location_type l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_SSN, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_VERIFY_SSN (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_VERIFY_SSN, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_OPERATOR_WITHIN (location_type l) + { + return symbol_type (token::TOK_OPERATOR_WITHIN, std::move (l)); + } +#else + static + symbol_type + make_OPERATOR_WITHIN (const location_type& l) + { + return symbol_type (token::TOK_OPERATOR_WITHIN, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG_FMT (location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_FMT, std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG_FMT (const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_FMT, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_JSON (location_type l) + { + return symbol_type (token::TOK_JSON, std::move (l)); + } +#else + static + symbol_type + make_JSON (const location_type& l) + { + return symbol_type (token::TOK_JSON, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_NATIVE (location_type l) + { + return symbol_type (token::TOK_NATIVE, std::move (l)); + } +#else + static + symbol_type + make_NATIVE (const location_type& l) + { + return symbol_type (token::TOK_NATIVE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_RULE_ENGINE (location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_ENGINE, std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_RULE_ENGINE (const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_ENGINE, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_ACCURACY (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_ACCURACY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_ACCURACY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_ACCURACY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_ALLOW (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_ALLOW, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_ALLOW (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_ALLOW, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_APPEND (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_APPEND, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_APPEND (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_APPEND, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_AUDIT_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_AUDIT_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_AUDIT_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_AUDIT_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_BLOCK (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_BLOCK, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_BLOCK (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_BLOCK, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CAPTURE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CAPTURE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CAPTURE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CAPTURE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CHAIN (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CHAIN, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CHAIN (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CHAIN, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_AUDIT_ENGINE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_AUDIT_ENGINE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_AUDIT_ENGINE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_AUDIT_ENGINE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_AUDIT_LOG_PARTS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_AUDIT_LOG_PARTS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_AUDIT_LOG_PARTS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_AUDIT_LOG_PARTS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_BDY_JSON (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_JSON, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_BDY_JSON (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_JSON, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_BDY_XML (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_XML, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_BDY_XML (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_XML, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_BDY_URLENCODED (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_URLENCODED, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_BDY_URLENCODED (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_BDY_URLENCODED, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_FORCE_REQ_BODY_VAR (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_FORCE_REQ_BODY_VAR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_FORCE_REQ_BODY_VAR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_FORCE_REQ_BODY_VAR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_REQUEST_BODY_ACCESS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_REQUEST_BODY_ACCESS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_REQUEST_BODY_ACCESS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_REQUEST_BODY_ACCESS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_BY_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_BY_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_BY_TAG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_TAG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_BY_TAG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_TAG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_DENY (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_DENY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_DENY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_DENY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_DEPRECATE_VAR (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_DEPRECATE_VAR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_DEPRECATE_VAR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_DEPRECATE_VAR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_DROP (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_DROP, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_DROP (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_DROP, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_EXEC (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_EXEC, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_EXEC (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_EXEC, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_EXPIRE_VAR (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_EXPIRE_VAR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_EXPIRE_VAR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_EXPIRE_VAR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_INITCOL (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_INITCOL, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_INITCOL (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_INITCOL, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_LOG_DATA (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_LOG_DATA, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_LOG_DATA (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_LOG_DATA, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_MATURITY (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_MATURITY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_MATURITY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_MATURITY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_MSG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_MSG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_MSG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_MSG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_MULTI_MATCH (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_MULTI_MATCH, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_MULTI_MATCH (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_MULTI_MATCH, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_NO_AUDIT_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_NO_AUDIT_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_NO_AUDIT_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_NO_AUDIT_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_NO_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_NO_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_NO_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_NO_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_PASS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_PASS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_PASS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_PASS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_PAUSE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_PAUSE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_PAUSE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_PAUSE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_PHASE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_PHASE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_PHASE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_PHASE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_PREPEND (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_PREPEND, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_PREPEND (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_PREPEND, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_PROXY (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_PROXY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_PROXY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_PROXY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_REDIRECT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_REDIRECT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_REDIRECT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_REDIRECT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_REV (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_REV, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_REV (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_REV, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SANITISE_ARG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SANITISE_ARG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SANITISE_ARG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SANITISE_ARG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SANITISE_MATCHED (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SANITISE_MATCHED, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SANITISE_MATCHED (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SANITISE_MATCHED, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SANITISE_MATCHED_BYTES (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SANITISE_MATCHED_BYTES, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SANITISE_MATCHED_BYTES (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SANITISE_MATCHED_BYTES, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SANITISE_REQUEST_HEADER (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SANITISE_REQUEST_HEADER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SANITISE_REQUEST_HEADER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SANITISE_REQUEST_HEADER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SANITISE_RESPONSE_HEADER (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SANITISE_RESPONSE_HEADER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SANITISE_RESPONSE_HEADER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SANITISE_RESPONSE_HEADER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SETENV (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SETENV, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SETENV (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SETENV, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SETRSC (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SETRSC, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SETRSC (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SETRSC, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SETSID (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SETSID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SETSID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SETSID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SETUID (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SETUID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SETUID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SETUID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SEVERITY (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SEVERITY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SEVERITY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SEVERITY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SKIP (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SKIP, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SKIP (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SKIP, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_SKIP_AFTER (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_SKIP_AFTER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_SKIP_AFTER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_SKIP_AFTER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_STATUS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_STATUS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_STATUS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_STATUS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TAG (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TAG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TAG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TAG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_ENCODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_ENCODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_ENCODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_ENCODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_CMD_LINE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_CMD_LINE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_CMD_LINE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_CMD_LINE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_CSS_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_CSS_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_CSS_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_CSS_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_HEX_ENCODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_ENCODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_HEX_ENCODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_ENCODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_HEX_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_HEX_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_JS_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_JS_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_JS_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_JS_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_LENGTH (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_LENGTH, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_LENGTH (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_LENGTH, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_LOWERCASE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_LOWERCASE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_LOWERCASE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_LOWERCASE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_MD5 (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_MD5, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_MD5 (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_MD5, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_NONE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NONE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_NONE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NONE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_NORMALISE_PATH (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_NORMALISE_PATH (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_COMMENTS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_COMMENTS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_NULLS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_NULLS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_NULLS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_NULLS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_WHITESPACE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_WHITESPACE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REMOVE_WHITESPACE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_WHITESPACE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REPLACE_COMMENTS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_COMMENTS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REPLACE_COMMENTS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_COMMENTS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_REPLACE_NULLS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_NULLS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_REPLACE_NULLS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_NULLS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_SHA1 (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_SHA1, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_SHA1 (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_SHA1, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_SQL_HEX_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_SQL_HEX_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_SQL_HEX_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_SQL_HEX_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM_LEFT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_LEFT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM_LEFT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_LEFT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM_RIGHT (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_RIGHT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_TRIM_RIGHT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_RIGHT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_UPPERCASE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_UPPERCASE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_UPPERCASE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_UPPERCASE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_URL_ENCODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_ENCODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_URL_ENCODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_ENCODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_URL_DECODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_URL_DECODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_URL_DECODE_UNI (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE_UNI, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_URL_DECODE_UNI (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE_UNI, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_TRANSFORMATION_UTF8_TO_UNICODE (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_UTF8_TO_UNICODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_TRANSFORMATION_UTF8_TO_UNICODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_TRANSFORMATION_UTF8_TO_UNICODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_VER (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_VER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_VER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_VER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_ACTION_XMLNS (std::string v, location_type l) + { + return symbol_type (token::TOK_ACTION_XMLNS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_ACTION_XMLNS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_ACTION_XMLNS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_COMPONENT_SIG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_COMPONENT_SIG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_COMPONENT_SIG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_COMPONENT_SIG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_CONN_ENGINE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_CONN_ENGINE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_CONN_ENGINE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_CONN_ENGINE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_ARGUMENT_SEPARATOR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_ARGUMENT_SEPARATOR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_ARGUMENT_SEPARATOR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_ARGUMENT_SEPARATOR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_WEB_APP_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_WEB_APP_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_WEB_APP_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_WEB_APP_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_SERVER_SIG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_SERVER_SIG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_SERVER_SIG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_SERVER_SIG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_DIR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_DIR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_DIR_MOD (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR_MOD, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_DIR_MOD (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR_MOD, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_ENG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_ENG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_ENG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_ENG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_FLE_MOD (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_FLE_MOD, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_FLE_MOD (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_FLE_MOD, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG2 (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG2, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG2 (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG2, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG_P (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_P, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_LOG_P (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_P, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_STS (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_STS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_STS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_STS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_AUDIT_TPE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_TPE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_AUDIT_TPE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_AUDIT_TPE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_DEBUG_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_DEBUG_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_DEBUG_LVL (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LVL, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_DEBUG_LVL (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LVL, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_CACHE_TRANSFORMATIONS (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_CACHE_TRANSFORMATIONS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_CACHE_TRANSFORMATIONS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_CACHE_TRANSFORMATIONS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_DISABLE_BACKEND_COMPRESS (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_DISABLE_BACKEND_COMPRESS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_DISABLE_BACKEND_COMPRESS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_DISABLE_BACKEND_COMPRESS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HASH_ENGINE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_ENGINE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HASH_ENGINE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_ENGINE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HASH_KEY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_KEY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HASH_KEY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_KEY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HASH_PARAM (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_PARAM, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HASH_PARAM (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_PARAM, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HASH_METHOD_RX (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_RX, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HASH_METHOD_RX (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_RX, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HASH_METHOD_PM (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_PM, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HASH_METHOD_PM (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_PM, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_CHROOT_DIR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_CHROOT_DIR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_CHROOT_DIR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_CHROOT_DIR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_GEO_DB (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_GEO_DB, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_GEO_DB (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_GEO_DB, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_GSB_DB (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_GSB_DB, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_GSB_DB (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_GSB_DB, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_GUARDIAN_LOG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_GUARDIAN_LOG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_GUARDIAN_LOG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_GUARDIAN_LOG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_PCRE_MATCH_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_PCRE_MATCH_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_CONN_R_STATE_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_CONN_R_STATE_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_CONN_R_STATE_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_CONN_R_STATE_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_CONN_W_STATE_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_CONN_W_STATE_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_CONN_W_STATE_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_CONN_W_STATE_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_SENSOR_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_SENSOR_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_SENSOR_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_SENSOR_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_REQ_BODY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_REQ_BODY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_REQ_BODY_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_REQ_BODY_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_REQ_BODY_LIMIT_ACTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT_ACTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_REQ_BODY_LIMIT_ACTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT_ACTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_RES_BODY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_RES_BODY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_RES_BODY_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_RES_BODY_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_RES_BODY_LIMIT_ACTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT_ACTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_RES_BODY_LIMIT_ACTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT_ACTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_INHERITANCE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_INHERITANCE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_INHERITANCE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_INHERITANCE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_PERF_TIME (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_PERF_TIME, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_PERF_TIME (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_PERF_TIME, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_RULE_ENG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_RULE_ENG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_RULE_ENG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_RULE_ENG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_SEC_ACTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_ACTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_SEC_ACTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_ACTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_SEC_DEFAULT_ACTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_DEFAULT_ACTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_SEC_DEFAULT_ACTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_DEFAULT_ACTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_SEC_MARKER (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_MARKER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_SEC_MARKER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_SEC_MARKER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_UNICODE_MAP_FILE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_UNICODE_MAP_FILE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_UNICODE_MAP_FILE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_UNICODE_MAP_FILE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_DIR_UNICODE_CODE_PAGE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_DIR_UNICODE_CODE_PAGE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_DIR_UNICODE_CODE_PAGE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_DIR_UNICODE_CODE_PAGE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_COLLECTION_TIMEOUT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_COLLECTION_TIMEOUT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_COLLECTION_TIMEOUT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_COLLECTION_TIMEOUT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_HTTP_BLKEY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_HTTP_BLKEY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_HTTP_BLKEY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_HTTP_BLKEY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_INTERCEPT_ON_ERROR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_INTERCEPT_ON_ERROR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_INTERCEPT_ON_ERROR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_INTERCEPT_ON_ERROR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_MSG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_MSG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_MSG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_MSG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_TAG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_TAG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_REMOVE_BY_TAG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_TAG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_UPDLOAD_KEEP_FILES (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_UPDLOAD_KEEP_FILES, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_UPDLOAD_KEEP_FILES (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_UPDLOAD_KEEP_FILES, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_UPDLOAD_SAVE_TMP_FILES (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_UPDLOAD_SAVE_TMP_FILES, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_UPDLOAD_SAVE_TMP_FILES (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_UPDLOAD_SAVE_TMP_FILES, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_UPLOAD_DIR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_DIR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_UPLOAD_DIR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_DIR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_UPLOAD_FILE_LIMIT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_LIMIT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_UPLOAD_FILE_LIMIT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_LIMIT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_UPLOAD_FILE_MODE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_MODE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_UPLOAD_FILE_MODE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_MODE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_ABORT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_ABORT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_ABORT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_ABORT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_DETC (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_DETC, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_DETC (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_DETC, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_HTTPS (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_HTTPS, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_HTTPS (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_HTTPS, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_OFF (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_OFF, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_OFF (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_OFF, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_ON (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_ON, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_ON (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_ON, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_PARALLEL (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_PARALLEL, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_PARALLEL (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_PARALLEL, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_PROCESS_PARTIAL (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_PROCESS_PARTIAL, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_PROCESS_PARTIAL (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_PROCESS_PARTIAL, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_REJECT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_REJECT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_REJECT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_REJECT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_RELEVANT_ONLY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_RELEVANT_ONLY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_RELEVANT_ONLY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_RELEVANT_ONLY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_SERIAL (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_SERIAL, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_SERIAL (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_SERIAL, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_VALUE_WARN (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_VALUE_WARN, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_VALUE_WARN (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_VALUE_WARN, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_XML_EXTERNAL_ENTITY (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_XML_EXTERNAL_ENTITY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_XML_EXTERNAL_ENTITY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_XML_EXTERNAL_ENTITY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_RESPONSE_BODY_MP (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_RESPONSE_BODY_MP (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_SEC_ARG_SEP (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_ARG_SEP, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_SEC_ARG_SEP (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_ARG_SEP, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_SEC_COOKIE_FORMAT (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_COOKIE_FORMAT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_SEC_COOKIE_FORMAT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_COOKIE_FORMAT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_COOKIEV0_SEPARATOR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_COOKIEV0_SEPARATOR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_COOKIEV0_SEPARATOR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_COOKIEV0_SEPARATOR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_SEC_DATA_DIR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_DATA_DIR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_SEC_DATA_DIR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_DATA_DIR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_SEC_STATUS_ENGINE (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_STATUS_ENGINE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_SEC_STATUS_ENGINE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_STATUS_ENGINE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_STREAM_IN_BODY_INSPECTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_STREAM_IN_BODY_INSPECTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_STREAM_IN_BODY_INSPECTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_STREAM_IN_BODY_INSPECTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION (std::string v, location_type l) + { + return symbol_type (token::TOK_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_CONGIG_DIR_SEC_TMP_DIR (std::string v, location_type l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_TMP_DIR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_CONGIG_DIR_SEC_TMP_DIR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_CONGIG_DIR_SEC_TMP_DIR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_DIRECTIVE (std::string v, location_type l) + { + return symbol_type (token::TOK_DIRECTIVE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_DIRECTIVE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_DIRECTIVE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_DIRECTIVE_SECRULESCRIPT (std::string v, location_type l) + { + return symbol_type (token::TOK_DIRECTIVE_SECRULESCRIPT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_DIRECTIVE_SECRULESCRIPT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_DIRECTIVE_SECRULESCRIPT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_FREE_TEXT_QUOTE_MACRO_EXPANSION (std::string v, location_type l) + { + return symbol_type (token::TOK_FREE_TEXT_QUOTE_MACRO_EXPANSION, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_FREE_TEXT_QUOTE_MACRO_EXPANSION (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_FREE_TEXT_QUOTE_MACRO_EXPANSION, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_QUOTATION_MARK (std::string v, location_type l) + { + return symbol_type (token::TOK_QUOTATION_MARK, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_QUOTATION_MARK (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_QUOTATION_MARK, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_BLD (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_BLD, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_BLD (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_BLD, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_DUR (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_DUR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_DUR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_DUR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_HSV (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_HSV, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_HSV (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_HSV, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_REMOTE_USER (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_REMOTE_USER, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_REMOTE_USER (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_REMOTE_USER, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_DAY (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_DAY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_DAY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_DAY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_EPOCH (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_EPOCH, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_EPOCH (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_EPOCH, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_HOUR (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_HOUR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_HOUR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_HOUR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_MIN (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MIN, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_MIN (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MIN, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_MON (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MON, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_MON (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MON, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_SEC (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_SEC, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_SEC (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_SEC, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_WDAY (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_WDAY, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_WDAY (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_WDAY, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_RUN_TIME_VAR_TIME_YEAR (std::string v, location_type l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_YEAR, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_RUN_TIME_VAR_TIME_YEAR (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_RUN_TIME_VAR_TIME_YEAR, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_VARIABLE (std::string v, location_type l) + { + return symbol_type (token::TOK_VARIABLE, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_VARIABLE (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_VARIABLE, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_DICT_ELEMENT (std::string v, location_type l) + { + return symbol_type (token::TOK_DICT_ELEMENT, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_DICT_ELEMENT (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_DICT_ELEMENT, v, l); + } +#endif +#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_DICT_ELEMENT_REGEXP (std::string v, location_type l) + { + return symbol_type (token::TOK_DICT_ELEMENT_REGEXP, std::move (v), std::move (l)); + } +#else + static + symbol_type + make_DICT_ELEMENT_REGEXP (const std::string& v, const location_type& l) + { + return symbol_type (token::TOK_DICT_ELEMENT_REGEXP, v, l); + } +#endif + + + private: + /// This class is not copyable. + seclang_parser (const seclang_parser&); + seclang_parser& operator= (const seclang_parser&); + + /// State numbers. + typedef int state_type; + + /// Generate an error message. + /// \param yystate the state where the error occurred. + /// \param yyla the lookahead token. + virtual std::string yysyntax_error_ (state_type yystate, + const symbol_type& yyla) const; + + /// Compute post-reduction state. + /// \param yystate the current state + /// \param yysym the nonterminal to push on the stack + state_type yy_lr_goto_state_ (state_type yystate, int yysym); + + /// Whether the given \c yypact_ value indicates a defaulted state. + /// \param yyvalue the value to check + static bool yy_pact_value_is_default_ (int yyvalue); + + /// Whether the given \c yytable_ value indicates a syntax error. + /// \param yyvalue the value to check + static bool yy_table_value_is_error_ (int yyvalue); + + static const short yypact_ninf_; + static const signed char yytable_ninf_; + + /// Convert a scanner token number \a t to a symbol number. + static token_number_type yytranslate_ (token_type t); + + // Tables. + // YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + // STATE-NUM. + static const short yypact_[]; + + // YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. + // Performed when YYTABLE does not specify something else to do. Zero + // means the default is an error. + static const unsigned short yydefact_[]; + + // YYPGOTO[NTERM-NUM]. + static const short yypgoto_[]; + + // YYDEFGOTO[NTERM-NUM]. + static const short yydefgoto_[]; + + // YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If + // positive, shift that token. If negative, reduce the rule whose + // number is the opposite. If YYTABLE_NINF, syntax error. + static const unsigned short yytable_[]; + + static const short yycheck_[]; + + // YYSTOS[STATE-NUM] -- The (internal number of the) accessing + // symbol of state STATE-NUM. + static const unsigned short yystos_[]; + + // YYR1[YYN] -- Symbol number of symbol that rule YYN derives. + static const unsigned short yyr1_[]; + + // YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. + static const unsigned char yyr2_[]; + + + /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *n); + + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#if YYDEBUG + // YYRLINE[YYN] -- Source line where rule number YYN was defined. + static const unsigned short yyrline_[]; + /// Report on the debug stream that the rule \a r is going to be reduced. + virtual void yy_reduce_print_ (int r); + /// Print the state stack on the debug stream. + virtual void yystack_print_ (); + + /// Debugging level. + int yydebug_; + /// Debug stream. + std::ostream* yycdebug_; + + /// \brief Display a symbol type, value and location. + /// \param yyo The output stream. + /// \param yysym The symbol. + template + void yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const; +#endif + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yysym The symbol. + template + void yy_destroy_ (const char* yymsg, basic_symbol& yysym) const; + + private: + /// Type access provider for state based symbols. + struct by_state + { + /// Default constructor. + by_state () YY_NOEXCEPT; + + /// The symbol type as needed by the constructor. + typedef state_type kind_type; + + /// Constructor. + by_state (kind_type s) YY_NOEXCEPT; + + /// Copy constructor. + by_state (const by_state& that) YY_NOEXCEPT; + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol type from \a that. + void move (by_state& that); + + /// The (internal) type number (corresponding to \a state). + /// \a empty_symbol when empty. + symbol_number_type type_get () const YY_NOEXCEPT; + + /// The state number used to denote an empty symbol. + enum { empty_state = -1 }; + + /// The state. + /// \a empty when empty. + state_type state; + }; + + /// "Internal" symbol: element of the stack. + struct stack_symbol_type : basic_symbol + { + /// Superclass. + typedef basic_symbol super_type; + /// Construct an empty symbol. + stack_symbol_type (); + /// Move or copy construction. + stack_symbol_type (YY_RVREF (stack_symbol_type) that); + /// Steal the contents from \a sym to build this. + stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym); +#if YY_CPLUSPLUS < 201103L + /// Assignment, needed by push_back by some old implementations. + /// Moves the contents of that. + stack_symbol_type& operator= (stack_symbol_type& that); +#endif + }; + + /// A stack with random access from its top. + template > + class stack + { + public: + // Hide our reversed order. + typedef typename S::reverse_iterator iterator; + typedef typename S::const_reverse_iterator const_iterator; + typedef typename S::size_type size_type; + + stack (size_type n = 200) + : seq_ (n) + {} + + /// Random access. + /// + /// Index 0 returns the topmost element. + T& + operator[] (size_type i) + { + return seq_[size () - 1 - i]; + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + T& + operator[] (int i) + { + return operator[] (size_type (i)); + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + const T& + operator[] (size_type i) const + { + return seq_[size () - 1 - i]; + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + const T& + operator[] (int i) const + { + return operator[] (size_type (i)); + } + + /// Steal the contents of \a t. + /// + /// Close to move-semantics. + void + push (YY_MOVE_REF (T) t) + { + seq_.push_back (T ()); + operator[] (0).move (t); + } + + /// Pop elements from the stack. + void + pop (int n = 1) YY_NOEXCEPT + { + for (; 0 < n; --n) + seq_.pop_back (); + } + + /// Pop all elements from the stack. + void + clear () YY_NOEXCEPT + { + seq_.clear (); + } + + /// Number of elements on the stack. + size_type + size () const YY_NOEXCEPT + { + return seq_.size (); + } + + /// Iterator on top of the stack (going downwards). + const_iterator + begin () const YY_NOEXCEPT + { + return seq_.rbegin (); + } + + /// Bottom of the stack. + const_iterator + end () const YY_NOEXCEPT + { + return seq_.rend (); + } + + /// Present a slice of the top of a stack. + class slice + { + public: + slice (const stack& stack, int range) + : stack_ (stack) + , range_ (range) + {} + + const T& + operator[] (int i) const + { + return stack_[range_ - i]; + } + + private: + const stack& stack_; + int range_; + }; + + private: + stack (const stack&); + stack& operator= (const stack&); + /// The wrapped container. + S seq_; + }; + + + /// Stack type. + typedef stack stack_type; + + /// The stack. + stack_type yystack_; + + /// Push a new state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param sym the symbol + /// \warning the contents of \a s.value is stolen. + void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym); + + /// Push a new look ahead token on the state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param s the state + /// \param sym the symbol (for its value and location). + /// \warning the contents of \a sym.value is stolen. + void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); + + /// Pop \a n symbols from the stack. + void yypop_ (int n = 1); + + /// Constants. + enum + { + yyeof_ = 0, + yylast_ = 3295, ///< Last index in yytable_. + yynnts_ = 16, ///< Number of nonterminal symbols. + yyfinal_ = 336, ///< Termination state number. + yyterror_ = 1, + yyerrcode_ = 256, + yyntokens_ = 340 ///< Number of tokens. + }; + + + // User arguments. + modsecurity::Parser::Driver& driver; + }; + + inline + seclang_parser::token_number_type + seclang_parser::yytranslate_ (token_type t) + { + // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to + // TOKEN-NUM as returned by yylex. + static + const token_number_type + translate_table[] = + { + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, + 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339 + }; + const unsigned user_token_number_max_ = 594; + const token_number_type undef_token_ = 2; + + if (static_cast (t) <= yyeof_) + return yyeof_; + else if (static_cast (t) <= user_token_number_max_) + return translate_table[t]; + else + return undef_token_; } + // basic_symbol. +#if 201103L <= YY_CPLUSPLUS + template + seclang_parser::basic_symbol::basic_symbol (basic_symbol&& that) + : Base (std::move (that)) + , value () + , location (std::move (that.location)) + { + switch (this->type_get ()) + { + case 144: // "Accuracy" + case 145: // "Allow" + case 146: // "Append" + case 147: // "AuditLog" + case 148: // "Block" + case 149: // "Capture" + case 150: // "Chain" + case 151: // "ACTION_CTL_AUDIT_ENGINE" + case 152: // "ACTION_CTL_AUDIT_LOG_PARTS" + case 153: // "ACTION_CTL_BDY_JSON" + case 154: // "ACTION_CTL_BDY_XML" + case 155: // "ACTION_CTL_BDY_URLENCODED" + case 156: // "ACTION_CTL_FORCE_REQ_BODY_VAR" + case 157: // "ACTION_CTL_REQUEST_BODY_ACCESS" + case 158: // "ACTION_CTL_RULE_REMOVE_BY_ID" + case 159: // "ACTION_CTL_RULE_REMOVE_BY_TAG" + case 160: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_ID" + case 161: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG" + case 162: // "Deny" + case 163: // "DeprecateVar" + case 164: // "Drop" + case 165: // "Exec" + case 166: // "ExpireVar" + case 167: // "Id" + case 168: // "InitCol" + case 169: // "Log" + case 170: // "LogData" + case 171: // "Maturity" + case 172: // "Msg" + case 173: // "MultiMatch" + case 174: // "NoAuditLog" + case 175: // "NoLog" + case 176: // "Pass" + case 177: // "Pause" + case 178: // "Phase" + case 179: // "Prepend" + case 180: // "Proxy" + case 181: // "Redirect" + case 182: // "Rev" + case 183: // "SanitiseArg" + case 184: // "SanitiseMatched" + case 185: // "SanitiseMatchedBytes" + case 186: // "SanitiseRequestHeader" + case 187: // "SanitiseResponseHeader" + case 188: // "SetEnv" + case 189: // "SetRsc" + case 190: // "SetSid" + case 191: // "SetUID" + case 192: // "Severity" + case 193: // "Skip" + case 194: // "SkipAfter" + case 195: // "Status" + case 196: // "Tag" + case 197: // "ACTION_TRANSFORMATION_BASE_64_ENCODE" + case 198: // "ACTION_TRANSFORMATION_BASE_64_DECODE" + case 199: // "ACTION_TRANSFORMATION_BASE_64_DECODE_EXT" + case 200: // "ACTION_TRANSFORMATION_CMD_LINE" + case 201: // "ACTION_TRANSFORMATION_COMPRESS_WHITESPACE" + case 202: // "ACTION_TRANSFORMATION_CSS_DECODE" + case 203: // "ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE" + case 204: // "ACTION_TRANSFORMATION_HEX_ENCODE" + case 205: // "ACTION_TRANSFORMATION_HEX_DECODE" + case 206: // "ACTION_TRANSFORMATION_HTML_ENTITY_DECODE" + case 207: // "ACTION_TRANSFORMATION_JS_DECODE" + case 208: // "ACTION_TRANSFORMATION_LENGTH" + case 209: // "ACTION_TRANSFORMATION_LOWERCASE" + case 210: // "ACTION_TRANSFORMATION_MD5" + case 211: // "ACTION_TRANSFORMATION_NONE" + case 212: // "ACTION_TRANSFORMATION_NORMALISE_PATH" + case 213: // "ACTION_TRANSFORMATION_NORMALISE_PATH_WIN" + case 214: // "ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT" + case 215: // "ACTION_TRANSFORMATION_PARITY_ODD_7_BIT" + case 216: // "ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT" + case 217: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS" + case 218: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR" + case 219: // "ACTION_TRANSFORMATION_REMOVE_NULLS" + case 220: // "ACTION_TRANSFORMATION_REMOVE_WHITESPACE" + case 221: // "ACTION_TRANSFORMATION_REPLACE_COMMENTS" + case 222: // "ACTION_TRANSFORMATION_REPLACE_NULLS" + case 223: // "ACTION_TRANSFORMATION_SHA1" + case 224: // "ACTION_TRANSFORMATION_SQL_HEX_DECODE" + case 225: // "ACTION_TRANSFORMATION_TRIM" + case 226: // "ACTION_TRANSFORMATION_TRIM_LEFT" + case 227: // "ACTION_TRANSFORMATION_TRIM_RIGHT" + case 228: // "ACTION_TRANSFORMATION_UPPERCASE" + case 229: // "ACTION_TRANSFORMATION_URL_ENCODE" + case 230: // "ACTION_TRANSFORMATION_URL_DECODE" + case 231: // "ACTION_TRANSFORMATION_URL_DECODE_UNI" + case 232: // "ACTION_TRANSFORMATION_UTF8_TO_UNICODE" + case 233: // "Ver" + case 234: // "xmlns" + case 235: // "CONFIG_COMPONENT_SIG" + case 236: // "CONFIG_CONN_ENGINE" + case 237: // "CONFIG_SEC_ARGUMENT_SEPARATOR" + case 238: // "CONFIG_SEC_WEB_APP_ID" + case 239: // "CONFIG_SEC_SERVER_SIG" + case 240: // "CONFIG_DIR_AUDIT_DIR" + case 241: // "CONFIG_DIR_AUDIT_DIR_MOD" + case 242: // "CONFIG_DIR_AUDIT_ENG" + case 243: // "CONFIG_DIR_AUDIT_FLE_MOD" + case 244: // "CONFIG_DIR_AUDIT_LOG" + case 245: // "CONFIG_DIR_AUDIT_LOG2" + case 246: // "CONFIG_DIR_AUDIT_LOG_P" + case 247: // "CONFIG_DIR_AUDIT_STS" + case 248: // "CONFIG_DIR_AUDIT_TPE" + case 249: // "CONFIG_DIR_DEBUG_LOG" + case 250: // "CONFIG_DIR_DEBUG_LVL" + case 251: // "CONFIG_SEC_CACHE_TRANSFORMATIONS" + case 252: // "CONFIG_SEC_DISABLE_BACKEND_COMPRESS" + case 253: // "CONFIG_SEC_HASH_ENGINE" + case 254: // "CONFIG_SEC_HASH_KEY" + case 255: // "CONFIG_SEC_HASH_PARAM" + case 256: // "CONFIG_SEC_HASH_METHOD_RX" + case 257: // "CONFIG_SEC_HASH_METHOD_PM" + case 258: // "CONFIG_SEC_CHROOT_DIR" + case 259: // "CONFIG_DIR_GEO_DB" + case 260: // "CONFIG_DIR_GSB_DB" + case 261: // "CONFIG_SEC_GUARDIAN_LOG" + case 262: // "CONFIG_DIR_PCRE_MATCH_LIMIT" + case 263: // "CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION" + case 264: // "CONFIG_SEC_CONN_R_STATE_LIMIT" + case 265: // "CONFIG_SEC_CONN_W_STATE_LIMIT" + case 266: // "CONFIG_SEC_SENSOR_ID" + case 267: // "CONFIG_DIR_REQ_BODY" + case 268: // "CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT" + case 269: // "CONFIG_DIR_REQ_BODY_LIMIT" + case 270: // "CONFIG_DIR_REQ_BODY_LIMIT_ACTION" + case 271: // "CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT" + case 272: // "CONFIG_DIR_RES_BODY" + case 273: // "CONFIG_DIR_RES_BODY_LIMIT" + case 274: // "CONFIG_DIR_RES_BODY_LIMIT_ACTION" + case 275: // "CONFIG_SEC_RULE_INHERITANCE" + case 276: // "CONFIG_SEC_RULE_PERF_TIME" + case 277: // "CONFIG_DIR_RULE_ENG" + case 278: // "CONFIG_DIR_SEC_ACTION" + case 279: // "CONFIG_DIR_SEC_DEFAULT_ACTION" + case 280: // "CONFIG_DIR_SEC_MARKER" + case 281: // "CONFIG_DIR_UNICODE_MAP_FILE" + case 282: // "CONFIG_DIR_UNICODE_CODE_PAGE" + case 283: // "CONFIG_SEC_COLLECTION_TIMEOUT" + case 284: // "CONFIG_SEC_HTTP_BLKEY" + case 285: // "CONFIG_SEC_INTERCEPT_ON_ERROR" + case 286: // "CONFIG_SEC_REMOTE_RULES_FAIL_ACTION" + case 287: // "CONFIG_SEC_RULE_REMOVE_BY_ID" + case 288: // "CONFIG_SEC_RULE_REMOVE_BY_MSG" + case 289: // "CONFIG_SEC_RULE_REMOVE_BY_TAG" + case 290: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG" + case 291: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG" + case 292: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID" + case 293: // "CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID" + case 294: // "CONFIG_UPDLOAD_KEEP_FILES" + case 295: // "CONFIG_UPDLOAD_SAVE_TMP_FILES" + case 296: // "CONFIG_UPLOAD_DIR" + case 297: // "CONFIG_UPLOAD_FILE_LIMIT" + case 298: // "CONFIG_UPLOAD_FILE_MODE" + case 299: // "CONFIG_VALUE_ABORT" + case 300: // "CONFIG_VALUE_DETC" + case 301: // "CONFIG_VALUE_HTTPS" + case 302: // "CONFIG_VALUE_OFF" + case 303: // "CONFIG_VALUE_ON" + case 304: // "CONFIG_VALUE_PARALLEL" + case 305: // "CONFIG_VALUE_PROCESS_PARTIAL" + case 306: // "CONFIG_VALUE_REJECT" + case 307: // "CONFIG_VALUE_RELEVANT_ONLY" + case 308: // "CONFIG_VALUE_SERIAL" + case 309: // "CONFIG_VALUE_WARN" + case 310: // "CONFIG_XML_EXTERNAL_ENTITY" + case 311: // "CONGIG_DIR_RESPONSE_BODY_MP" + case 312: // "CONGIG_DIR_SEC_ARG_SEP" + case 313: // "CONGIG_DIR_SEC_COOKIE_FORMAT" + case 314: // "CONFIG_SEC_COOKIEV0_SEPARATOR" + case 315: // "CONGIG_DIR_SEC_DATA_DIR" + case 316: // "CONGIG_DIR_SEC_STATUS_ENGINE" + case 317: // "CONFIG_SEC_STREAM_IN_BODY_INSPECTION" + case 318: // "CONFIG_SEC_STREAM_OUT_BODY_INSPECTION" + case 319: // "CONGIG_DIR_SEC_TMP_DIR" + case 320: // "DIRECTIVE" + case 321: // "DIRECTIVE_SECRULESCRIPT" + case 322: // "FREE_TEXT_QUOTE_MACRO_EXPANSION" + case 323: // "QUOTATION_MARK" + case 324: // "RUN_TIME_VAR_BLD" + case 325: // "RUN_TIME_VAR_DUR" + case 326: // "RUN_TIME_VAR_HSV" + case 327: // "RUN_TIME_VAR_REMOTE_USER" + case 328: // "RUN_TIME_VAR_TIME" + case 329: // "RUN_TIME_VAR_TIME_DAY" + case 330: // "RUN_TIME_VAR_TIME_EPOCH" + case 331: // "RUN_TIME_VAR_TIME_HOUR" + case 332: // "RUN_TIME_VAR_TIME_MIN" + case 333: // "RUN_TIME_VAR_TIME_MON" + case 334: // "RUN_TIME_VAR_TIME_SEC" + case 335: // "RUN_TIME_VAR_TIME_WDAY" + case 336: // "RUN_TIME_VAR_TIME_YEAR" + case 337: // "VARIABLE" + case 338: // "Dictionary element" + case 339: // "Dictionary element, selected by regexp" + value.move< std::string > (std::move (that.value)); + break; + + case 346: // op + case 347: // op_before_init + value.move< std::unique_ptr > (std::move (that.value)); + break; + + case 355: // run_time_string + value.move< std::unique_ptr > (std::move (that.value)); + break; + + case 352: // var + value.move< std::unique_ptr > (std::move (that.value)); + break; + + case 353: // act + case 354: // setvar_action + value.move< std::unique_ptr > (std::move (that.value)); + break; + + case 349: // variables + case 350: // variables_pre_process + case 351: // variables_may_be_quoted + value.move< std::unique_ptr > > > (std::move (that.value)); + break; + + case 344: // actions + case 345: // actions_may_quoted + value.move< std::unique_ptr > > > (std::move (that.value)); + break; + + default: + break; + } + + } +#endif + + template + seclang_parser::basic_symbol::basic_symbol (const basic_symbol& that) + : Base (that) + , value () + , location (that.location) + { + switch (this->type_get ()) + { + case 144: // "Accuracy" + case 145: // "Allow" + case 146: // "Append" + case 147: // "AuditLog" + case 148: // "Block" + case 149: // "Capture" + case 150: // "Chain" + case 151: // "ACTION_CTL_AUDIT_ENGINE" + case 152: // "ACTION_CTL_AUDIT_LOG_PARTS" + case 153: // "ACTION_CTL_BDY_JSON" + case 154: // "ACTION_CTL_BDY_XML" + case 155: // "ACTION_CTL_BDY_URLENCODED" + case 156: // "ACTION_CTL_FORCE_REQ_BODY_VAR" + case 157: // "ACTION_CTL_REQUEST_BODY_ACCESS" + case 158: // "ACTION_CTL_RULE_REMOVE_BY_ID" + case 159: // "ACTION_CTL_RULE_REMOVE_BY_TAG" + case 160: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_ID" + case 161: // "ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG" + case 162: // "Deny" + case 163: // "DeprecateVar" + case 164: // "Drop" + case 165: // "Exec" + case 166: // "ExpireVar" + case 167: // "Id" + case 168: // "InitCol" + case 169: // "Log" + case 170: // "LogData" + case 171: // "Maturity" + case 172: // "Msg" + case 173: // "MultiMatch" + case 174: // "NoAuditLog" + case 175: // "NoLog" + case 176: // "Pass" + case 177: // "Pause" + case 178: // "Phase" + case 179: // "Prepend" + case 180: // "Proxy" + case 181: // "Redirect" + case 182: // "Rev" + case 183: // "SanitiseArg" + case 184: // "SanitiseMatched" + case 185: // "SanitiseMatchedBytes" + case 186: // "SanitiseRequestHeader" + case 187: // "SanitiseResponseHeader" + case 188: // "SetEnv" + case 189: // "SetRsc" + case 190: // "SetSid" + case 191: // "SetUID" + case 192: // "Severity" + case 193: // "Skip" + case 194: // "SkipAfter" + case 195: // "Status" + case 196: // "Tag" + case 197: // "ACTION_TRANSFORMATION_BASE_64_ENCODE" + case 198: // "ACTION_TRANSFORMATION_BASE_64_DECODE" + case 199: // "ACTION_TRANSFORMATION_BASE_64_DECODE_EXT" + case 200: // "ACTION_TRANSFORMATION_CMD_LINE" + case 201: // "ACTION_TRANSFORMATION_COMPRESS_WHITESPACE" + case 202: // "ACTION_TRANSFORMATION_CSS_DECODE" + case 203: // "ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE" + case 204: // "ACTION_TRANSFORMATION_HEX_ENCODE" + case 205: // "ACTION_TRANSFORMATION_HEX_DECODE" + case 206: // "ACTION_TRANSFORMATION_HTML_ENTITY_DECODE" + case 207: // "ACTION_TRANSFORMATION_JS_DECODE" + case 208: // "ACTION_TRANSFORMATION_LENGTH" + case 209: // "ACTION_TRANSFORMATION_LOWERCASE" + case 210: // "ACTION_TRANSFORMATION_MD5" + case 211: // "ACTION_TRANSFORMATION_NONE" + case 212: // "ACTION_TRANSFORMATION_NORMALISE_PATH" + case 213: // "ACTION_TRANSFORMATION_NORMALISE_PATH_WIN" + case 214: // "ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT" + case 215: // "ACTION_TRANSFORMATION_PARITY_ODD_7_BIT" + case 216: // "ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT" + case 217: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS" + case 218: // "ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR" + case 219: // "ACTION_TRANSFORMATION_REMOVE_NULLS" + case 220: // "ACTION_TRANSFORMATION_REMOVE_WHITESPACE" + case 221: // "ACTION_TRANSFORMATION_REPLACE_COMMENTS" + case 222: // "ACTION_TRANSFORMATION_REPLACE_NULLS" + case 223: // "ACTION_TRANSFORMATION_SHA1" + case 224: // "ACTION_TRANSFORMATION_SQL_HEX_DECODE" + case 225: // "ACTION_TRANSFORMATION_TRIM" + case 226: // "ACTION_TRANSFORMATION_TRIM_LEFT" + case 227: // "ACTION_TRANSFORMATION_TRIM_RIGHT" + case 228: // "ACTION_TRANSFORMATION_UPPERCASE" + case 229: // "ACTION_TRANSFORMATION_URL_ENCODE" + case 230: // "ACTION_TRANSFORMATION_URL_DECODE" + case 231: // "ACTION_TRANSFORMATION_URL_DECODE_UNI" + case 232: // "ACTION_TRANSFORMATION_UTF8_TO_UNICODE" + case 233: // "Ver" + case 234: // "xmlns" + case 235: // "CONFIG_COMPONENT_SIG" + case 236: // "CONFIG_CONN_ENGINE" + case 237: // "CONFIG_SEC_ARGUMENT_SEPARATOR" + case 238: // "CONFIG_SEC_WEB_APP_ID" + case 239: // "CONFIG_SEC_SERVER_SIG" + case 240: // "CONFIG_DIR_AUDIT_DIR" + case 241: // "CONFIG_DIR_AUDIT_DIR_MOD" + case 242: // "CONFIG_DIR_AUDIT_ENG" + case 243: // "CONFIG_DIR_AUDIT_FLE_MOD" + case 244: // "CONFIG_DIR_AUDIT_LOG" + case 245: // "CONFIG_DIR_AUDIT_LOG2" + case 246: // "CONFIG_DIR_AUDIT_LOG_P" + case 247: // "CONFIG_DIR_AUDIT_STS" + case 248: // "CONFIG_DIR_AUDIT_TPE" + case 249: // "CONFIG_DIR_DEBUG_LOG" + case 250: // "CONFIG_DIR_DEBUG_LVL" + case 251: // "CONFIG_SEC_CACHE_TRANSFORMATIONS" + case 252: // "CONFIG_SEC_DISABLE_BACKEND_COMPRESS" + case 253: // "CONFIG_SEC_HASH_ENGINE" + case 254: // "CONFIG_SEC_HASH_KEY" + case 255: // "CONFIG_SEC_HASH_PARAM" + case 256: // "CONFIG_SEC_HASH_METHOD_RX" + case 257: // "CONFIG_SEC_HASH_METHOD_PM" + case 258: // "CONFIG_SEC_CHROOT_DIR" + case 259: // "CONFIG_DIR_GEO_DB" + case 260: // "CONFIG_DIR_GSB_DB" + case 261: // "CONFIG_SEC_GUARDIAN_LOG" + case 262: // "CONFIG_DIR_PCRE_MATCH_LIMIT" + case 263: // "CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION" + case 264: // "CONFIG_SEC_CONN_R_STATE_LIMIT" + case 265: // "CONFIG_SEC_CONN_W_STATE_LIMIT" + case 266: // "CONFIG_SEC_SENSOR_ID" + case 267: // "CONFIG_DIR_REQ_BODY" + case 268: // "CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT" + case 269: // "CONFIG_DIR_REQ_BODY_LIMIT" + case 270: // "CONFIG_DIR_REQ_BODY_LIMIT_ACTION" + case 271: // "CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT" + case 272: // "CONFIG_DIR_RES_BODY" + case 273: // "CONFIG_DIR_RES_BODY_LIMIT" + case 274: // "CONFIG_DIR_RES_BODY_LIMIT_ACTION" + case 275: // "CONFIG_SEC_RULE_INHERITANCE" + case 276: // "CONFIG_SEC_RULE_PERF_TIME" + case 277: // "CONFIG_DIR_RULE_ENG" + case 278: // "CONFIG_DIR_SEC_ACTION" + case 279: // "CONFIG_DIR_SEC_DEFAULT_ACTION" + case 280: // "CONFIG_DIR_SEC_MARKER" + case 281: // "CONFIG_DIR_UNICODE_MAP_FILE" + case 282: // "CONFIG_DIR_UNICODE_CODE_PAGE" + case 283: // "CONFIG_SEC_COLLECTION_TIMEOUT" + case 284: // "CONFIG_SEC_HTTP_BLKEY" + case 285: // "CONFIG_SEC_INTERCEPT_ON_ERROR" + case 286: // "CONFIG_SEC_REMOTE_RULES_FAIL_ACTION" + case 287: // "CONFIG_SEC_RULE_REMOVE_BY_ID" + case 288: // "CONFIG_SEC_RULE_REMOVE_BY_MSG" + case 289: // "CONFIG_SEC_RULE_REMOVE_BY_TAG" + case 290: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG" + case 291: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG" + case 292: // "CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID" + case 293: // "CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID" + case 294: // "CONFIG_UPDLOAD_KEEP_FILES" + case 295: // "CONFIG_UPDLOAD_SAVE_TMP_FILES" + case 296: // "CONFIG_UPLOAD_DIR" + case 297: // "CONFIG_UPLOAD_FILE_LIMIT" + case 298: // "CONFIG_UPLOAD_FILE_MODE" + case 299: // "CONFIG_VALUE_ABORT" + case 300: // "CONFIG_VALUE_DETC" + case 301: // "CONFIG_VALUE_HTTPS" + case 302: // "CONFIG_VALUE_OFF" + case 303: // "CONFIG_VALUE_ON" + case 304: // "CONFIG_VALUE_PARALLEL" + case 305: // "CONFIG_VALUE_PROCESS_PARTIAL" + case 306: // "CONFIG_VALUE_REJECT" + case 307: // "CONFIG_VALUE_RELEVANT_ONLY" + case 308: // "CONFIG_VALUE_SERIAL" + case 309: // "CONFIG_VALUE_WARN" + case 310: // "CONFIG_XML_EXTERNAL_ENTITY" + case 311: // "CONGIG_DIR_RESPONSE_BODY_MP" + case 312: // "CONGIG_DIR_SEC_ARG_SEP" + case 313: // "CONGIG_DIR_SEC_COOKIE_FORMAT" + case 314: // "CONFIG_SEC_COOKIEV0_SEPARATOR" + case 315: // "CONGIG_DIR_SEC_DATA_DIR" + case 316: // "CONGIG_DIR_SEC_STATUS_ENGINE" + case 317: // "CONFIG_SEC_STREAM_IN_BODY_INSPECTION" + case 318: // "CONFIG_SEC_STREAM_OUT_BODY_INSPECTION" + case 319: // "CONGIG_DIR_SEC_TMP_DIR" + case 320: // "DIRECTIVE" + case 321: // "DIRECTIVE_SECRULESCRIPT" + case 322: // "FREE_TEXT_QUOTE_MACRO_EXPANSION" + case 323: // "QUOTATION_MARK" + case 324: // "RUN_TIME_VAR_BLD" + case 325: // "RUN_TIME_VAR_DUR" + case 326: // "RUN_TIME_VAR_HSV" + case 327: // "RUN_TIME_VAR_REMOTE_USER" + case 328: // "RUN_TIME_VAR_TIME" + case 329: // "RUN_TIME_VAR_TIME_DAY" + case 330: // "RUN_TIME_VAR_TIME_EPOCH" + case 331: // "RUN_TIME_VAR_TIME_HOUR" + case 332: // "RUN_TIME_VAR_TIME_MIN" + case 333: // "RUN_TIME_VAR_TIME_MON" + case 334: // "RUN_TIME_VAR_TIME_SEC" + case 335: // "RUN_TIME_VAR_TIME_WDAY" + case 336: // "RUN_TIME_VAR_TIME_YEAR" + case 337: // "VARIABLE" + case 338: // "Dictionary element" + case 339: // "Dictionary element, selected by regexp" + value.copy< std::string > (YY_MOVE (that.value)); + break; + + case 346: // op + case 347: // op_before_init + value.copy< std::unique_ptr > (YY_MOVE (that.value)); + break; + + case 355: // run_time_string + value.copy< std::unique_ptr > (YY_MOVE (that.value)); + break; + + case 352: // var + value.copy< std::unique_ptr > (YY_MOVE (that.value)); + break; + + case 353: // act + case 354: // setvar_action + value.copy< std::unique_ptr > (YY_MOVE (that.value)); + break; + + case 349: // variables + case 350: // variables_pre_process + case 351: // variables_may_be_quoted + value.copy< std::unique_ptr > > > (YY_MOVE (that.value)); + break; + + case 344: // actions + case 345: // actions_may_quoted + value.copy< std::unique_ptr > > > (YY_MOVE (that.value)); + break; + + default: + break; + } + + } + + + template bool - seclang_parser::basic_symbol::empty () const + seclang_parser::basic_symbol::empty () const YY_NOEXCEPT { return Base::type_get () == empty_symbol; } @@ -3952,9 +8019,18 @@ namespace yy { : type (empty_symbol) {} +#if 201103L <= YY_CPLUSPLUS inline - seclang_parser::by_type::by_type (const by_type& other) - : type (other.type) + seclang_parser::by_type::by_type (by_type&& that) + : type (that.type) + { + that.clear (); + } +#endif + + inline + seclang_parser::by_type::by_type (const by_type& that) + : type (that.type) {} inline @@ -3979,14 +8055,14 @@ namespace yy { inline int - seclang_parser::by_type::type_get () const + seclang_parser::by_type::type_get () const YY_NOEXCEPT { return type; } inline seclang_parser::token_type - seclang_parser::by_type::token () const + seclang_parser::by_type::token () const YY_NOEXCEPT { // YYTOKNUM[NUM] -- (External) token number corresponding to the // (internal) symbol number NUM (which must be that of a token). */ @@ -4029,2380 +8105,12 @@ namespace yy { 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594 }; - return static_cast (yytoken_number_[type]); + return token_type (yytoken_number_[type]); } - // Implementation of make_symbol for each symbol type. - inline - seclang_parser::symbol_type - seclang_parser::make_END (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_END, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_COMMA (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_COMMA, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_CONTENT_INJECTION (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_CONTENT_INJECTION, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP_CLEAR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_PIPE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_PIPE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_NEW_LINE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_NEW_LINE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VAR_COUNT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VAR_COUNT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VAR_EXCLUSION (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VAR_EXCLUSION, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_POST (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_POST, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_GET (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_GET, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES_SIZES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES_SIZES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES_TMP_CONTENT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES_TMP_CONTENT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_FILENAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_FILENAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_NAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_NAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MATCHED_VARS_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MATCHED_VARS_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MATCHED_VARS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MATCHED_VARS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_COOKIES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_HEADERS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_HEADERS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_GEO (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_GEO, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_COOKIES_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_COOKIES_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_COMBINED_SIZE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_COMBINED_SIZE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_GET_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_GET_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RULE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RULE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_ARGS_POST_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_ARGS_POST_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_AUTH_TYPE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_AUTH_TYPE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES_COMBINED_SIZE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES_COMBINED_SIZE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FILES_TMP_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FILES_TMP_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FULL_REQUEST (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FULL_REQUEST, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_FULL_REQUEST_LENGTH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_FULL_REQUEST_LENGTH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_INBOUND_DATA_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_INBOUND_DATA_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MATCHED_VAR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MATCHED_VAR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MATCHED_VAR_NAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MATCHED_VAR_NAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_BOUNDARY_QUOTED (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_QUOTED, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_BOUNDARY_WHITESPACE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_CRLF_LF_LINES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_CRLF_LF_LINES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_DATA_AFTER (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_AFTER, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_DATA_BEFORE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_DATA_BEFORE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_FILE_LIMIT_EXCEEDED, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_HEADER_FOLDING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_HEADER_FOLDING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_HEADER_FOLDING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_INVALID_PART (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_PART, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_INVALID_QUOTING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_INVALID_QUOTING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_LF_LINE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_LF_LINE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_MISSING_SEMICOLON (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_MISSING_SEMICOLON, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_SEMICOLON_MISSING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_SEMICOLON_MISSING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_STRICT_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_STRICT_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_MULTIPART_UNMATCHED_BOUNDARY, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_OUTBOUND_DATA_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_OUTBOUND_DATA_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_PATH_INFO (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_PATH_INFO, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_QUERY_STRING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_QUERY_STRING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REMOTE_ADDR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REMOTE_ADDR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REMOTE_HOST (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REMOTE_HOST, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REMOTE_PORT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REMOTE_PORT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQBODY_ERROR_MSG (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR_MSG, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQBODY_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQBODY_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR_MSG, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQBODY_PROCESSOR_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQBODY_PROCESSOR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQBODY_PROCESSOR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_BASENAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_BASENAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_BODY_LENGTH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_BODY_LENGTH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_BODY (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_BODY, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_FILE_NAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_FILE_NAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_HEADERS_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_HEADERS_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_LINE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_LINE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_METHOD (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_METHOD, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_PROTOCOL (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_PROTOCOL, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_URI_RAW (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_URI_RAW, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_REQUEST_URI (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_REQUEST_URI, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESOURCE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESOURCE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_BODY (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_BODY, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_CONTENT_LENGTH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_LENGTH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_CONTENT_TYPE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_CONTENT_TYPE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_HEADERS_NAMES (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_HEADERS_NAMES, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_PROTOCOL (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_PROTOCOL, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_RESPONSE_STATUS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_RESPONSE_STATUS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_SERVER_ADDR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_SERVER_ADDR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_SERVER_NAME (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_SERVER_NAME, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_SERVER_PORT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_SERVER_PORT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_SESSION_ID (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_SESSION_ID, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_UNIQUE_ID (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_UNIQUE_ID, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_URL_ENCODED_ERROR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_URL_ENCODED_ERROR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_USER_ID (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_USER_ID, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_WEB_APP_ID (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_WEB_APP_ID, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_STATUS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_STATUS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_STATUS_LINE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_STATUS_LINE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_IP (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_IP, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_GLOBAL (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_GLOBAL, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_TX (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_TX, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_SESSION (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_SESSION, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE_USER (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE_USER, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_ENV (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_ENV, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_XML (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_XML, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SETVAR (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SETVAR, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_SETVAR_OPERATION_EQUALS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_SETVAR_OPERATION_EQUALS_PLUS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_PLUS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_SETVAR_OPERATION_EQUALS_MINUS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_SETVAR_OPERATION_EQUALS_MINUS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_NOT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_NOT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_BEGINS_WITH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_BEGINS_WITH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_CONTAINS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_CONTAINS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_CONTAINS_WORD (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_CONTAINS_WORD, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_DETECT_SQLI (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_DETECT_SQLI, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_DETECT_XSS (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_DETECT_XSS, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_ENDS_WITH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_ENDS_WITH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_EQ (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_EQ, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_FUZZY_HASH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_FUZZY_HASH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_GEOLOOKUP (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_GEOLOOKUP, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_GE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_GE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_GSB_LOOKUP (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_GSB_LOOKUP, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_GT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_GT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_INSPECT_FILE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_INSPECT_FILE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_IP_MATCH_FROM_FILE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_IP_MATCH_FROM_FILE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_IP_MATCH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_IP_MATCH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_LE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_LE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_LT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_LT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_PM_FROM_FILE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_PM_FROM_FILE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_PM (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_PM, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_RBL (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_RBL, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_RSUB (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_RSUB, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_RX_CONTENT_ONLY (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_RX_CONTENT_ONLY, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_RX (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_RX, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_STR_EQ (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_STR_EQ, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_STR_MATCH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_STR_MATCH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_UNCONDITIONAL_MATCH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_UNCONDITIONAL_MATCH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_BYTE_RANGE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_BYTE_RANGE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_DTD (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_DTD, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_HASH (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_HASH, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_SCHEMA (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_SCHEMA, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_URL_ENCODING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_URL_ENCODING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VALIDATE_UTF8_ENCODING (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VALIDATE_UTF8_ENCODING, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VERIFY_CC (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VERIFY_CC, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VERIFY_CPF (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VERIFY_CPF, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_VERIFY_SSN (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_VERIFY_SSN, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_OPERATOR_WITHIN (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_OPERATOR_WITHIN, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_LOG_FMT (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_FMT, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_JSON (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_JSON, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_NATIVE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_NATIVE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_RULE_ENGINE (YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_RULE_ENGINE, YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_ACCURACY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_ACCURACY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_ALLOW (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_ALLOW, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_APPEND (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_APPEND, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_AUDIT_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_BLOCK (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_BLOCK, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CAPTURE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CAPTURE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CHAIN (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CHAIN, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_AUDIT_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_AUDIT_ENGINE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_AUDIT_LOG_PARTS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_AUDIT_LOG_PARTS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_BDY_JSON (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_BDY_JSON, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_BDY_XML (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_BDY_XML, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_BDY_URLENCODED (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_BDY_URLENCODED, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_FORCE_REQ_BODY_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_FORCE_REQ_BODY_VAR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_REQUEST_BODY_ACCESS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_REQUEST_BODY_ACCESS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_RULE_REMOVE_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_RULE_REMOVE_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_BY_TAG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_CTL_RULE_REMOVE_TARGET_BY_TAG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_DENY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_DENY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_DEPRECATE_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_DEPRECATE_VAR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_DROP (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_DROP, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_EXEC (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_EXEC, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_EXPIRE_VAR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_EXPIRE_VAR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_INITCOL (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_INITCOL, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_LOG_DATA (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_LOG_DATA, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_MATURITY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_MATURITY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_MSG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_MULTI_MATCH (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_MULTI_MATCH, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_NO_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_NO_AUDIT_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_NO_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_NO_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_PASS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_PASS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_PAUSE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_PAUSE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_PHASE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_PHASE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_PREPEND (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_PREPEND, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_PROXY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_PROXY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_REDIRECT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_REDIRECT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_REV (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_REV, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SANITISE_ARG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SANITISE_ARG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SANITISE_MATCHED (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SANITISE_MATCHED, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SANITISE_MATCHED_BYTES (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SANITISE_MATCHED_BYTES, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SANITISE_REQUEST_HEADER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SANITISE_REQUEST_HEADER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SANITISE_RESPONSE_HEADER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SANITISE_RESPONSE_HEADER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SETENV (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SETENV, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SETRSC (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SETRSC, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SETSID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SETSID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SETUID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SETUID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SEVERITY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SEVERITY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SKIP (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SKIP, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_SKIP_AFTER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_SKIP_AFTER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_STATUS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_STATUS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TAG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_BASE_64_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_ENCODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_BASE_64_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_BASE_64_DECODE_EXT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_CMD_LINE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_CMD_LINE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_COMPRESS_WHITESPACE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_CSS_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_CSS_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_ESCAPE_SEQ_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_HEX_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_ENCODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_HEX_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_HEX_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_HTML_ENTITY_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_JS_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_JS_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_LENGTH (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_LENGTH, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_LOWERCASE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_LOWERCASE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_MD5 (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_MD5, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_NONE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_NONE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_NORMALISE_PATH (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_NORMALISE_PATH_WIN, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_EVEN_7_BIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ODD_7_BIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_PARITY_ZERO_7_BIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REMOVE_COMMENTS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_COMMENTS_CHAR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REMOVE_NULLS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_NULLS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REMOVE_WHITESPACE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REMOVE_WHITESPACE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REPLACE_COMMENTS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_COMMENTS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_REPLACE_NULLS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_REPLACE_NULLS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_SHA1 (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_SHA1, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_SQL_HEX_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_SQL_HEX_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_TRIM (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_TRIM_LEFT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_LEFT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_TRIM_RIGHT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_TRIM_RIGHT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_UPPERCASE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_UPPERCASE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_URL_ENCODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_ENCODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_URL_DECODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_URL_DECODE_UNI (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_URL_DECODE_UNI, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_TRANSFORMATION_UTF8_TO_UNICODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_TRANSFORMATION_UTF8_TO_UNICODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_VER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_VER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_ACTION_XMLNS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_ACTION_XMLNS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_COMPONENT_SIG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_COMPONENT_SIG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_CONN_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_CONN_ENGINE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_ARGUMENT_SEPARATOR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_ARGUMENT_SEPARATOR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_WEB_APP_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_WEB_APP_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_SERVER_SIG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_SERVER_SIG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_DIR_MOD (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_DIR_MOD, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_ENG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_ENG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_FLE_MOD (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_FLE_MOD, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_LOG2 (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG2, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_LOG_P (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_LOG_P, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_STS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_STS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_AUDIT_TPE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_AUDIT_TPE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_DEBUG_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_DEBUG_LVL (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_DEBUG_LVL, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_CACHE_TRANSFORMATIONS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_CACHE_TRANSFORMATIONS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_DISABLE_BACKEND_COMPRESS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_DISABLE_BACKEND_COMPRESS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HASH_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HASH_ENGINE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HASH_KEY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HASH_KEY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HASH_PARAM (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HASH_PARAM, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HASH_METHOD_RX (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_RX, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HASH_METHOD_PM (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HASH_METHOD_PM, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_CHROOT_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_CHROOT_DIR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_GEO_DB (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_GEO_DB, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_GSB_DB (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_GSB_DB, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_GUARDIAN_LOG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_GUARDIAN_LOG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_PCRE_MATCH_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_PCRE_MATCH_LIMIT_RECURSION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_CONN_R_STATE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_CONN_R_STATE_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_CONN_W_STATE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_CONN_W_STATE_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_SENSOR_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_SENSOR_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_REQ_BODY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_IN_MEMORY_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_REQ_BODY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_REQ_BODY_LIMIT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_LIMIT_ACTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_REQ_BODY_NO_FILES_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_RES_BODY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_RES_BODY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_RES_BODY_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_RES_BODY_LIMIT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_RES_BODY_LIMIT_ACTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_INHERITANCE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_INHERITANCE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_PERF_TIME (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_PERF_TIME, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_RULE_ENG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_RULE_ENG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_SEC_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_SEC_ACTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_SEC_DEFAULT_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_SEC_DEFAULT_ACTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_SEC_MARKER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_SEC_MARKER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_UNICODE_MAP_FILE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_UNICODE_MAP_FILE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_DIR_UNICODE_CODE_PAGE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_DIR_UNICODE_CODE_PAGE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_COLLECTION_TIMEOUT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_COLLECTION_TIMEOUT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_HTTP_BLKEY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_HTTP_BLKEY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_INTERCEPT_ON_ERROR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_INTERCEPT_ON_ERROR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_REMOTE_RULES_FAIL_ACTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_REMOVE_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_REMOVE_BY_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_MSG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_REMOVE_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_REMOVE_BY_TAG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_TAG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_MSG, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_TARGET_BY_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_RULE_UPDATE_ACTION_BY_ID, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_UPDLOAD_KEEP_FILES (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_UPDLOAD_KEEP_FILES, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_UPDLOAD_SAVE_TMP_FILES (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_UPDLOAD_SAVE_TMP_FILES, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_UPLOAD_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_UPLOAD_DIR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_UPLOAD_FILE_LIMIT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_LIMIT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_UPLOAD_FILE_MODE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_UPLOAD_FILE_MODE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_ABORT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_ABORT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_DETC (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_DETC, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_HTTPS (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_HTTPS, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_OFF (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_OFF, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_ON (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_ON, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_PARALLEL (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_PARALLEL, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_PROCESS_PARTIAL (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_PROCESS_PARTIAL, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_REJECT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_REJECT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_RELEVANT_ONLY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_RELEVANT_ONLY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_SERIAL (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_SERIAL, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_VALUE_WARN (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_VALUE_WARN, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_XML_EXTERNAL_ENTITY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_XML_EXTERNAL_ENTITY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_RESPONSE_BODY_MP (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_RESPONSE_BODY_MP, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_SEC_ARG_SEP (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_SEC_ARG_SEP, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_SEC_COOKIE_FORMAT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_SEC_COOKIE_FORMAT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_COOKIEV0_SEPARATOR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_COOKIEV0_SEPARATOR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_SEC_DATA_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_SEC_DATA_DIR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_SEC_STATUS_ENGINE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_SEC_STATUS_ENGINE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_STREAM_IN_BODY_INSPECTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_STREAM_IN_BODY_INSPECTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONFIG_SEC_STREAM_OUT_BODY_INSPECTION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_CONGIG_DIR_SEC_TMP_DIR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_CONGIG_DIR_SEC_TMP_DIR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_DIRECTIVE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_DIRECTIVE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_DIRECTIVE_SECRULESCRIPT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_DIRECTIVE_SECRULESCRIPT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_FREE_TEXT_QUOTE_MACRO_EXPANSION (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_FREE_TEXT_QUOTE_MACRO_EXPANSION, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_QUOTATION_MARK (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_QUOTATION_MARK, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_BLD (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_BLD, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_DUR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_DUR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_HSV (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_HSV, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_REMOTE_USER (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_REMOTE_USER, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_DAY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_DAY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_EPOCH (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_EPOCH, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_HOUR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_HOUR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_MIN (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MIN, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_MON (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_MON, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_SEC (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_SEC, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_WDAY (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_WDAY, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_RUN_TIME_VAR_TIME_YEAR (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_RUN_TIME_VAR_TIME_YEAR, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_VARIABLE (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_VARIABLE, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_DICT_ELEMENT (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_DICT_ELEMENT, YY_MOVE (v), YY_MOVE (l)); - } - - inline - seclang_parser::symbol_type - seclang_parser::make_DICT_ELEMENT_REGEXP (YY_COPY (std::string) v, YY_COPY (location_type) l) - { - return symbol_type (token::TOK_DICT_ELEMENT_REGEXP, YY_MOVE (v), YY_MOVE (l)); - } - - } // yy -#line 6406 "seclang-parser.hh" // lalr1.cc:403 +#line 8114 "seclang-parser.hh" // lalr1.cc:401 diff --git a/src/parser/stack.hh b/src/parser/stack.hh index 1ea27022..e9db4292 100644 --- a/src/parser/stack.hh +++ b/src/parser/stack.hh @@ -1,4 +1,4 @@ -// A Bison parser, made by GNU Bison 3.2. +// A Bison parser, made by GNU Bison 3.3.2. // Starting with Bison 3.2, this file is useless: the structure it // used to define is now defined with the parser itself.