linux/net/bluetooth
Johan Hedberg bdb7524a75 Bluetooth: Fix non-SSP auth request for HIGH security level sockets
When initiating dedicated bonding a L2CAP raw socket with HIGH security
level is used. The kernel is supposed to trigger the authentication
request in this case but this doesn't happen currently for non-SSP
(pre-2.1) devices. The reason is that the authentication request happens
in the remote extended features callback which never gets called for
non-SSP devices. This patch fixes the issue by requesting also
authentiation in the (normal) remote features callback in the case of
non-SSP devices.

This rule is applied only for HIGH security level which might at first
seem unintuitive since on the server socket side MEDIUM is already
enough for authentication. However, for the clients we really want to
prefer the server side to decide the authentication requrement in most
cases, and since most client sockets use MEDIUM it's better to be
avoided on the kernel side for these sockets. The important socket to
request it for is the dedicated bonding one and that socket uses HIGH
security level.

The patch is based on the initial investigation and patch proposal from
Andrei Emeltchenko <endrei.emeltchenko@nokia.com>.

Signed-off-by: Johan Hedberg <johan.hedberg@nokia.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
2010-11-09 00:55:27 -02:00
..
bnep Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-07-07 15:59:38 -07:00
cmtp Bluetooth: make batostr() print in the right order 2010-10-12 12:44:52 -03:00
hidp Bluetooth: fix hidp kconfig dependency warning 2010-11-09 00:55:27 -02:00
rfcomm Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2010-10-23 11:47:02 -07:00
af_bluetooth.c Bluetooth: Add common code for stream-oriented recvmsg() 2010-10-12 12:44:51 -03:00
hci_conn.c Bluetooth: Defer SCO setup if mode change is pending 2010-07-27 12:29:04 -07:00
hci_core.c Bluetooth: Don't clear the blacklist when closing the HCI device 2010-10-12 12:44:52 -03:00
hci_event.c Bluetooth: Fix non-SSP auth request for HIGH security level sockets 2010-11-09 00:55:27 -02:00
hci_sock.c Bluetooth: Use list_head for HCI blacklist head 2010-07-31 16:06:58 -07:00
hci_sysfs.c Bluetooth: make batostr() print in the right order 2010-10-12 12:44:52 -03:00
Kconfig Bluetooth: Remove L2CAP Extended Features from Kconfig 2010-07-21 10:39:04 -07:00
l2cap.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-10-21 08:43:05 -07:00
lib.c Bluetooth: make batostr() print in the right order 2010-10-12 12:44:52 -03:00
Makefile
sco.c net: Remove unnecessary returns from void function()s 2010-05-17 23:23:14 -07:00