]> git.ipfire.org Git - thirdparty/nftables.git/commit
optimize: infer family for nat mapping
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 15 Feb 2023 18:20:22 +0000 (19:20 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 21 Feb 2023 22:57:27 +0000 (23:57 +0100)
commit114ba9606cb5ad85b2215e59f8af8ad97a16cac8
treeda264ac99c8972f6e2a2263069b0f7921681f180
parent2f4935a8d7aeb6b2e019aebb961a579d9950c74a
optimize: infer family for nat mapping

Infer family from key in nat mapping, otherwise nat mapping via merge
breaks since family is not specified.

Merging:
fw-test-bug2.nft:4:9-78:         iifname enp2s0 ip daddr 72.2.3.66 tcp dport 53122 dnat to 10.1.1.10:22
fw-test-bug2.nft:5:9-77:         iifname enp2s0 ip daddr 72.2.3.66 tcp dport 443 dnat to 10.1.1.52:443
fw-test-bug2.nft:6:9-75:         iifname enp2s0 ip daddr 72.2.3.70 tcp dport 80 dnat to 10.1.1.52:80
into:
        dnat ip to iifname . ip daddr . tcp dport map { enp2s0 . 72.2.3.66 . 53122 : 10.1.1.10 . 22, enp2s0 . 72.2.3.66 . 443 : 10.1.1.52 . 443, enp2s0 . 72.2.3.70 . 80 : 10.1.1.52 . 80 }

Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1657
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/optimize.c
tests/shell/testcases/optimizations/dumps/merge_nat.nft
tests/shell/testcases/optimizations/merge_nat
tests/shell/testcases/sets/dumps/0047nat_0.nft