]> granicus.if.org Git - icinga2/commitdiff
Don't allow asterisks in identifiers.
authorGunnar Beutner <gunnar.beutner@netways.de>
Tue, 25 Jun 2013 08:06:58 +0000 (10:06 +0200)
committerGunnar Beutner <gunnar.beutner@netways.de>
Tue, 25 Jun 2013 08:27:16 +0000 (10:27 +0200)
lib/config/config_lexer.cc
lib/config/config_lexer.ll

index 6fa32e02143991857d60f4e839da3a3b343f15d9..499449208db0217698db05295f666041a921e250 100644 (file)
@@ -382,11 +382,11 @@ struct yy_trans_info
 static yyconst flex_int16_t yy_accept[196] =
     {   0,
         0,    0,    0,    0,    0,    0,    0,    0,   59,   57,
-       21,   21,    1,   57,   45,   57,   57,   57,   51,   57,
+       21,   21,    1,   57,   57,   57,   57,   57,   51,   57,
        52,   45,   45,   45,   45,   45,   45,   45,   45,   45,
        45,   45,   57,   18,   19,   12,    3,    2,   58,   15,
-       15,    0,    0,    0,   45,   55,   53,   51,   54,   16,
-       20,   56,    0,   48,   49,   50,    0,   46,   45,   45,
+       15,    0,    0,    0,   55,   53,   51,   54,   16,   20,
+       56,    0,   48,   49,   50,    0,   46,   45,   45,   45,
        45,   45,   45,   45,   45,   45,   45,   45,   45,   45,
        45,   45,   45,   45,   45,   45,    0,   17,   12,   11,
         4,    5,    9,   10,    6,    8,    7,    0,    0,    0,
@@ -439,8 +439,8 @@ static yyconst flex_int32_t yy_ec[256] =
 
 static yyconst flex_int32_t yy_meta[43] =
     {   0,
-        1,    1,    2,    3,    1,    4,    1,    4,    1,    1,
-        4,    4,    4,    1,    4,    1,    4,    3,    4,    4,
+        1,    1,    2,    3,    1,    1,    1,    4,    1,    1,
+        4,    4,    4,    1,    1,    1,    4,    3,    4,    4,
         4,    4,    4,    4,    4,    4,    4,    4,    4,    4,
         4,    4,    4,    4,    4,    4,    4,    4,    4,    4,
         1,    1
@@ -448,151 +448,129 @@ static yyconst flex_int32_t yy_meta[43] =
 
 static yyconst flex_int16_t yy_base[204] =
     {   0,
-        0,    0,  350,  349,   40,   42,  312,  311,  352,  357,
-      357,  357,  357,   28,  336,  335,   37,   44,   44,  333,
-      357,  333,   42,   49,   46,   51,   54,   53,   63,   56,
-       64,   69,  306,  357,  336,    0,  357,  357,   99,  357,
-      303,  307,  320,  323,  326,  357,  357,   86,  357,  357,
-        0,  357,   77,  357,  304,  357,  323,  357,   78,   75,
-       85,   81,   79,   92,  106,   84,  102,  109,  112,  110,
-      114,   91,  116,  120,  122,  126,  297,  357,    0,  357,
-      131,  135,  357,  357,  357,  357,  357,  295,  299,  301,
-      305,    0,  137,  357,  129,  318,  137,  138,  140,  139,
-
-      142,  143,  155,  146,  156,  157,  164,  147,  165,  317,
-      166,  149,  168,  173,  357,  178,  186,  357,  296,  292,
-      302,  171,  177,  180,  185,  184,  186,  190,  187,  313,
-      312,  188,  189,  197,  199,  198,  204,  311,  310,  214,
-      297,  296,  300,  208,  306,  200,  305,  213,  215,  205,
-      304,  216,  219,  222,  223,  221,  224,  298,  280,  289,
-      229,  230,  232,  233,  234,  292,  273,  237,  272,  271,
-      238,  247,  261,  246,  239,  244,  266,  242,  265,  264,
-      245,  240,  357,  241,  257,  247,  256,  254,  244,  230,
-      249,  357,  357,   88,  357,  289,  293,  297,   47,  301,
-
-      305,  309,  313
+        0,    0,  244,  243,   40,   42,  206,  205,  246,  251,
+      251,  251,  251,   28,  230,  229,   37,   44,   44,  227,
+      251,    0,   31,  215,  222,  209,   37,   38,  219,  219,
+       50,   42,  196,  251,  226,    0,  251,  251,   77,  251,
+      193,  197,  210,  213,  251,  251,   74,  251,  251,    0,
+      251,   67,  251,  195,  251,  214,  251,    0,  193,  188,
+      192,  205,  196,   69,  204,  202,  192,   62,  193,  185,
+      200,  181,  182,  186,  177,  181,  172,  251,    0,  251,
+       82,   87,  251,  251,  251,  251,  251,  170,  174,  176,
+      180,    0,   91,  251,  171,    0,  188,  169,  169,  175,
+
+      180,  167,  182,  177,  170,  178,  174,  159,  166,    0,
+      167,  160,  169,  168,  251,   94,  104,  251,  155,  151,
+      161,  152,  146,  158,  161,  145,  147,  162,  151,    0,
+        0,  156,  157,  150,  157,  144,  145,    0,    0,  107,
+      146,  145,  149,  151,    0,  137,    0,  146,  140,  131,
+        0,  130,  127,  144,  127,  136,  141,  139,  123,  138,
+      135,  122,  123,  108,   86,    0,    0,   96,    0,    0,
+       87,   85,   99,   83,   76,   92,    0,   73,    0,    0,
+       84,   59,  251,   52,    0,   46,    0,    0,   52,   37,
+       28,  251,  251,    0,  251,  127,  131,  135,  139,   57,
+
+      143,  147,  151
     } ;
 
 static yyconst flex_int16_t yy_def[204] =
     {   0,
       195,    1,  196,  196,  197,  197,  198,  198,  195,  195,
-      195,  195,  195,  195,  199,  195,  195,  195,  195,  200,
-      195,  199,  199,  199,  199,  199,  199,  199,  199,  199,
-      199,  199,  195,  195,  195,  201,  195,  195,  202,  195,
-      195,  195,  195,  195,  199,  195,  195,  195,  195,  195,
-      203,  195,  195,  195,  195,  195,  200,  195,  199,  199,
-      199,  199,  199,  199,  199,  199,  199,  199,  199,  199,
-      199,  199,  199,  199,  199,  199,  195,  195,  201,  195,
+      195,  195,  195,  195,  195,  195,  195,  195,  195,  199,
+      195,  200,  200,  200,  200,  200,  200,  200,  200,  200,
+      200,  200,  195,  195,  195,  201,  195,  195,  202,  195,
+      195,  195,  195,  195,  195,  195,  195,  195,  195,  203,
+      195,  195,  195,  195,  195,  199,  195,  200,  200,  200,
+      200,  200,  200,  200,  200,  200,  200,  200,  200,  200,
+      200,  200,  200,  200,  200,  200,  195,  195,  201,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
-      195,  203,  195,  195,  199,  199,  199,  199,  199,  199,
-
-      199,  199,  199,  199,  199,  199,  199,  199,  199,  199,
-      199,  199,  199,  199,  195,  195,  195,  195,  195,  195,
-      195,  199,  199,  199,  199,  199,  199,  199,  199,  199,
-      199,  199,  199,  199,  199,  199,  199,  199,  199,  195,
-      195,  195,  195,  199,  199,  199,  199,  199,  199,  199,
-      199,  199,  199,  199,  199,  199,  199,  195,  195,  195,
-      199,  199,  199,  199,  199,  199,  199,  199,  199,  199,
-      199,  195,  195,  195,  199,  199,  199,  199,  199,  199,
-      199,  195,  195,  195,  199,  199,  199,  199,  195,  195,
-      199,  195,  195,  199,    0,  195,  195,  195,  195,  195,
+      195,  203,  195,  195,  200,  200,  200,  200,  200,  200,
+
+      200,  200,  200,  200,  200,  200,  200,  200,  200,  200,
+      200,  200,  200,  200,  195,  195,  195,  195,  195,  195,
+      195,  200,  200,  200,  200,  200,  200,  200,  200,  200,
+      200,  200,  200,  200,  200,  200,  200,  200,  200,  195,
+      195,  195,  195,  200,  200,  200,  200,  200,  200,  200,
+      200,  200,  200,  200,  200,  200,  200,  195,  195,  195,
+      200,  200,  200,  200,  200,  200,  200,  200,  200,  200,
+      200,  195,  195,  195,  200,  200,  200,  200,  200,  200,
+      200,  195,  195,  195,  200,  200,  200,  200,  195,  195,
+      200,  195,  195,  200,    0,  195,  195,  195,  195,  195,
 
       195,  195,  195
     } ;
 
-static yyconst flex_int16_t yy_nxt[400] =
+static yyconst flex_int16_t yy_nxt[294] =
     {   0,
        10,   11,   12,   13,   14,   15,   16,   17,   10,   18,
        19,   19,   10,   20,   21,   10,   22,   10,   23,   22,
        22,   24,   22,   25,   22,   22,   26,   22,   27,   22,
        28,   29,   30,   22,   22,   31,   32,   22,   22,   22,
-       33,   10,   37,   38,   37,   38,   42,   48,   48,   50,
-       45,   49,   53,   51,   48,   48,  195,   39,   52,   39,
-      195,   59,   43,  195,   63,  195,   44,  195,  195,   54,
-      195,   67,   60,   55,   70,   62,   61,  195,  195,   56,
-       65,   64,   69,  195,   71,   66,   72,   93,   93,  195,
-       68,   74,  195,  195,   53,  195,   48,   48,  195,  195,
-
-       73,   98,  195,   75,  103,  195,  195,   99,   76,   81,
-       82,   54,  100,   95,   96,   55,  195,  101,   83,   97,
-      195,   56,   84,  195,  195,  102,  195,  110,  195,   85,
-      195,  104,  109,   86,  195,   87,  195,  105,  106,  107,
-      195,  116,  117,  195,  108,  117,  117,   93,   93,  112,
-      111,  195,  195,  195,  195,  123,  195,  195,  114,  113,
-      195,  195,   54,  195,  127,  122,   55,  126,  130,  195,
-      195,  195,   56,  129,  124,  125,  132,  128,  195,  195,
-      195,  137,  195,  134,  131,  195,  133,  195,  140,  117,
-      138,  195,  136,  135,  195,  139,  117,  117,  195,  195,
-
-      195,  195,  195,  195,  195,  144,  146,  147,  150,  153,
-      152,  195,  195,  195,  195,  151,  145,  155,  195,  195,
-      149,  148,  195,  154,  117,  117,  161,  195,  156,  195,
-      195,  162,  157,  195,  163,  195,  195,  195,  195,  165,
-      168,  164,  171,  195,  195,  170,  195,  195,  195,  175,
-      166,  195,  195,  195,  177,  167,  195,  169,  195,  195,
-      176,  195,  186,  195,  193,  180,  192,  188,  195,  178,
-      195,  195,  190,  179,  181,  185,  189,  187,  195,  195,
-      195,  191,  184,  183,  182,  195,  195,  195,  194,   34,
-       34,   34,   34,   36,   36,   36,   36,   40,   40,   40,
-
-       40,   57,   57,   57,   57,   79,  195,  174,   79,   80,
-       80,   80,   80,   92,  173,   92,   92,  172,  195,  195,
-      195,  160,  159,  158,  195,  195,  195,  195,  143,  142,
-      141,  195,  195,  121,  120,  119,  118,  115,   58,   94,
-      195,   91,   90,   89,   88,   78,   77,  195,   58,   47,
-       46,  195,   41,   41,   35,   35,    9,  195,  195,  195,
+       33,   10,   37,   38,   37,   38,   42,   47,   47,   49,
+       59,   48,   52,   50,   47,   47,   67,   39,   51,   39,
+       58,   60,   43,   65,   74,   61,   44,  194,   66,   53,
+       71,  193,   72,   54,  192,   68,   75,   93,   93,   55,
+      191,   76,   52,  190,   47,   47,   73,   81,   82,  100,
+      105,  106,  116,  117,  101,  189,   83,  117,  117,   53,
+
+       84,   93,   93,   54,  140,  117,  188,   85,  187,   55,
+      186,   86,  185,   87,  117,  117,   53,  117,  117,  184,
+       54,  183,  182,  181,  180,  179,   55,   34,   34,   34,
+       34,   36,   36,   36,   36,   40,   40,   40,   40,   56,
+       56,   56,   56,   79,  178,  177,   79,   80,   80,   80,
+       80,   92,  176,   92,   92,  175,  174,  173,  172,  171,
+      170,  169,  168,  167,  166,  165,  164,  163,  162,  161,
+      160,  159,  158,  157,  156,  155,  154,  153,  152,  151,
+      150,  149,  148,  147,  146,  145,  144,  143,  142,  141,
+      139,  138,  137,  136,  135,  134,  133,  132,  131,  130,
+
+      129,  128,  127,  126,  125,  124,  123,  122,  121,  120,
+      119,  118,  115,  114,  113,  112,  111,  110,  109,  108,
+      107,  104,  103,  102,   99,   98,   97,   96,   95,   57,
+       94,   91,   90,   89,   88,   78,   77,   70,   69,   64,
+       63,   62,   57,   46,   45,  195,   41,   41,   35,   35,
+        9,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
-      195,  195,  195,  195,  195,  195,  195,  195,  195
+      195,  195,  195
 
     } ;
 
-static yyconst flex_int16_t yy_chk[400] =
+static yyconst flex_int16_t yy_chk[294] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    5,    5,    6,    6,   14,   17,   17,   18,
-      199,   17,   19,   18,   19,   19,   23,    5,   18,    6,
-       25,   23,   14,   24,   25,   26,   14,   28,   27,   19,
-       30,   28,   23,   19,   30,   24,   23,   29,   31,   19,
-       27,   26,   29,   32,   31,   27,   31,   53,   53,   60,
-       28,   32,   59,   63,   48,   62,   48,   48,   66,   61,
-
-       31,   62,  194,   32,   66,   72,   64,   63,   32,   39,
-       39,   48,   64,   59,   60,   48,   67,   64,   39,   61,
-       65,   48,   39,   68,   70,   65,   69,   72,   71,   39,
-       73,   67,   71,   39,   74,   39,   75,   68,   68,   69,
-       76,   81,   81,   95,   70,   82,   82,   93,   93,   74,
-       73,   97,   98,  100,   99,   97,  101,  102,   76,   75,
-      104,  108,   93,  112,  101,   95,   93,  100,  104,  103,
-      105,  106,   93,  103,   98,   99,  106,  102,  107,  109,
-      111,  112,  113,  108,  105,  122,  107,  114,  116,  116,
-      113,  123,  111,  109,  124,  114,  117,  117,  126,  125,
-
-      127,  129,  132,  133,  128,  122,  124,  125,  128,  133,
-      132,  134,  136,  135,  146,  129,  123,  135,  137,  150,
-      127,  126,  144,  134,  140,  140,  144,  148,  136,  149,
-      152,  146,  137,  153,  148,  156,  154,  155,  157,  150,
-      154,  149,  157,  161,  162,  156,  163,  164,  165,  161,
-      152,  168,  171,  175,  163,  153,  178,  155,  176,  181,
-      162,  186,  176,  191,  190,  168,  189,  181,  188,  164,
-      187,  185,  184,  165,  171,  175,  182,  178,  180,  179,
-      177,  186,  174,  173,  172,  170,  169,  167,  191,  196,
-      196,  196,  196,  197,  197,  197,  197,  198,  198,  198,
-
-      198,  200,  200,  200,  200,  201,  166,  160,  201,  202,
-      202,  202,  202,  203,  159,  203,  203,  158,  151,  147,
-      145,  143,  142,  141,  139,  138,  131,  130,  121,  120,
-      119,  110,   96,   91,   90,   89,   88,   77,   57,   55,
-       45,   44,   43,   42,   41,   35,   33,   22,   20,   16,
-       15,    9,    8,    7,    4,    3,  195,  195,  195,  195,
+       23,   17,   19,   18,   19,   19,   28,    5,   18,    6,
+      200,   23,   14,   27,   32,   23,   14,  191,   27,   19,
+       31,  190,   31,   19,  189,   28,   32,   52,   52,   19,
+      186,   32,   47,  184,   47,   47,   31,   39,   39,   64,
+       68,   68,   81,   81,   64,  182,   39,   82,   82,   47,
+
+       39,   93,   93,   47,  116,  116,  181,   39,  178,   47,
+      176,   39,  175,   39,  117,  117,   93,  140,  140,  174,
+       93,  173,  172,  171,  168,  165,   93,  196,  196,  196,
+      196,  197,  197,  197,  197,  198,  198,  198,  198,  199,
+      199,  199,  199,  201,  164,  163,  201,  202,  202,  202,
+      202,  203,  162,  203,  203,  161,  160,  159,  158,  157,
+      156,  155,  154,  153,  152,  150,  149,  148,  146,  144,
+      143,  142,  141,  137,  136,  135,  134,  133,  132,  129,
+      128,  127,  126,  125,  124,  123,  122,  121,  120,  119,
+      114,  113,  112,  111,  109,  108,  107,  106,  105,  104,
+
+      103,  102,  101,  100,   99,   98,   97,   95,   91,   90,
+       89,   88,   77,   76,   75,   74,   73,   72,   71,   70,
+       69,   67,   66,   65,   63,   62,   61,   60,   59,   56,
+       54,   44,   43,   42,   41,   35,   33,   30,   29,   26,
+       25,   24,   20,   16,   15,    9,    8,    7,    4,    3,
+      195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
       195,  195,  195,  195,  195,  195,  195,  195,  195,  195,
-      195,  195,  195,  195,  195,  195,  195,  195,  195
+      195,  195,  195
 
     } ;
 
@@ -705,7 +683,7 @@ static char *lb_steal(lex_buf *lb)
 
 
 
-#line 709 "../../../lib/config/config_lexer.cc"
+#line 687 "../../../lib/config/config_lexer.cc"
 
 #define INITIAL 0
 #define C_COMMENT 1
@@ -962,7 +940,7 @@ YY_DECL
 
        lex_buf string_buf;
 
-#line 966 "../../../lib/config/config_lexer.cc"
+#line 944 "../../../lib/config/config_lexer.cc"
 
     yylval = yylval_param;
 
@@ -1406,7 +1384,7 @@ YY_RULE_SETUP
 #line 229 "config_lexer.ll"
 ECHO;
        YY_BREAK
-#line 1410 "../../../lib/config/config_lexer.cc"
+#line 1388 "../../../lib/config/config_lexer.cc"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(C_COMMENT):
 case YY_STATE_EOF(STRING):
index d9ac1340c8fcff4e00c28f42c49b428b88b3bdfe..07ff7ed671c4e505316453ea47f1443cb2b5b194 100644 (file)
@@ -210,7 +210,7 @@ partial                             return T_PARTIAL;
 true                           { yylval->num = 1; return T_NUMBER; }
 false                          { yylval->num = 0; return T_NUMBER; }
 set                            return T_SET;
-[a-zA-Z_\*][:a-zA-Z0-9\-_\*]*  { yylval->text = strdup(yytext); return T_IDENTIFIER; }
+[a-zA-Z_][:a-zA-Z0-9\-_]*      { yylval->text = strdup(yytext); return T_IDENTIFIER; }
 \<[^\>]*\>                     { yytext[yyleng-1] = '\0'; yylval->text = strdup(yytext + 1); return T_STRING_ANGLE; }
 -?[0-9]+(\.[0-9]+)?ms          { yylval->num = strtod(yytext, NULL) / 1000; return T_NUMBER; }
 -?[0-9]+(\.[0-9]+)?h           { yylval->num = strtod(yytext, NULL) * 60 * 60; return T_NUMBER; }