linux/net/bluetooth
Johan Hedberg a13abd32a7 Bluetooth: Fix setting correct security level when initiating SMP
commit 5eb596f55c upstream.

We can only determine the final security level when both pairing request
and response have been exchanged. When initiating pairing the starting
target security level is set to MEDIUM unless explicitly specified to be
HIGH, so that we can still perform pairing even if the remote doesn't
have MITM capabilities. However, once we've received the pairing
response we should re-consult the remote and local IO capabilities and
upgrade the target security level if necessary.

Without this patch the resulting Long Term Key will occasionally be
reported to be unauthenticated when it in reality is an authenticated
one.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2014-10-30 09:40:16 -07:00
..
bnep net/*: Fix FSF address in file headers 2013-12-06 12:37:57 -05:00
cmtp Bluetooth: Access CMTP session addresses through L2CAP channel 2013-10-13 20:00:30 +03:00
hidp Merge branch 'for-3.15/hid-core-ll-transport-cleanup' into for-linus 2014-04-01 19:05:09 +02:00
rfcomm Bluetooth: Avoid use of session socket after the session gets freed 2014-09-17 09:22:14 -07:00
6lowpan.c Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next 2014-06-05 14:10:07 -04:00
6lowpan.h Bluetooth: make bluetooth 6lowpan as an option 2014-03-11 07:54:55 -07:00
a2mp.c Bluetooth: Convert uses of __constant_<foo> to <foo> 2014-03-12 11:10:17 -07:00
a2mp.h Bluetooth: Move a2mp.h header file into net/bluetooth/ 2013-10-11 00:10:05 +02:00
af_bluetooth.c Bluetooth: Increase minor version of core module 2014-02-21 06:21:55 +02:00
amp.c Bluetooth: Remove l2cap_conn->dst usage from AMP manager 2013-10-13 17:43:32 +03:00
amp.h Bluetooth: Move amp.h header file into net/bluetooth/ 2013-10-11 00:10:03 +02:00
hci_conn.c Bluetooth: Fix for ACL disconnect when pairing fails 2014-06-20 13:53:54 +02:00
hci_core.c Bluetooth: Make SMP context private to smp.c 2014-05-20 08:44:11 -07:00
hci_event.c Bluetooth: Fix using uninitialized variable when pairing 2014-09-17 09:22:14 -07:00
hci_sock.c net: add __pskb_copy_fclone and pskb_copy_for_clone 2014-06-11 15:38:02 -07:00
hci_sysfs.c Bluetooth: Convert to use ATTRIBUTE_GROUPS macro 2014-02-13 09:51:34 +02:00
Kconfig Bluetooth: make sure 6LOWPAN_IPHC is built-in if needed 2014-03-13 07:05:10 -07:00
l2cap_core.c Bluetooth: Fix incorrect LE CoC PDU length restriction based on HCI MTU 2014-10-30 09:40:15 -07:00
l2cap_sock.c Bluetooth: never linger on process exit 2014-09-17 09:22:14 -07:00
lib.c Bluetooth: Add error mapping for Directed Advertising Timeout 2014-03-26 09:31:36 -07:00
Makefile Bluetooth: make bluetooth 6lowpan as an option 2014-03-11 07:54:55 -07:00
mgmt.c Bluetooth: Fix locking of hdev when calling into SMP code 2014-06-13 13:32:29 +02:00
sco.c Bluetooth: never linger on process exit 2014-09-17 09:22:14 -07:00
smp.c Bluetooth: Fix setting correct security level when initiating SMP 2014-10-30 09:40:16 -07:00
smp.h Bluetooth: Make SMP context private to smp.c 2014-05-20 08:44:11 -07:00