Home Home > GIT Browse > SLE15
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2019-05-26 09:10:06 +0200
committerTakashi Iwai <tiwai@suse.de>2019-05-26 09:10:06 +0200
commit6cda8792a5b75d99f543fddd3426a38fc189a5b1 (patch)
tree7e511cf15beece05784bcb1c7e9377c915621897
parent7358223589a24e13b0898003b38d3dc29f13396c (diff)
Bluetooth: Check key sizes only when Secure Simple Pairing is
enabled (bsc#1135556).
-rw-r--r--patches.suse/RFC-Bluetooth-Check-key-sizes-only-when-Secure-Simple-Pairing-is-enabled.patch42
-rw-r--r--series.conf2
2 files changed, 44 insertions, 0 deletions
diff --git a/patches.suse/RFC-Bluetooth-Check-key-sizes-only-when-Secure-Simple-Pairing-is-enabled.patch b/patches.suse/RFC-Bluetooth-Check-key-sizes-only-when-Secure-Simple-Pairing-is-enabled.patch
new file mode 100644
index 0000000000..15772982c9
--- /dev/null
+++ b/patches.suse/RFC-Bluetooth-Check-key-sizes-only-when-Secure-Simple-Pairing-is-enabled.patch
@@ -0,0 +1,42 @@
+From: Marcel Holtmann <marcel@holtmann.org>
+Subject: [RFC] Bluetooth: Check key sizes only when Secure Simple Pairing is enabled
+Date: Wed, 22 May 2019 09:05:40 +0200
+Message-id: <20190522070540.48895-1-marcel@holtmann.org>
+Patch-mainline: No, RFC
+References: bsc#1135556
+
+The encryption is only mandatory to be enforced when both sides are using
+Secure Simple Pairing and this means the key size check makes only sense
+in that case.
+
+On legacy Bluetooth 2.0 and earlier devices like mice the encryption was
+optional and thus causing an issue if the key size check is not bound to
+using Secure Simple Pairing.
+
+Fixes: d5bb334a8e17 ("Bluetooth: Align minimum encryption key size for LE and BR/EDR connections")
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+Cc: stable@vger.kernel.org
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+
+---
+ net/bluetooth/hci_conn.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+--- a/net/bluetooth/hci_conn.c
++++ b/net/bluetooth/hci_conn.c
+@@ -1148,8 +1148,13 @@ int hci_conn_check_link_mode(struct hci_
+ return 0;
+ }
+
+- if (hci_conn_ssp_enabled(conn) &&
+- !test_bit(HCI_CONN_ENCRYPT, &conn->flags))
++ /* If Secure Simple Pairing is not enabled, then legacy connection
++ * setup is used and no encryption or key sizes can be enforced.
++ */
++ if (!hci_conn_ssp_enabled(conn))
++ return 1;
++
++ if (!test_bit(HCI_CONN_ENCRYPT, &conn->flags))
+ return 0;
+
+ /* The minimum encryption key size needs to be enforced by the
diff --git a/series.conf b/series.conf
index 50481ef042..3979f9518b 100644
--- a/series.conf
+++ b/series.conf
@@ -22569,6 +22569,8 @@
patches.suse/ath10k-QCA9377-firmware-limit.patch
patches.kabi/bt_accept_enqueue-kabi-workaround.patch
+ patches.suse/RFC-Bluetooth-Check-key-sizes-only-when-Secure-Simple-Pairing-is-enabled.patch
+
########################################################
# ISDN
########################################################