* [PATCH 1/2] Bluetooth: Fix link security setting when powering on
@ 2013-01-26 22:33 Johan Hedberg
2013-01-26 22:33 ` [PATCH 2/2] Bluetooth: Increment Management interface revision Johan Hedberg
2013-01-27 3:15 ` [PATCH 1/2] Bluetooth: Fix link security setting when powering on Marcel Holtmann
0 siblings, 2 replies; 3+ messages in thread
From: Johan Hedberg @ 2013-01-26 22:33 UTC (permalink / raw)
To: linux-bluetooth
From: Johan Hedberg <johan.hedberg@intel.com>
If a controller is powered on while the HCI_AUTO_OFF flag is set the
link security setting (HCI_LINK_SECURITY) might not be in sync with the
actual state of the controller (HCI_AUTH). This patch fixes the issue by
checking for inequality between the intended and actual settings and
sends a HCI_Write_Auth_Enable command if necessary.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
---
net/bluetooth/mgmt.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index fbc8edf..f6ef8ff 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -3096,6 +3096,13 @@ int mgmt_powered(struct hci_dev *hdev, u8 powered)
sizeof(cp), &cp);
}
+ if (test_bit(HCI_LINK_SECURITY, &hdev->dev_flags) !=
+ test_bit(HCI_AUTH, &hdev->flags)) {
+ u8 val = test_bit(HCI_LINK_SECURITY, &hdev->dev_flags);
+ hci_send_cmd(hdev, HCI_OP_WRITE_AUTH_ENABLE,
+ sizeof(val), &val);
+ }
+
if (lmp_bredr_capable(hdev)) {
set_bredr_scan(hdev);
update_class(hdev);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* [PATCH 2/2] Bluetooth: Increment Management interface revision
2013-01-26 22:33 [PATCH 1/2] Bluetooth: Fix link security setting when powering on Johan Hedberg
@ 2013-01-26 22:33 ` Johan Hedberg
2013-01-27 3:15 ` [PATCH 1/2] Bluetooth: Fix link security setting when powering on Marcel Holtmann
1 sibling, 0 replies; 3+ messages in thread
From: Johan Hedberg @ 2013-01-26 22:33 UTC (permalink / raw)
To: linux-bluetooth
From: Johan Hedberg <johan.hedberg@intel.com>
The fixing of several mgmt issues, such as the correct handling of 32
and 128 bit UUIDs means that it is now safe for user space to send such
commands. However, user space needs a way to detect that it is safe, so
increment the mgmt revision so that it can be checked against.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
---
net/bluetooth/mgmt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index f6ef8ff..8e69d89 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -35,7 +35,7 @@
bool enable_hs;
#define MGMT_VERSION 1
-#define MGMT_REVISION 2
+#define MGMT_REVISION 3
static const u16 mgmt_commands[] = {
MGMT_OP_READ_INDEX_LIST,
--
1.7.10.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH 1/2] Bluetooth: Fix link security setting when powering on
2013-01-26 22:33 [PATCH 1/2] Bluetooth: Fix link security setting when powering on Johan Hedberg
2013-01-26 22:33 ` [PATCH 2/2] Bluetooth: Increment Management interface revision Johan Hedberg
@ 2013-01-27 3:15 ` Marcel Holtmann
1 sibling, 0 replies; 3+ messages in thread
From: Marcel Holtmann @ 2013-01-27 3:15 UTC (permalink / raw)
To: Johan Hedberg; +Cc: linux-bluetooth
Hi Johan,
> If a controller is powered on while the HCI_AUTO_OFF flag is set the
> link security setting (HCI_LINK_SECURITY) might not be in sync with the
> actual state of the controller (HCI_AUTH). This patch fixes the issue by
> checking for inequality between the intended and actual settings and
> sends a HCI_Write_Auth_Enable command if necessary.
>
> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
> ---
> net/bluetooth/mgmt.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
> index fbc8edf..f6ef8ff 100644
> --- a/net/bluetooth/mgmt.c
> +++ b/net/bluetooth/mgmt.c
> @@ -3096,6 +3096,13 @@ int mgmt_powered(struct hci_dev *hdev, u8 powered)
> sizeof(cp), &cp);
> }
>
> + if (test_bit(HCI_LINK_SECURITY, &hdev->dev_flags) !=
> + test_bit(HCI_AUTH, &hdev->flags)) {
> + u8 val = test_bit(HCI_LINK_SECURITY, &hdev->dev_flags);
> + hci_send_cmd(hdev, HCI_OP_WRITE_AUTH_ENABLE,
> + sizeof(val), &val);
> + }
why not actually just test for the value and store its result, then
compare and then use the value. Testing HCI_LINK_SECURITY twice seems a
bit too much.
Regards
Marcel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-01-27 3:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-26 22:33 [PATCH 1/2] Bluetooth: Fix link security setting when powering on Johan Hedberg
2013-01-26 22:33 ` [PATCH 2/2] Bluetooth: Increment Management interface revision Johan Hedberg
2013-01-27 3:15 ` [PATCH 1/2] Bluetooth: Fix link security setting when powering on Marcel Holtmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox