Bluetooth: ISO: Pass BIG encryption info through QoS
authorIulia Tanasescu <iulia.tanasescu@nxp.com>
Wed, 6 Sep 2023 14:01:03 +0000 (17:01 +0300)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Mon, 23 Oct 2023 17:58:18 +0000 (10:58 -0700)
commit1d11d70d1f6b23e7d3fc00396c17b90b876162a4
treed8c14885ed99ac42f41c44909393a97ea7df4102
parenta254b90c9aac3d3d938a07e019773e35a977451b
Bluetooth: ISO: Pass BIG encryption info through QoS

This enables a broadcast sink to be informed if the PA
it has synced with is associated with an encrypted BIG,
by retrieving the socket QoS and checking the encryption
field.

After PA sync has been successfully established and the
first BIGInfo advertising report is received, a new hcon
is added and notified to the ISO layer. The ISO layer
sets the encryption field of the socket and hcon QoS
according to the encryption parameter of the BIGInfo
advertising report event.

After that, the userspace is woken up, and the QoS of the
new PA sync socket can be read, to inspect the encryption
field and follow up accordingly.

Signed-off-by: Iulia Tanasescu <iulia.tanasescu@nxp.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
include/net/bluetooth/hci.h
include/net/bluetooth/hci_core.h
net/bluetooth/hci_conn.c
net/bluetooth/hci_event.c
net/bluetooth/iso.c