summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/set_elem.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/set_elem.c b/src/set_elem.c
index d40468a..9502d37 100644
--- a/src/set_elem.c
+++ b/src/set_elem.c
@@ -290,13 +290,14 @@ static int nft_set_elems_parse2(struct nft_set *s, const struct nlattr *nest)
ret = nft_parse_data(&e->data, tb[NFTA_SET_ELEM_DATA], &type);
switch(type) {
case DATA_VERDICT:
- s->flags |= (1 << NFT_SET_ELEM_ATTR_VERDICT);
+ e->flags |= (1 << NFT_SET_ELEM_ATTR_VERDICT);
break;
case DATA_CHAIN:
- s->flags |= (1 << NFT_SET_ELEM_ATTR_CHAIN);
+ e->flags |= (1 << NFT_SET_ELEM_ATTR_VERDICT) |
+ (1 << NFT_SET_ELEM_ATTR_CHAIN);
break;
case DATA_VALUE:
- s->flags |= (1 << NFT_SET_ELEM_ATTR_DATA);
+ e->flags |= (1 << NFT_SET_ELEM_ATTR_DATA);
break;
}
}