diff options
Diffstat (limited to 'src/netlink_delinearize.c')
-rw-r--r-- | src/netlink_delinearize.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/netlink_delinearize.c b/src/netlink_delinearize.c index f41223a8..b039a1e3 100644 --- a/src/netlink_delinearize.c +++ b/src/netlink_delinearize.c @@ -15,6 +15,7 @@ #include <limits.h> #include <linux/netfilter/nf_tables.h> #include <arpa/inet.h> +#include <linux/netfilter/nf_nat.h> #include <linux/netfilter.h> #include <net/ethernet.h> #include <netlink.h> @@ -1060,6 +1061,9 @@ static void netlink_parse_nat(struct netlink_parse_ctx *ctx, if (nftnl_expr_is_set(nle, NFTNL_EXPR_NAT_FLAGS)) stmt->nat.flags = nftnl_expr_get_u32(nle, NFTNL_EXPR_NAT_FLAGS); + if (stmt->nat.flags & NF_NAT_RANGE_NETMAP) + stmt->nat.type_flags |= STMT_NAT_F_PREFIX; + addr = NULL; reg1 = netlink_parse_register(nle, NFTNL_EXPR_NAT_REG_ADDR_MIN); if (reg1) { |