]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
parser: add parenthesized statement expressions.
authorJeremy Sowden <jeremy@azazel.net>
Mon, 3 Feb 2020 11:20:18 +0000 (11:20 +0000)
committerPablo Neira Ayuso <pablo@netfilter.org>
Fri, 7 Feb 2020 15:57:30 +0000 (16:57 +0100)
Primary and primary RHS expressions support parenthesized basic and
basic RHS expressions.  However, primary statement expressions do not
support parenthesized basic statement expressions.  Add them.

Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/parser_bison.y

index e86cf7a9a6ffe966b411efcb2a5512bb0a8ac85a..f5d7026a857499eae6834f36210fe7df11b212a3 100644 (file)
@@ -2992,18 +2992,19 @@ synproxy_sack           :       /* empty */     { $$ = 0; }
                        }
                        ;
 
-primary_stmt_expr      :       symbol_expr             { $$ = $1; }
-                       |       integer_expr            { $$ = $1; }
-                       |       boolean_expr            { $$ = $1; }
-                       |       meta_expr               { $$ = $1; }
-                       |       rt_expr                 { $$ = $1; }
-                       |       ct_expr                 { $$ = $1; }
-                       |       numgen_expr             { $$ = $1; }
-                       |       hash_expr               { $$ = $1; }
-                       |       payload_expr            { $$ = $1; }
-                       |       keyword_expr            { $$ = $1; }
-                       |       socket_expr             { $$ = $1; }
-                       |       osf_expr                { $$ = $1; }
+primary_stmt_expr      :       symbol_expr                     { $$ = $1; }
+                       |       integer_expr                    { $$ = $1; }
+                       |       boolean_expr                    { $$ = $1; }
+                       |       meta_expr                       { $$ = $1; }
+                       |       rt_expr                         { $$ = $1; }
+                       |       ct_expr                         { $$ = $1; }
+                       |       numgen_expr                     { $$ = $1; }
+                       |       hash_expr                       { $$ = $1; }
+                       |       payload_expr                    { $$ = $1; }
+                       |       keyword_expr                    { $$ = $1; }
+                       |       socket_expr                     { $$ = $1; }
+                       |       osf_expr                        { $$ = $1; }
+                       |       '('     basic_stmt_expr ')'     { $$ = $2; }
                        ;
 
 shift_stmt_expr                :       primary_stmt_expr