aboutsummaryrefslogtreecommitdiff
path: root/crypto/cts.c
diff options
context:
space:
mode:
authorGianluca Anzolin <gianluca@sottospazio.it>2014-01-06 21:23:50 +0100
committerMarcel Holtmann <marcel@holtmann.org>2014-01-06 13:51:45 -0800
commit5b899241874dcc1a2b932a668731c80a3a869575 (patch)
treea138c1ce7fb63a0a966fc64e86a26d80b3f80f6d /crypto/cts.c
parentcb6ca8e1ed922082bacc6e5e5ee040491a443ea2 (diff)
Bluetooth: Release RFCOMM port when the last user closes the TTY
This patch fixes a userspace regression introduced by the commit 29cd718b. If the rfcomm device was created with the flag RFCOMM_RELEASE_ONHUP the user space expects that the tty_port is released as soon as the last process closes the tty. The current code attempts to release the port in the function rfcomm_dev_state_change(). However it won't get a reference to the relevant tty to send a HUP: at that point the tty is already destroyed and therefore NULL. This patch fixes the regression by taking over the tty refcount in the tty install method(). This way the tty_port is automatically released as soon as the tty is destroyed. As a consequence the check for RFCOMM_RELEASE_ONHUP flag in the hangup() method is now redundant. Instead we have to be careful with the reference counting in the rfcomm_release_dev() function. Signed-off-by: Gianluca Anzolin <gianluca@sottospazio.it> Reported-by: Alexander Holler <holler@ahsoftware.de> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'crypto/cts.c')
0 files changed, 0 insertions, 0 deletions