<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/bluetooth/rfcomm/tty.c, branch linux-2.6.23.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.23.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.23.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2007-07-31T09:28:05Z</updated>
<entry>
<title>[IRDA]: Fix rfcomm use-after-free</title>
<updated>2007-07-31T09:28:05Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2007-07-26T07:12:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=09c7d8293a2d1317d16ef4ddb9f6dd2553d0694e'/>
<id>urn:sha1:09c7d8293a2d1317d16ef4ddb9f6dd2553d0694e</id>
<content type='text'>
Adrian Bunk wrote:
&gt; Commit 8de0a15483b357d0f0b821330ec84d1660cadc4e added the following
&gt; use-after-free in net/bluetooth/rfcomm/tty.c:
&gt;
&gt; &lt;--  snip  --&gt;
&gt;
&gt; ...
&gt; static int rfcomm_dev_add(struct rfcomm_dev_req *req, struct rfcomm_dlc *dlc)
&gt; {
&gt; ...
&gt;         if (IS_ERR(dev-&gt;tty_dev)) {
&gt;                 list_del(&amp;dev-&gt;list);
&gt;                 kfree(dev);
&gt;                 return PTR_ERR(dev-&gt;tty_dev);
&gt;         }
&gt; ...
&gt;
&gt; &lt;--  snip  --&gt;
&gt;
&gt; Spotted by the Coverity checker.

really good catch. I fully overlooked that one. The attached patch
should fix it.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Keep rfcomm_dev on the list until it is freed</title>
<updated>2007-07-11T05:06:51Z</updated>
<author>
<name>Ville Tervo</name>
</author>
<published>2007-07-11T07:23:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8de0a15483b357d0f0b821330ec84d1660cadc4e'/>
<id>urn:sha1:8de0a15483b357d0f0b821330ec84d1660cadc4e</id>
<content type='text'>
This patch changes the RFCOMM TTY release process so that the TTY is kept
on the list until it is really freed. A new device flag is used to keep
track of released TTYs.

Signed-off-by: Ville Tervo &lt;ville.tervo@nokia.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Hangup TTY before releasing rfcomm_dev</title>
<updated>2007-07-11T05:01:26Z</updated>
<author>
<name>Mikko Rapeli</name>
</author>
<published>2007-07-11T07:18:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=84950cf0ba02fd6a5defe2511bc41f9aa2237632'/>
<id>urn:sha1:84950cf0ba02fd6a5defe2511bc41f9aa2237632</id>
<content type='text'>
The core problem is that RFCOMM socket layer ioctl can release
rfcomm_dev struct while RFCOMM TTY layer is still actively using
it. Calling tty_vhangup() is needed for a synchronous hangup before
rfcomm_dev is freed.

Addresses the oops at http://bugzilla.kernel.org/show_bug.cgi?id=7509

Acked-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Check that device is in rfcomm_dev_list before deleting</title>
<updated>2007-05-04T22:36:10Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2007-05-04T22:36:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=77f2a45fa1ba33147fd6cc8ae546188504a822cd'/>
<id>urn:sha1:77f2a45fa1ba33147fd6cc8ae546188504a822cd</id>
<content type='text'>
If RFCOMM_RELEASE_ONHUP flag is on and rfcomm_release_dev is called
before connection is closed, rfcomm_dev is deleted twice from the
rfcomm_dev_list and refcount is messed up. This patch adds a check
before deleting device that the device actually is listed.

Signed-off-by: Ville Tervo &lt;ville.tervo@nokia.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Make use of device_move() for RFCOMM TTY devices</title>
<updated>2007-02-26T19:42:41Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2007-02-17T22:58:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c1a3313698895d8ad4760f98642007bf236af2e8'/>
<id>urn:sha1:c1a3313698895d8ad4760f98642007bf236af2e8</id>
<content type='text'>
In the case of bound RFCOMM TTY devices the parent is not available
before its usage. So when opening a RFCOMM TTY device, move it to
the corresponding ACL device as a child. When closing the device,
move it back to the virtual device tree.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[NET] BLUETOOTH: Fix whitespace errors.</title>
<updated>2007-02-11T07:19:20Z</updated>
<author>
<name>YOSHIFUJI Hideaki</name>
</author>
<published>2007-02-09T14:24:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8e87d14255acffeee36873de226dc25c11b5f46d'/>
<id>urn:sha1:8e87d14255acffeee36873de226dc25c11b5f46d</id>
<content type='text'>
Signed-off-by: YOSHIFUJI Hideaki &lt;yoshfuji@linux-ipv6.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] More checks if DLC is still attached to the TTY</title>
<updated>2007-01-09T08:29:54Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2007-01-08T01:16:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b6e557fbf1dbba8cfa667a25503e5dbd0e9330b7'/>
<id>urn:sha1:b6e557fbf1dbba8cfa667a25503e5dbd0e9330b7</id>
<content type='text'>
If the DLC device is no longer attached to the TTY device, then return
errors or default values for various callbacks of the TTY layer.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] tty: switch to ktermios</title>
<updated>2006-12-08T16:28:57Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2006-12-08T10:38:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=606d099cdd1080bbb50ea50dc52d98252f8f10a1'/>
<id>urn:sha1:606d099cdd1080bbb50ea50dc52d98252f8f10a1</id>
<content type='text'>
This is the grungy swap all the occurrences in the right places patch that
goes with the updates.  At this point we have the same functionality as
before (except that sgttyb() returns speeds not zero) and are ready to
begin turning new stuff on providing nobody reports lots of bugs

If you are a tty driver author converting an out of tree driver the only
impact should be termios-&gt;ktermios name changes for the speed/property
setting functions from your upper layers.

If you are implementing your own TCGETS function before then your driver
was broken already and its about to get a whole lot more painful for you so
please fix it 8)

Also fill in c_ispeed/ospeed on init for most devices, although the current
code will do this for you anyway but I'd like eventually to lose that extra
paranoia

[akpm@osdl.org: bluetooth fix]
[mp3@de.ibm.com: sclp fix]
[mp3@de.ibm.com: warning fix for tty3270]
[hugh@veritas.com: fix tty_ioctl powerpc build]
[jdike@addtoit.com: uml: fix -&gt;set_termios declaration]
Signed-off-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Martin Peschke &lt;mp3@de.ibm.com&gt;
Acked-by: Peter Oberparleiter &lt;oberpar@de.ibm.com&gt;
Cc: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Hugh Dickins &lt;hugh@veritas.com&gt;
Signed-off-by: Jeff Dike &lt;jdike@addtoit.com&gt;
Cc: Paolo 'Blaisorblade' Giarrusso &lt;blaisorblade@yahoo.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Check if RFCOMM session is still attached to the TTY</title>
<updated>2006-11-22T00:16:30Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2006-11-18T21:14:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ff2d367ac33b9278c9516ac1888207dac11d10b0'/>
<id>urn:sha1:ff2d367ac33b9278c9516ac1888207dac11d10b0</id>
<content type='text'>
If the RFCOMM session is no longer attached to the TTY device, then it
makes no sense to go through with changing the termios settings.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>[Bluetooth] Check if DLC is still attached to the TTY</title>
<updated>2006-10-16T06:14:33Z</updated>
<author>
<name>Marcel Holtmann</name>
</author>
<published>2006-10-15T15:31:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cb19d9ea2ce2bcbe291d3d48e3501dc4f33ba627'/>
<id>urn:sha1:cb19d9ea2ce2bcbe291d3d48e3501dc4f33ba627</id>
<content type='text'>
If the DLC device is no longer attached to the TTY device, then it
makes no sense to go through with changing the termios settings.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
</feed>
