Hello Bluetooth experts,
Name resolution of older devices not supporting EIR is still missing
from the management interface. I discussed with Johan, and he suggested
the following architecture (if I understood correctly):
New command and event are added to mgmt interface:
* Unknown Names Event
* Resolve Names Command
When device discovery is completed, kernel sends list of BT addresses of
devices which names are unknown (no name in EIR data) with Unknown Names
Event.
User space can then request name resolving with Resolve Names Command,
which takes list of BT addresses as parameter. User space gets a Remote
Name Event for each device.
Internally kernel would have a list of found devices, to which devices
are added during discovery. Device in the list is flagged as unknown
unless there was name for it in EIR data. After discovery is completed,
event with list of unknown devices is sent, and the found devices list
is cleared (it's valid only during one discovery session).
Not sure if name resolution should be included in the discovery session
done via mgmt interface (while Discovering Event indicates discovery is
ongoing), and how to track discovery state in that case. Maybe another
state is needed in hdev->flags (e.g. HCI_DISCOVERY) if HCI_INQUIRY is
not enough?
Any opinions? I think it would be good to have wider discussion before
making patches.
Br,
Antti
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html