summaryrefslogtreecommitdiffstats
path: root/include/expr_ops.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/expr_ops.h')
-rw-r--r--include/expr_ops.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/expr_ops.h b/include/expr_ops.h
index 7a6aa23..01f6fef 100644
--- a/include/expr_ops.h
+++ b/include/expr_ops.h
@@ -7,6 +7,7 @@
struct nlattr;
struct nlmsghdr;
struct nftnl_expr;
+struct nftnl_reg;
struct expr_ops {
const char *name;
@@ -19,6 +20,11 @@ struct expr_ops {
int (*parse)(struct nftnl_expr *e, struct nlattr *attr);
void (*build)(struct nlmsghdr *nlh, const struct nftnl_expr *e);
int (*snprintf)(char *buf, size_t len, uint32_t flags, const struct nftnl_expr *e);
+ struct {
+ int (*len)(const struct nftnl_expr *e);
+ bool (*cmp)(const struct nftnl_reg *reg, const struct nftnl_expr *e);
+ void (*update)(struct nftnl_reg *reg, const struct nftnl_expr *e);
+ } reg;
};
struct expr_ops *nftnl_expr_ops_lookup(const char *name);