<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/ipv4/udp.c, branch linux-2.6.27.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.27.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.27.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-12-09T21:24:20Z</updated>
<entry>
<title>Limit sysctl_tcp_mem and sysctl_udp_mem initializers to prevent integer overflows.</title>
<updated>2010-12-09T21:24:20Z</updated>
<author>
<name>Robin Holt</name>
</author>
<published>2010-10-20T02:03:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8fe45abc8d6f871411f8305d82bb999926629afb'/>
<id>urn:sha1:8fe45abc8d6f871411f8305d82bb999926629afb</id>
<content type='text'>
[ Upstream fixed this in a different way as parts of the commits:
	8d987e5c7510 (net: avoid limits overflow)
	a9febbb4bd13 (sysctl: min/max bounds are optional)
	27b3d80a7b6a (sysctl: fix min/max handling in __do_proc_doulongvec_minmax())
 -DaveM ]
 
On a 16TB x86_64 machine, sysctl_tcp_mem[2], sysctl_udp_mem[2], and
sysctl_sctp_mem[2] can integer overflow.  Set limit such that they are
maximized without overflowing.

Signed-off-by: Robin Holt &lt;holt@sgi.com&gt;
To: "David S. Miller" &lt;davem@davemloft.net&gt;
Cc: Willy Tarreau &lt;w@1wt.eu&gt;
Cc: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-sctp@vger.kernel.org
Cc: Alexey Kuznetsov &lt;kuznet@ms2.inr.ac.ru&gt;
Cc: "Pekka Savola (ipv6)" &lt;pekkas@netcore.fi&gt;
Cc: James Morris &lt;jmorris@namei.org&gt;
Cc: Hideaki YOSHIFUJI &lt;yoshfuji@linux-ipv6.org&gt;
Cc: Patrick McHardy &lt;kaber@trash.net&gt;
Cc: Vlad Yasevich &lt;vladislav.yasevich@hp.com&gt;
Cc: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>udp: increments sk_drops in __udp_queue_rcv_skb()</title>
<updated>2009-02-17T17:46:23Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2009-02-02T21:41:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03b0d4d0c3d219d3b163e4e9b160da9c36057579'/>
<id>urn:sha1:03b0d4d0c3d219d3b163e4e9b160da9c36057579</id>
<content type='text'>
[ Upstream commit e408b8dcb5ce42243a902205005208e590f28454 ]

Commit 93821778def10ec1e69aa3ac10adee975dad4ff3 (udp: Fix rcv socket
locking) accidentally removed sk_drops increments for UDP IPV4
sockets.

This field can be used to detect incorrect sizing of socket receive
buffers.

Signed-off-by: Eric Dumazet &lt;dada1@cosmosbay.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>udp: Fix UDP short packet false positive</title>
<updated>2009-02-17T17:46:23Z</updated>
<author>
<name>Jesper Dangaard Brouer</name>
</author>
<published>2009-02-05T23:05:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2c55d86dc58c8e530d8cdff30e8529373dfa4804'/>
<id>urn:sha1:2c55d86dc58c8e530d8cdff30e8529373dfa4804</id>
<content type='text'>
[ Upstream commit 7b5e56f9d635643ad54f2f42e69ad16b80a2cff1 ]

The UDP header pointer assignment must happen after calling
pskb_may_pull().  As pskb_may_pull() can potentially alter the SKB
buffer.

This was exposted by running multicast traffic through the NIU driver,
as it won't prepull the protocol headers into the linear area on
receive.

Signed-off-by: Jesper Dangaard Brouer &lt;hawk@comx.dk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>udp: multicast packets need to check namespace</title>
<updated>2008-12-13T23:29:12Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2008-12-08T10:12:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6e7f7429b1f5a151943d920e52fdd59b5e7d13ba'/>
<id>urn:sha1:6e7f7429b1f5a151943d920e52fdd59b5e7d13ba</id>
<content type='text'>
[ Upstream commit 920a46115ca3fa88990276d98520abab85495b2d ]

Current UDP multicast delivery is not namespace aware.

Signed-off-by: Eric Dumazet &lt;dada1@cosmosbay.com&gt;
Acked-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>udp: Fix rcv socket locking</title>
<updated>2008-09-15T18:48:46Z</updated>
<author>
<name>Herbert Xu</name>
</author>
<published>2008-09-15T18:48:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=93821778def10ec1e69aa3ac10adee975dad4ff3'/>
<id>urn:sha1:93821778def10ec1e69aa3ac10adee975dad4ff3</id>
<content type='text'>
The previous patch in response to the recursive locking on IPsec
reception is broken as it tries to drop the BH socket lock while in
user context.

This patch fixes it by shrinking the section protected by the
socket lock to sock_queue_rcv_skb only.  The only reason we added
the lock is for the accounting which happens in that function.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>udp: Drop socket lock for encapsulated packets</title>
<updated>2008-08-09T07:35:05Z</updated>
<author>
<name>Herbert Xu</name>
</author>
<published>2008-08-09T07:35:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d97106ea52aa57e63ff40d04479016836bbb5a4e'/>
<id>urn:sha1:d97106ea52aa57e63ff40d04479016836bbb5a4e</id>
<content type='text'>
The socket lock is there to protect the normal UDP receive path.
Encapsulation UDP sockets don't need that protection.  In fact
the locking is deadly for them as they may contain another UDP
packet within, possibly with the same addresses.

Also the nested bit was copied from TCP.  TCP needs it because
of accept(2) spawning sockets.  This simply doesn't apply to UDP
so I've removed it.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>udplite: Protection against coverage value wrap-around</title>
<updated>2008-07-21T20:35:08Z</updated>
<author>
<name>Gerrit Renker</name>
</author>
<published>2008-07-21T20:35:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=47112e25da41d9059626033986dc3353e101f815'/>
<id>urn:sha1:47112e25da41d9059626033986dc3353e101f815</id>
<content type='text'>
This patch clamps the cscov setsockopt values to a maximum of 0xFFFF.

Setsockopt values greater than 0xffff can cause an unwanted
wrap-around.  Further, IPv6 jumbograms are not supported (RFC 3838,
3.5), so that values greater than 0xffff are not even useful.

Further changes: fixed a typo in the documentation.

Signed-off-by: Gerrit Renker &lt;gerrit@erg.abdn.ac.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mib: put udp statistics on struct net</title>
<updated>2008-07-18T11:03:27Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2008-07-18T11:03:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2f275f91a438abd8eec5321798d66a4ffe6869fa'/>
<id>urn:sha1:2f275f91a438abd8eec5321798d66a4ffe6869fa</id>
<content type='text'>
Similar to... ouch, I repeat myself.

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mib: add net to IP_INC_STATS_BH</title>
<updated>2008-07-17T03:20:11Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2008-07-17T03:20:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7c73a6faffae0bfae70639113aecf06af666e714'/>
<id>urn:sha1:7c73a6faffae0bfae70639113aecf06af666e714</id>
<content type='text'>
Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv4: prepare net initialization for IP accounting</title>
<updated>2008-07-17T03:19:08Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2008-07-17T03:19:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=84a3aa000eacbaf841d745b07ef3a3280899056b'/>
<id>urn:sha1:84a3aa000eacbaf841d745b07ef3a3280899056b</id>
<content type='text'>
Some places, that deal with IP statistics already have where to
get a struct net from, but use it directly, without declaring
a separate variable on the stack.

So, save this net on the stack for future IP_XXX_STATS macros.

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
