summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/expr/exthdr.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/expr/exthdr.c b/src/expr/exthdr.c
index 143ad54..c44c1a7 100644
--- a/src/expr/exthdr.c
+++ b/src/expr/exthdr.c
@@ -292,6 +292,8 @@ static int nftnl_expr_exthdr_export(char *buf, size_t len,
nftnl_buf_u32(&b, type, exthdr->len, LEN);
if (e->flags & (1 << NFTNL_EXPR_EXTHDR_OP))
nftnl_buf_u32(&b, type, exthdr->op, OP);
+ if (e->flags & (1 << NFTNL_EXPR_EXTHDR_FLAGS))
+ nftnl_buf_u32(&b, type, exthdr->flags, FLAGS);
return nftnl_buf_done(&b);
}
@@ -338,6 +340,8 @@ static bool nftnl_expr_exthdr_cmp(const struct nftnl_expr *e1,
eq &= (h1->type == h2->type);
if (e1->flags & (1 << NFTNL_EXPR_EXTHDR_OP))
eq &= (h1->op == h2->op);
+ if (e1->flags & (1 << NFTNL_EXPR_EXTHDR_FLAGS))
+ eq &= (h1->flags == h2->flags);
return eq;
}