aboutsummaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorJulian Anastasov <ja@ssi.bg>2011-06-02 09:09:54 +0900
committerPablo Neira Ayuso <pablo@netfilter.org>2011-06-06 01:35:13 +0200
commitafb523c54718da57ff661950bd3287ec9eeb66bd (patch)
treee9163891b97b5ca955aa156f0f7be19822b942cf /ipc
parentfb04883371f2cb7867d24783e7d590036dc9b548 (diff)
downloadkernel_samsung_smdk4412-afb523c54718da57ff661950bd3287ec9eeb66bd.zip
kernel_samsung_smdk4412-afb523c54718da57ff661950bd3287ec9eeb66bd.tar.gz
kernel_samsung_smdk4412-afb523c54718da57ff661950bd3287ec9eeb66bd.tar.bz2
ipvs: restore support for iptables SNAT
Fix the IPVS priority in LOCAL_IN hook, so that SNAT target in POSTROUTING is supported for IPVS traffic as in 2.6.36 where it worked depending on module load order. Before 2.6.37 we used priority 100 in LOCAL_IN to process remote requests. We used the same priority as iptables SNAT and if IPVS handlers are installed before SNAT handlers we supported SNAT in POSTROUTING for the IPVS traffic. If SNAT is installed before IPVS, the netfilter handlers are before IPVS and netfilter checks the NAT table twice for the IPVS requests: once in LOCAL_IN where IPS_SRC_NAT_DONE is set and second time in POSTROUTING where the SNAT rules are ignored because IPS_SRC_NAT_DONE was already set in LOCAL_IN. But in 2.6.37 we changed the IPVS priority for LOCAL_IN with the goal to be unique (101) forgetting the fact that for IPVS traffic we should not walk both LOCAL_IN and POSTROUTING nat tables. So, change the priority for processing remote IPVS requests from 101 to 99, i.e. before NAT_SRC (100) because we prefer to support SNAT in POSTROUTING instead of LOCAL_IN. It also moves the priority for IPVS replies from 99 to 98. Use constants instead of magic numbers at these places. Signed-off-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions