summaryrefslogtreecommitdiffstats
path: root/src/expr_ops.h
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-09-19 20:11:27 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-09-19 22:54:25 +0200
commit628203491deffcf01ee010152419ced8f549e57e (patch)
tree4df452f38817f1babcfa3b3b368f9d83db8a49b3 /src/expr_ops.h
parent8cabd12d31c1f02ab67bd6e2ecf32f005b2a6f87 (diff)
src: replace size_t by uint32_t in set/get interfaces
This patch breaks the ABI to shrink the size parameter from 8 to 4 bytes in x86_64. The maximum length of netlink attributes is 2 bytes, so 4 bytes as attribute payload length should be enough. After this patch, size_t is only used in the nft_*_snprintf interfaces. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/expr_ops.h')
-rw-r--r--src/expr_ops.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/expr_ops.h b/src/expr_ops.h
index 12973ce..becc85a 100644
--- a/src/expr_ops.h
+++ b/src/expr_ops.h
@@ -21,10 +21,10 @@ struct expr_ops {
struct list_head head;
const char *name;
- size_t alloc_len;
+ uint32_t alloc_len;
int max_attr;
- int (*set)(struct nft_rule_expr *e, uint16_t type, const void *data, size_t data_len);
- const void *(*get)(const struct nft_rule_expr *e, uint16_t type, size_t *data_len);
+ int (*set)(struct nft_rule_expr *e, uint16_t type, const void *data, uint32_t data_len);
+ const void *(*get)(const struct nft_rule_expr *e, uint16_t type, uint32_t *data_len);
int (*parse)(struct nft_rule_expr *e, struct nlattr *attr);
void (*build)(struct nlmsghdr *nlh, struct nft_rule_expr *e);
int (*snprintf)(char *buf, size_t len, uint32_t type, uint32_t flags, struct nft_rule_expr *e);