diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-23 00:06:38 +0400 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-23 15:07:01 +0400 |
commit | 7770c4aacaf34fb69cb2acfb7469e9b4e34f1674 (patch) | |
tree | 98c0ab7916a0dae04b2c1317ff44bf16452a88f5 /net/bluetooth/mgmt.c | |
parent | 8ec37034ef36b89cfb060bd9273db24e6acb1b3a (diff) | |
download | linux-7770c4aacaf34fb69cb2acfb7469e9b4e34f1674.tar.xz |
Bluetooth: mgmt: Check for HCI_UP in update_eir() and update_class()
These functions should just silently fail when we're not powered on
instead of trying to send HCI commands.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/mgmt.c')
-rw-r--r-- | net/bluetooth/mgmt.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index 23421f05abf2..3a2066504ffe 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c @@ -532,6 +532,9 @@ static int update_eir(struct hci_dev *hdev) { struct hci_cp_write_eir cp; + if (!test_bit(HCI_UP, &hdev->flags)) + return 0; + if (!(hdev->features[6] & LMP_EXT_INQ)) return 0; @@ -570,6 +573,9 @@ static int update_class(struct hci_dev *hdev) BT_DBG("%s", hdev->name); + if (!test_bit(HCI_UP, &hdev->flags)) + return 0; + if (test_bit(HCI_SERVICE_CACHE, &hdev->dev_flags)) return 0; |