]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/command_lex.l
lib: Fix OOB range parses, variable matches
[mirror_frr.git] / lib / command_lex.l
index 9f47d96a84f116c551216ce684cc43ffaa78460d..ff951149b3ae666e799b77394b2ccc2cc7b4da7d 100644 (file)
@@ -28,7 +28,11 @@ RANGE           \({NUMBER}\-{NUMBER}\)
 {IPV6}          {yylval.string = XSTRDUP(MTYPE_TMP, yytext); return IPV6;}
 {IPV6_PREFIX}   {yylval.string = XSTRDUP(MTYPE_TMP, yytext); return IPV6_PREFIX;}
 {VARIABLE}      {yylval.string = XSTRDUP(MTYPE_TMP, yytext); return VARIABLE;}
-{NUMBER}        {yylval.integer = atoi(yytext); return NUMBER;}
+{NUMBER}        {
+                    char *endptr;
+                    yylval.integer = strtoll(yytext, &endptr, 10);
+                    return NUMBER;
+                }
 {RANGE}         {yylval.string = XSTRDUP(MTYPE_TMP, yytext); return RANGE;}
 .               {return yytext[0];}
 %%