<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net, branch v2.6.27.9</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net?h=v2.6.27.9</id>
<link rel='self' href='https://git.amat.us/linux/atom/net?h=v2.6.27.9'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2008-12-13T23:29:17Z</updated>
<entry>
<title>ATM: CVE-2008-5079: duplicate listen() on socket corrupts the vcc table</title>
<updated>2008-12-13T23:29:17Z</updated>
<author>
<name>Chas Williams</name>
<email>chas@cmf.nrl.navy.mil</email>
</author>
<published>2008-12-04T22:58:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=408ed10553e708166cdee751cf0e1babc602ee17'/>
<id>urn:sha1:408ed10553e708166cdee751cf0e1babc602ee17</id>
<content type='text'>
commit 17b24b3c97498935a2ef9777370b1151dfed3f6f upstream.

As reported by Hugo Dias that it is possible to cause a local denial
of service attack by calling the svc_listen function twice on the same
socket and reading /proc/net/atm/*vc

Signed-off-by: Chas Williams &lt;chas@cmf.nrl.navy.mil&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>
<email>dada1@cosmosbay.com</email>
</author>
<published>2008-12-08T10:12:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/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>af_unix: netns: fix problem of return value</title>
<updated>2008-12-13T23:29:11Z</updated>
<author>
<name>Jianjun Kong</name>
<email>jianjun@zeuux.org</email>
</author>
<published>2008-11-02T04:37:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0a2093552fba5f5e06bd81e413f62f60880dd182'/>
<id>urn:sha1:0a2093552fba5f5e06bd81e413f62f60880dd182</id>
<content type='text'>
[ Upstream commit 48dcc33e5e11de0f76b65b113988dbc930d17395 ]

fix problem of return value

net/unix/af_unix.c: unix_net_init()
when error appears, it should return 'error', not always return 0.

Signed-off-by: Jianjun Kong &lt;jianjun@zeuux.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

</content>
</entry>
<entry>
<title>net: Fix soft lockups/OOM issues w/ unix garbage collector (CVE-2008-5300)</title>
<updated>2008-12-05T18:55:25Z</updated>
<author>
<name>dann frazier</name>
<email>dannf@hp.com</email>
</author>
<published>2008-11-26T23:32:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d7fc504d906a210ae3e24741e45504c1df87035f'/>
<id>urn:sha1:d7fc504d906a210ae3e24741e45504c1df87035f</id>
<content type='text'>
commit 5f23b734963ec7eaa3ebcd9050da0c9b7d143dd3 upstream.

This is an implementation of David Miller's suggested fix in:
  https://bugzilla.redhat.com/show_bug.cgi?id=470201

It has been updated to use wait_event() instead of
wait_event_interruptible().

Paraphrasing the description from the above report, it makes sendmsg()
block while UNIX garbage collection is in progress. This avoids a
situation where child processes continue to queue new FDs over a
AF_UNIX socket to a parent which is in the exit path and running
garbage collection on these FDs. This contention can result in soft
lockups and oom-killing of unrelated processes.

Signed-off-by: dann frazier &lt;dannf@hp.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>net: fix /proc/net/snmp as memory corruptor</title>
<updated>2008-11-20T22:54:48Z</updated>
<author>
<name>Eric Dumazet</name>
<email>dada1@cosmosbay.com</email>
</author>
<published>2008-11-11T05:43:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=861ea9ffa58a2c2cd55bc87b59e8eb77fb635b28'/>
<id>urn:sha1:861ea9ffa58a2c2cd55bc87b59e8eb77fb635b28</id>
<content type='text'>
commit b971e7ac834e9f4bda96d5a96ae9abccd01c1dd8 upstream.

icmpmsg_put() can happily corrupt kernel memory, using a static
table and forgetting to reset an array index in a loop.

Remove the static array since its not safe without proper locking.

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
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>net: unix: fix inflight counting bug in garbage collector</title>
<updated>2008-11-13T17:55:58Z</updated>
<author>
<name>Miklos Szeredi</name>
<email>mszeredi@suse.cz</email>
</author>
<published>2008-11-09T19:50:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=dc56d50c44eb80aca5ce60e881c6444f39c82461'/>
<id>urn:sha1:dc56d50c44eb80aca5ce60e881c6444f39c82461</id>
<content type='text'>
commit 6209344f5a3795d34b7f2c0061f49802283b6bdd upstream

Previously I assumed that the receive queues of candidates don't
change during the GC.  This is only half true, nothing can be received
from the queues (see comment in unix_gc()), but buffers could be added
through the other half of the socket pair, which may still have file
descriptors referring to it.

This can result in inc_inflight_move_tail() erronously increasing the
"inflight" counter for a unix socket for which dec_inflight() wasn't
previously called.  This in turn can trigger the "BUG_ON(total_refs &lt;
inflight_refs)" in a later garbage collection run.

Fix this by only manipulating the "inflight" counter for sockets which
are candidates themselves.  Duplicating the file references in
unix_attach_fds() is also needed to prevent a socket becoming a
candidate for GC while the skb that contains it is not yet queued.

Reported-by: Andrea Bittau &lt;a.bittau@cs.ucl.ac.uk&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>net: Fix recursive descent in __scm_destroy().</title>
<updated>2008-11-07T17:55:19Z</updated>
<author>
<name>David Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-11-06T08:37:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1dbbd0bf5d15397a4e4a1ae3e3e82e0fe4f83c3a'/>
<id>urn:sha1:1dbbd0bf5d15397a4e4a1ae3e3e82e0fe4f83c3a</id>
<content type='text'>
commit f8d570a4745835f2238a33b537218a1bb03fc671 and
3b53fbf4314594fa04544b02b2fc6e607912da18 upstream (because once wasn't
good enough...)

__scm_destroy() walks the list of file descriptors in the scm_fp_list
pointed to by the scm_cookie argument.

Those, in turn, can close sockets and invoke __scm_destroy() again.

There is nothing which limits how deeply this can occur.

The idea for how to fix this is from Linus.  Basically, we do all of
the fput()s at the top level by collecting all of the scm_fp_list
objects hit by an fput().  Inside of the initial __scm_destroy() we
keep running the list until it is empty.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>pkt_sched: sch_generic: Fix oops in sch_teql</title>
<updated>2008-11-07T03:05:41Z</updated>
<author>
<name>Jarek Poplawski</name>
<email>jarkao2@gmail.com</email>
</author>
<published>2008-10-20T06:37:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9a8eac41549d7ae0e40744177edd8dc8d59592e4'/>
<id>urn:sha1:9a8eac41549d7ae0e40744177edd8dc8d59592e4</id>
<content type='text'>
[ Upstream commit 9f3ffae0dbce491a3e9871b686342fd5aa854f05 ]

After these commands:
# modprobe sch_teql
# tc qdisc add dev eth0 root teql0
# tc qdisc del dev eth0 root
we get an oops in teql_destroy() when spin_lock is taken from a null
qdisc_sleeping pointer. It's because at the moment teql0 dev haven't
been activated yet, and a qdisc_root_sleeping() is pointing to noop
qdisc's netdev_queue with qdisc_sleeping uninitialized. This patch
fixes this both for noop and noqueue netdev_queues to avoid similar
problems in the future.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.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>tcpv6: fix option space offsets with md5</title>
<updated>2008-11-07T03:05:41Z</updated>
<author>
<name>Ilpo Järvinen</name>
<email>ilpo.jarvinen@helsinki.fi</email>
</author>
<published>2008-10-08T21:36:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a331c85a4d4b4d150d1cd9217aec376cabedd0bf'/>
<id>urn:sha1:a331c85a4d4b4d150d1cd9217aec376cabedd0bf</id>
<content type='text'>
[ Upstream commit 53b125779fb0b29e5b316bf3dc7d199e6dcea567 ]

More breakage :-), part of timestamps just were previously
overwritten.

Signed-off-by: Ilpo Järvinen &lt;ilpo.jarvinen@helsinki.fi&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>tcp: Restore ordering of TCP options for the sake of inter-operability</title>
<updated>2008-11-07T03:05:41Z</updated>
<author>
<name>Ilpo Järvinen</name>
<email>ilpo.jarvinen@helsinki.fi</email>
</author>
<published>2008-10-23T21:06:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d4c9dac18e980a46ab767b2fd0182e58f8e44279'/>
<id>urn:sha1:d4c9dac18e980a46ab767b2fd0182e58f8e44279</id>
<content type='text'>
[ Upstream commit fd6149d332973bafa50f03ddb0ea9513e67f4517 ]

This is not our bug! Sadly some devices cannot cope with the change
of TCP option ordering which was a result of the recent rewrite of
the option code (not that there was some particular reason steming
from the rewrite for the reordering) though any ordering of TCP
options is perfectly legal. Thus we restore the original ordering
to allow interoperability with/through such broken devices and add
some warning about this trap. Since the reordering just happened
without any particular reason, this change shouldn't cost us
anything.

There are already couple of known failure reports (within close
proximity of the last release), so the problem might be more
wide-spread than a single device. And other reports which may
be due to the same problem though the symptoms were less obvious.
Analysis of one of the case revealed (with very high probability)
that sack capability cannot be negotiated as the first option
(SYN never got a response).

Signed-off-by: Ilpo Järvinen &lt;ilpo.jarvinen@helsinki.fi&gt;
Reported-by: Aldo Maggi &lt;sentiniate@tiscali.it&gt;
Tested-by: Aldo Maggi &lt;sentiniate@tiscali.it&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>
</feed>
