<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/net/netfilter, branch v3.12</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v3.12</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.12'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2013-09-30T10:44:38Z</updated>
<entry>
<title>netfilter: synproxy: fix BUG_ON triggered by corrupt TCP packets</title>
<updated>2013-09-30T10:44:38Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2013-09-30T07:51:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f4a87e7bd2eaef26a3ca25437ce8b807de2966ad'/>
<id>urn:sha1:f4a87e7bd2eaef26a3ca25437ce8b807de2966ad</id>
<content type='text'>
TCP packets hitting the SYN proxy through the SYNPROXY target are not
validated by TCP conntrack. When th-&gt;doff is below 5, an underflow happens
when calculating the options length, causing skb_header_pointer() to
return NULL and triggering the BUG_ON().

Handle this case gracefully by checking for NULL instead of using BUG_ON().

Reported-by: Martin Topholm &lt;mph@one.com&gt;
Tested-by: Martin Topholm &lt;mph@one.com&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nf_conntrack: use RCU safe kfree for conntrack extensions</title>
<updated>2013-09-13T09:58:40Z</updated>
<author>
<name>Michal Kubeček</name>
<email>mkubecek@suse.cz</email>
</author>
<published>2013-09-11T08:17:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c13a84a830a208fb3443628773c8ca0557773cc7'/>
<id>urn:sha1:c13a84a830a208fb3443628773c8ca0557773cc7</id>
<content type='text'>
Commit 68b80f11 (netfilter: nf_nat: fix RCU races) introduced
RCU protection for freeing extension data when reallocation
moves them to a new location. We need the same protection when
freeing them in nf_ct_ext_free() in order to prevent a
use-after-free by other threads referencing a NAT extension data
via bysource list.

Signed-off-by: Michal Kubecek &lt;mkubecek@suse.cz&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: add SYNPROXY core/target</title>
<updated>2013-08-27T22:27:54Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2013-08-27T06:50:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=48b1de4c110a7afa4b85862f6c75af817db26fad'/>
<id>urn:sha1:48b1de4c110a7afa4b85862f6c75af817db26fad</id>
<content type='text'>
Add a SYNPROXY for netfilter. The code is split into two parts, the synproxy
core with common functions and an address family specific target.

The SYNPROXY receives the connection request from the client, responds with
a SYN/ACK containing a SYN cookie and announcing a zero window and checks
whether the final ACK from the client contains a valid cookie.

It then establishes a connection to the original destination and, if
successful, sends a window update to the client with the window size
announced by the server.

Support for timestamps, SACK, window scaling and MSS options can be
statically configured as target parameters if the features of the server
are known. If timestamps are used, the timestamp value sent back to
the client in the SYN/ACK will be different from the real timestamp of
the server. In order to now break PAWS, the timestamps are translated in
the direction server-&gt;client.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Tested-by: Martin Topholm &lt;mph@one.com&gt;
Signed-off-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nf_conntrack: make sequence number adjustments usuable without NAT</title>
<updated>2013-08-27T22:26:48Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2013-08-27T06:50:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=41d73ec053d2424599c4ed8452b889374d523ade'/>
<id>urn:sha1:41d73ec053d2424599c4ed8452b889374d523ade</id>
<content type='text'>
Split out sequence number adjustments from NAT and move them to the conntrack
core to make them usable for SYN proxying. The sequence number adjustment
information is moved to a seperate extend. The extend is added to new
conntracks when a NAT mapping is set up for a connection using a helper.

As a side effect, this saves 24 bytes per connection with NAT in the common
case that a connection does not have a helper assigned.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Tested-by: Martin Topholm &lt;mph@one.com&gt;
Signed-off-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nfnetlink_queue: allow to attach expectations to conntracks</title>
<updated>2013-08-13T14:32:10Z</updated>
<author>
<name>Pablo Neira Ayuso</name>
<email>pablo@netfilter.org</email>
</author>
<published>2013-08-07T16:13:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=bd0779370588386e4a67ba5d0b176cfded8e6a53'/>
<id>urn:sha1:bd0779370588386e4a67ba5d0b176cfded8e6a53</id>
<content type='text'>
This patch adds the capability to attach expectations via nfnetlink_queue.
This is required by conntrack helpers that trigger expectations based on
the first packet seen like the TFTP and the DHCPv6 user-space helpers.

Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nf_conntrack: don't send destroy events from iterator</title>
<updated>2013-08-09T10:03:33Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2013-07-29T13:41:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c655bc6896b94ee0223393f26155c6daf1e2d148'/>
<id>urn:sha1:c655bc6896b94ee0223393f26155c6daf1e2d148</id>
<content type='text'>
Let nf_ct_delete handle delivery of the DESTROY event.

Based on earlier patch from Pablo Neira.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nf_nat: change sequence number adjustments to 32 bits</title>
<updated>2013-07-31T17:54:51Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2013-07-28T20:54:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2d89c68ac78ae432038ef23371d2fa949d725d43'/>
<id>urn:sha1:2d89c68ac78ae432038ef23371d2fa949d725d43</id>
<content type='text'>
Using 16 bits is too small, when many adjustments happen the offsets might
overflow and break the connection.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: nf_conntrack: remove duplicate code in ctnetlink</title>
<updated>2013-07-31T16:51:23Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2013-07-29T13:41:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=02982c27ba1e1bd9f9d4747214e19ca83aa88d0e'/>
<id>urn:sha1:02982c27ba1e1bd9f9d4747214e19ca83aa88d0e</id>
<content type='text'>
ctnetlink contains copy-paste code from death_by_timeout.  In order to
avoid changing both places in upcoming event delivery patch,
export death_by_timeout functionality and use it in the ctnetlink code.

Based on earlier patch from Pablo Neira.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: tproxy: remove nf_tproxy_core.h</title>
<updated>2013-07-31T16:43:45Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2013-07-29T13:41:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=93742cf8af9dd3b053242b273040aa35fcbf93b3'/>
<id>urn:sha1:93742cf8af9dd3b053242b273040aa35fcbf93b3</id>
<content type='text'>
We've removed nf_tproxy_core.ko, so also remove its header.
The lookup helpers are split and then moved to tproxy target/socket match.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: tproxy: remove nf_tproxy_core, keep tw sk assigned to skb</title>
<updated>2013-07-31T14:39:40Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2013-07-29T13:41:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=fd158d79d33d3c8b693e3e2d8c0e3068d529c2dc'/>
<id>urn:sha1:fd158d79d33d3c8b693e3e2d8c0e3068d529c2dc</id>
<content type='text'>
The module was "permanent", due to the special tproxy skb-&gt;destructor.
Nowadays we have tcp early demux and its sock_edemux destructor in
networking core which can be used instead.

Thanks to early demux changes the input path now also handles
"skb-&gt;sk is tw socket" correctly, so this no longer needs the special
handling introduced with commit d503b30bd648b3cb4e5f50b65d27e389960cc6d9
(netfilter: tproxy: do not assign timewait sockets to skb-&gt;sk).

Thus:
- move assign_sock function to where its needed
- don't prevent timewait sockets from being assigned to the skb
- remove nf_tproxy_core.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
</feed>
