diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-22 15:38:48 +0200 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-23 13:06:59 +0200 |
commit | c80da27e868f6ffbe1c6588937aa4e7aeab21dec (patch) | |
tree | 0ce0ee1b706f4b58c91431bc63bf5d82c9ff6a7e /net/bluetooth/mgmt.c | |
parent | 5fc6ebb102fdf6f589242ebfe3a07d112d60c7d5 (diff) | |
download | op-kernel-dev-c80da27e868f6ffbe1c6588937aa4e7aeab21dec.zip op-kernel-dev-c80da27e868f6ffbe1c6588937aa4e7aeab21dec.tar.gz |
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/mgmt.c')
-rw-r--r-- | net/bluetooth/mgmt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index bdaadb2..08c657d 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); |