From: Florian Westphal <fw@strlen.de>
To: Balazs Scheidler <bazsi@balabit.hu>
Cc: Florian Westphal <fw@strlen.de>,
netfilter-devel@vger.kernel.org, netdev@vger.kernel.org,
KOVACS Krisztian <hidden@balabit.hu>
Subject: Re: [PATCH 1/1] tproxy: do not assign timewait sockets to skb->sk
Date: Thu, 17 Feb 2011 22:27:17 +0100 [thread overview]
Message-ID: <20110217212717.GG8821@Chamillionaire.breakpoint.cc> (raw)
In-Reply-To: <1297976642.3789.5.camel@Nokia-N900-51-1>
Balazs Scheidler <bazsi@balabit.hu> wrote:
> the destination port in the packet can be different in the two lookups. --on-port tproxy option.
Hrm... The initial lookup uses the header ip addresses:
sk = nf_tproxy_get_sock_v4(dev_net(skb->dev), iph->protocol,
iph->saddr, iph->daddr,
hp->source, hp->dest,
skb->dev, NFT_LOOKUP_ESTABLISHED);
3 possible cases:
- no socket -- try to find listener. This case is not changed by my patch.
- sk is normal socket. set nfmark and skb->sk. Also not changed.
- sk is in TW state. This is not changed either:
tproxy_handle_time_wait4() will check if this is a SYN. If it is, a new
listener lookup is made, and TW socket is kicked out.
If the packet is not a SYN, then tproxy_handle_time_wait4() won't do anything.
Previously, the timewait sk would now be assigned to skb->sk, which my patch
prevents. But I don't see where the '--on-port' port number is involved in the
TW socket lookup?
Thanks for reviwing the patch!
next prev parent reply other threads:[~2011-02-17 21:27 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-14 11:44 [PATCH 1/1] tproxy: do not assign timewait sockets to skb->sk Florian Westphal
2011-02-14 15:51 ` Patrick McHardy
2011-02-16 8:54 ` KOVACS Krisztian
2011-02-16 11:30 ` Florian Westphal
2011-02-17 10:40 ` Patrick McHardy
[not found] ` <1297972902.2253.51.camel@Nokia-N900-51-1>
2011-02-17 20:52 ` Florian Westphal
[not found] ` <1297976642.3789.5.camel@Nokia-N900-51-1>
2011-02-17 21:27 ` Florian Westphal [this message]
2011-02-18 16:19 ` Patrick McHardy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110217212717.GG8821@Chamillionaire.breakpoint.cc \
--to=fw@strlen.de \
--cc=bazsi@balabit.hu \
--cc=hidden@balabit.hu \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).