From: Laszlo Attila Toth <panther@balabit.hu>
To: Jan Engelhardt <jengelh@computergmbh.de>
Cc: Patrick McHardy <kaber@trash.net>,
Netfilter Developer Mailing List
<netfilter-devel@vger.kernel.org>,
KOVACS Krisztian <hidden@sch.bme.hu>
Subject: Re: xt_owner-xt_socket plans
Date: Mon, 21 Jan 2008 15:26:32 +0100 [thread overview]
Message-ID: <4794AB98.1050607@balabit.hu> (raw)
In-Reply-To: <Pine.LNX.4.64.0801211417200.24186@fbirervta.pbzchgretzou.qr>
Jan Engelhardt írta:
> On January 21 2008 10:11, Laszlo Attila Toth wrote:
>> Jan Engelhardt wrote:
>>> I just remembered that xt_socket (from tproxy) does an (explicit) socket
>>> lookup. xt_owner on the other hand, takes the socket pointer from the skb --
>>> which of course only works in the output path.
>>>
>>> xt_owner is still in the 2.6.25 development queue, and because the two
>>> modules are similar, I thought that maybe xt_owner could be merged with
>>> xt_socket (doing a rename to xt_socket in the current net-2.6.25),
>>> because they are quite close in their task.
>>>
>>> That would also allow xt_owner to be used in the input path.
>>>
>>> Opinions?
>> Hello,
>>
>> That sounds great.
>>
>> Note that the socket match depends on tproxy core, also the tproxy would be
>> partially merged into the net-2.25 tree. [...]
>
> Here is what I had in mind, please have a look.
> http://dev.computergmbh.de/gitweb.cgi?p=linux;h=dev-xtsocket;a=shortlog
>
The following snippet of socket_mt_get() should be in socket_mt():
if (sk != NULL)
nf_tproxy_put_sock(sk);
The socket buffer is first referenced by nf_tproxy_get_v4() then
immediately released (put back) also it is not garanteed that the socket
is valid. Furthermore I don't know whether the sk->sk_socket is valid
through the whole function in a multiprocessor environment (the program,
that opened it, may close the socket).
The tproxy lookup only works with tcp and udp, and afaik the original
owner match also limited to these protocols, also it can be tested in
socket_mt4_check()
I noticed that you forgot rename the match to "socket" in socket_mt_reg[].
Except these the patch is ok.
--
Attila
-
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2008-01-21 14:26 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-20 18:21 xt_owner-xt_socket plans Jan Engelhardt
2008-01-21 9:11 ` Laszlo Attila Toth
2008-01-21 10:58 ` Jan Engelhardt
2008-01-21 11:58 ` Laszlo Attila Toth
2008-01-21 12:20 ` KOVACS Krisztian
2008-01-21 13:16 ` Jan Engelhardt
2008-01-21 14:46 ` KOVACS Krisztian
2008-01-21 23:04 ` Jan Engelhardt
2008-01-21 13:23 ` Jan Engelhardt
2008-01-21 14:26 ` Laszlo Attila Toth [this message]
2008-01-21 23:22 ` Jan Engelhardt
2008-01-22 7:54 ` KOVACS Krisztian
2008-01-21 14:41 ` KOVACS Krisztian
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=4794AB98.1050607@balabit.hu \
--to=panther@balabit.hu \
--cc=hidden@sch.bme.hu \
--cc=jengelh@computergmbh.de \
--cc=kaber@trash.net \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.