diff options
Diffstat (limited to 'src/netlink_linearize.c')
-rw-r--r-- | src/netlink_linearize.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/netlink_linearize.c b/src/netlink_linearize.c index 427fdb67..72c59e56 100644 --- a/src/netlink_linearize.c +++ b/src/netlink_linearize.c @@ -572,10 +572,14 @@ static void netlink_gen_nat_stmt(struct netlink_linearize_ctx *ctx, enum nft_registers amin_reg, amax_reg; enum nft_registers pmin_reg, pmax_reg; int registers = 0; + int family; nle = alloc_nft_expr("nat"); nft_rule_expr_set_u32(nle, NFT_EXPR_NAT_TYPE, stmt->nat.type); + family = nft_rule_attr_get_u32(ctx->nlr, NFT_RULE_ATTR_FAMILY); + nft_rule_expr_set_u32(nle, NFT_EXPR_NAT_FAMILY, family); + if (stmt->nat.addr) { amin_reg = get_register(ctx); registers++; |