nf_nat: no IP_NAT_RANGE_MAP_IPS flags when alloc_null_binding()
Subsystems (3)
PATCH RESEND v2 1/1 nf_nat: no IP_NAT_RANGE_MAP_IPS flags when alloc_null_binding()
When alloc_null_binding(), no IP_NAT_RNAGE_MAP_IPS in flags means no IP address translation is needed. It isn't necessary to specify the address explicitly.
Signed-off-by Changli Gao <[email protected]>
---
v2: Initialize range.flags only instead of the whole structure.
net/ipv4/netfilter/nf_nat_rule.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-)
net/ipv4/netfilter/nf_nat_rule.c +8 -9
@@ -106,16 +106,15 @@ alloc_null_binding(struct nf_conn *ct, unsigned int hooknum) {/* Force range to this IP; let proto decide mapping for per-proto parts (hence not IP_NAT_RANGE_PROTO_SPECIFIED). -Use reply in case it's already been mangled (eg local packet). */ -__be32 ip - = (HOOK2MANIP (hooknum) ==IP_NAT_MANIP_SRC - ? ct->tuplehash[IP_CT_DIR_REPLY ].tuple.dst.u3.ip - : ct->tuplehash[IP_CT_DIR_REPLY ].tuple.src.u3.ip); -struct nf_nat_range range - = {IP_NAT_RANGE_MAP_IPS , ip, ip, {0 }, {0 } }; - -pr_debug ("Allocating NULL binding for %p (%pI4)\n" , ct, &ip); +struct nf_nat_range range; + + range.flags =0 ; +pr_debug ("Allocating NULL binding for %p (%pI4)\n" , ct, +HOOK2MANIP (hooknum) ==IP_NAT_MANIP_SRC ? + &ct->tuplehash[IP_CT_DIR_REPLY ].tuple.dst.u3.ip : + &ct->tuplehash[IP_CT_DIR_REPLY ].tuple.src.u3.ip); +return nf_nat_setup_info (ct, &range,HOOK2MANIP (hooknum)); }
Patrick McHardy
AppliedQuoted 3 lines · Changli Gao
When
alloc_null_binding(), noIP_NAT_RNAGE_MAP_IPSin flags means no IP address translation is needed. It isn't necessary to specify the address explicitly.
Applied.