diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2013-07-15 19:52:25 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2013-07-15 19:53:12 +0200 |
commit | e6007410f013a0e01da93131703c4eb1e5182c6f (patch) | |
tree | 828374cf80b68d09c1c5dc7030a21a4a29da9d50 /src | |
parent | ef23c5a37590d7b444d9d6bdfd764cf9fbd4c308 (diff) |
expr: limit: fix getter
Set missing data length via getter, otherwise it returns zero.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/expr/limit.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/expr/limit.c b/src/expr/limit.c index f2f7703..3a0d5a0 100644 --- a/src/expr/limit.c +++ b/src/expr/limit.c @@ -55,15 +55,17 @@ nft_rule_expr_limit_get(const struct nft_rule_expr *e, uint16_t type, switch(type) { case NFT_EXPR_LIMIT_RATE: - if (e->flags & (1 << NFT_EXPR_LIMIT_RATE)) + if (e->flags & (1 << NFT_EXPR_LIMIT_RATE)) { + *data_len = sizeof(uint64_t); return &limit->rate; - else + } else return NULL; break; case NFT_EXPR_LIMIT_DEPTH: - if (e->flags & (1 << NFT_EXPR_LIMIT_DEPTH)) + if (e->flags & (1 << NFT_EXPR_LIMIT_DEPTH)) { + *data_len = sizeof(uint64_t); return &limit->depth; - else + } else return NULL; break; default: |