linux/net/ipv4
Patrick McHardy e281e3ac2b [NETFILTER]: Fix NAT sequence number adjustment
The NAT changes in 2.6.11 changed the position where helpers
are called and perform packet mangling. Before 2.6.11, a NAT
helper was called before the packet was NATed and had its
sequence number adjusted. Since 2.6.11, the helpers get packets
with already adjusted sequence numbers.

This breaks sequence number adjustment, adjust_tcp_sequence()
needs the original sequence number to determine whether
a packet was a retransmission and to store it for further
corrections. It can't be reconstructed without more information
than available, so this patch restores the old order by
calling helpers from a new conntrack hook two priorities
below ip_conntrack_confirm() and adjusting the sequence number
from a new NAT hook one priority below ip_conntrack_confirm().

Tracked down by Phil Oester <kernel@linuxace.com>

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-04-24 18:41:38 -07:00
..
ipvs Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
netfilter [NETFILTER]: Fix NAT sequence number adjustment 2005-04-24 18:41:38 -07:00
af_inet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ah4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
arp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
datagram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
devinet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
esp4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_frontend.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_hash.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_lookup.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_rules.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fib_semantics.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
icmp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
igmp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
inetpeer.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_forward.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_fragment.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_gre.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_options.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_output.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip_sockglue.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipcomp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipconfig.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipip.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipmr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_drr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_random.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_rr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath_wrandom.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
multipath.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
proc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
protocol.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
raw.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
route.c [NET]: skbuff: remove old NET_CALLER macro 2005-04-19 22:39:42 -07:00
syncookies.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sysctl_net_ipv4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_diag.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_ipv4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_minisocks.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_output.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_timer.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
udp.c [IPSEC]: COW skb header in UDP decap 2005-04-19 22:48:59 -07:00
utils.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_output.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_policy.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_state.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm4_tunnel.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00