diff options
author | Laura Garcia Liebana <nevola@gmail.com> | 2016-09-13 13:50:41 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-09-22 16:37:16 +0200 |
commit | 7898b0fb2018ecec894e8bf6cf1c1102a7b4c9ee (patch) | |
tree | 67ab1026b0bb776bacf0c38dfdefdc1401c05431 /tests/nft-expr_numgen-test.c | |
parent | 5877cc62d9bd1c7183992a2d05dd82d17ed12097 (diff) |
expr: numgen: add number generation offset
Add support to pass through an offset value to the counter
initialization. With this feature, the sysadmin is able to apply a value
to be added to the generated number.
Example:
meta mark set numgen inc mod 2 offset 100
This will generate marks with series 100, 101, 100, 101, ...
Suggested-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Laura Garcia Liebana <nevola@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'tests/nft-expr_numgen-test.c')
-rw-r--r-- | tests/nft-expr_numgen-test.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/tests/nft-expr_numgen-test.c b/tests/nft-expr_numgen-test.c index 7092c8d..0d0a3bb 100644 --- a/tests/nft-expr_numgen-test.c +++ b/tests/nft-expr_numgen-test.c @@ -39,6 +39,9 @@ static void cmp_nftnl_expr(struct nftnl_expr *rule_a, if (nftnl_expr_get_u32(rule_a, NFTNL_EXPR_NG_TYPE) != nftnl_expr_get_u32(rule_b, NFTNL_EXPR_NG_TYPE)) print_err("Expr NFTNL_EXPR_NG_TYPE mismatches"); + if (nftnl_expr_get_u32(rule_a, NFTNL_EXPR_NG_OFFSET) != + nftnl_expr_get_u32(rule_b, NFTNL_EXPR_NG_OFFSET)) + print_err("Expr NFTNL_EXPR_NG_OFFSET mismatches"); } int main(int argc, char *argv[]) @@ -61,6 +64,7 @@ int main(int argc, char *argv[]) nftnl_expr_set_u32(ex, NFTNL_EXPR_NG_DREG, 0x1234568); nftnl_expr_set_u32(ex, NFTNL_EXPR_NG_MODULUS, 0x78123456); nftnl_expr_set_u32(ex, NFTNL_EXPR_NG_TYPE, NFT_NG_INCREMENTAL); + nftnl_expr_set_u32(ex, NFTNL_EXPR_NG_OFFSET, 0x1000000); nftnl_rule_add_expr(a, ex); |