summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-07-15 19:52:25 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-07-15 19:53:12 +0200
commite6007410f013a0e01da93131703c4eb1e5182c6f (patch)
tree828374cf80b68d09c1c5dc7030a21a4a29da9d50 /src
parentef23c5a37590d7b444d9d6bdfd764cf9fbd4c308 (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.c10
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: