From effb881c9cef28aca47adeec5014e0457507539e Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 9 May 2018 16:03:40 +0200 Subject: Deprecate add/insert rule 'position' argument Instead, use 'handle' keyword for the same effect since that is more consistent with respect to replace/delete commands. The old keyword is still supported for backwards compatibility and also listed in man page along with a hint that it shouldn't be used anymore. Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- doc/nft.xml | 17 +++++++++++++---- src/parser_bison.y | 8 ++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/doc/nft.xml b/doc/nft.xml index 60691580..b80c8c43 100644 --- a/doc/nft.xml +++ b/doc/nft.xml @@ -875,7 +875,13 @@ add table inet mytable family table chain - position handle + + + handle + position + + handle + statement... @@ -910,8 +916,10 @@ add table inet mytable Add a new rule described by the list of statements. The rule is appended to the - given chain unless a position is specified, in which case the rule is appended to - the rule given by the handle. + given chain unless a handle is specified, in which case the + rule is appended to the rule given by the handle. + The alternative name position is deprecated and should not be + used anymore. @@ -920,7 +928,8 @@ add table inet mytable Similar to the add command, but the rule is prepended to the - beginning of the chain or before the rule with the given handle. + beginning of the chain or before the rule with the given + handle. diff --git a/src/parser_bison.y b/src/parser_bison.y index 24210b2b..174150aa 100644 --- a/src/parser_bison.y +++ b/src/parser_bison.y @@ -1970,6 +1970,14 @@ rule_position : chain_spec handle_merge(&$1, &$2); $$ = $1; } + | chain_spec handle_spec + { + $2.position.location = $2.handle.location; + $2.position.id = $2.handle.id; + $2.handle.id = 0; + handle_merge(&$1, &$2); + $$ = $1; + } ; ruleid_spec : chain_spec handle_spec -- cgit v1.2.3