Bluetooth: Fix flags of mgmt_device_found event
Change flags field to matches userspace structure. This field needs to be converted to little endian before forward it. Signed-off-by: Jefferson Delfes <jefferson.delfes@openbossa.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
This commit is contained in:
parent
11778716ed
commit
af7985bf85
|
@ -444,7 +444,7 @@ struct mgmt_ev_auth_failed {
|
||||||
struct mgmt_ev_device_found {
|
struct mgmt_ev_device_found {
|
||||||
struct mgmt_addr_info addr;
|
struct mgmt_addr_info addr;
|
||||||
__s8 rssi;
|
__s8 rssi;
|
||||||
__u8 flags[4];
|
__le32 flags;
|
||||||
__le16 eir_len;
|
__le16 eir_len;
|
||||||
__u8 eir[0];
|
__u8 eir[0];
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
|
@ -3546,9 +3546,9 @@ int mgmt_device_found(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
|
||||||
ev->addr.type = link_to_bdaddr(link_type, addr_type);
|
ev->addr.type = link_to_bdaddr(link_type, addr_type);
|
||||||
ev->rssi = rssi;
|
ev->rssi = rssi;
|
||||||
if (cfm_name)
|
if (cfm_name)
|
||||||
ev->flags[0] |= MGMT_DEV_FOUND_CONFIRM_NAME;
|
ev->flags |= MGMT_DEV_FOUND_CONFIRM_NAME;
|
||||||
if (!ssp)
|
if (!ssp)
|
||||||
ev->flags[0] |= MGMT_DEV_FOUND_LEGACY_PAIRING;
|
ev->flags |= MGMT_DEV_FOUND_LEGACY_PAIRING;
|
||||||
|
|
||||||
if (eir_len > 0)
|
if (eir_len > 0)
|
||||||
memcpy(ev->eir, eir, eir_len);
|
memcpy(ev->eir, eir, eir_len);
|
||||||
|
@ -3558,6 +3558,7 @@ int mgmt_device_found(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
|
||||||
dev_class, 3);
|
dev_class, 3);
|
||||||
|
|
||||||
ev->eir_len = cpu_to_le16(eir_len);
|
ev->eir_len = cpu_to_le16(eir_len);
|
||||||
|
ev->flags = cpu_to_le32(ev->flags);
|
||||||
|
|
||||||
ev_size = sizeof(*ev) + eir_len;
|
ev_size = sizeof(*ev) + eir_len;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue