netfilter: nf_ct_tcp: fix flow recovery with TCP window tracking enabled
authorPablo Neira Ayuso <pablo@netfilter.org>
Thu, 15 Jul 2010 15:09:04 +0000 (17:09 +0200)
committerPatrick McHardy <kaber@trash.net>
Thu, 15 Jul 2010 15:09:04 +0000 (17:09 +0200)
commitfac42a9a922fe5eb87cac0b597010afb81e7ffe9
tree96763bdcfcc4e4b9cafbeeeb8c63c27bdbfc0ce4
parentcca5cf91c789f3301cc2541a79c323c53be5a8e1
netfilter: nf_ct_tcp: fix flow recovery with TCP window tracking enabled

This patch adds the missing bits to support the recovery of TCP flows
without disabling window tracking (aka be_liberal). To ensure a
successful recovery, we have to inject the window scale factor via
ctnetlink.

This patch has been tested with a development snapshot of conntrackd
and the new clause `TCPWindowTracking' that allows to perform strict
TCP window tracking recovery across fail-overs.

With this patch, we don't update the receiver's window until it's not
initiated. We require this to perform a successful recovery. Jozsef
confirmed in a private email that this spotted a real issue since that
should not happen.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Acked-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
net/netfilter/nf_conntrack_proto_tcp.c