summaryrefslogtreecommitdiffstats
path: root/net/bluetooth
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2012-02-22 15:38:48 +0200
committerJohan Hedberg <johan.hedberg@intel.com>2012-02-23 13:06:59 +0200
commitc80da27e868f6ffbe1c6588937aa4e7aeab21dec (patch)
tree0ce0ee1b706f4b58c91431bc63bf5d82c9ff6a7e /net/bluetooth
parent5fc6ebb102fdf6f589242ebfe3a07d112d60c7d5 (diff)
Bluetooth: mgmt: Fix clearing of hdev->eir
The hdev->eir buffer needs to be cleared when clearing the EIR data. Otherwise subsequent attempts at setting the EIR to something valid again may fail because the code thinks that the EIR hasn't changed. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth')
-rw-r--r--net/bluetooth/mgmt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index bdaadb278ce..08c657df7f8 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -3400,6 +3400,8 @@ static int clear_eir(struct hci_dev *hdev)
if (!(hdev->features[6] & LMP_EXT_INQ))
return 0;
+ memset(hdev->eir, 0, sizeof(hdev->eir));
+
memset(&cp, 0, sizeof(cp));
return hci_send_cmd(hdev, HCI_OP_WRITE_EIR, sizeof(cp), &cp);