Stateful objects have introduced a RESET token in the parser. This breaks the
use of RESET from the rhs, to fix this:

1) I added a new rule to catch this case, thus, dccp doesn't break.
2) Update reject_opts so reject with tcp reset still works.

Signed-off-by: Pablo Neira Ayuso <[email protected]>
---
 src/parser_bison.y | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/parser_bison.y b/src/parser_bison.y
index b571fbbed5f3..5b829a243128 100644
--- a/src/parser_bison.y
+++ b/src/parser_bison.y
@@ -1897,15 +1897,9 @@ reject_opts              :       /* empty */
                                                          $4);
                                $<stmt>0->reject.expr->dtype = &icmpx_code_type;
                        }
-                       |       WITH    TCP     STRING
+                       |       WITH    TCP     RESET
                        {
-                               if (strcmp($3, "reset") == 0) {
-                                       $<stmt>0->reject.type = 
NFT_REJECT_TCP_RST;
-                               } else {
-                                       erec_queue(error(&@2, "unsupported 
reject type", $3),
-                                                  state->msgs);
-                                       YYERROR;
-                               }
+                               $<stmt>0->reject.type = NFT_REJECT_TCP_RST;
                        }
                        ;
 
@@ -2721,6 +2715,12 @@ primary_rhs_expr :       symbol_expr             { $$ = 
$1; }
                                                       current_scope(state),
                                                       "ecn");
                        }
+                       |       RESET
+                       {
+                               $$ = symbol_expr_alloc(&@$, SYMBOL_VALUE,
+                                                      current_scope(state),
+                                                      "reset");
+                       }
                        ;
 
 relational_op          :       EQ              { $$ = OP_EQ; }
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to