- Aug 20, 2021
-
-
lishengyu authored
the device is in bonding or bonding fails before aging refresh, the adapter suddenly does not work. When the adapter works again, the device name will remain in the device list always.
-
- Aug 06, 2021
-
-
Tedd Ho-Jeong An authored
This patch adds a document for Intel hardware variants currently supported by the kernel and its firmware list.
-
Tedd Ho-Jeong An authored
Some Intel device supports two different formats of the HCI_Intel_Read_Version command depends on the command parameter and this patch parses the command and response parameters depends on the format.
-
Luiz Augusto von Dentz authored
When own_address_type is set to 0x03 the host expects the controller to generate RPAs using the stored IRK from the resolving list and in addition to that set the generated RPA as Local RPA in LE Enhanced Connection Complete.
-
Marcel Holtmann authored
-
- Aug 04, 2021
-
-
Yun-Hao Chung authored
This adds storage description of admin policy file in doc/settings-storage.txt
-
Yun-Hao Chung authored
This adds admin-policy-api.txt. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds code to store the ServiceAllowlist to file /var/lib/bluetooth/{MAC_ADDR}/admin_policy The stored settings will be loaded upon admin_policy initialized. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds property to indicate if a device has any service that is being blocked by admin policy. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds callbacks for device resolved and device removed. It is necessary for implementation of "AffectedByPolicy" property since it needs to register an interface for each device object and unregister it once the device gets removed.
-
Yun-Hao Chung authored
This adds code to register interface org.bluez.AdminPolicyStatus. The interface will provide read-only properties to indicate the current settings of admin policies. We separate this from AdminPolicySet so that normal clients can check current policy settings while only a few clients can change policies. This patch also adds readonly property ServiceAllowlist to AdminPolicyStatus1, which indicates the current setting of service allowlist. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds code to register interface org.bluez.AdminPolicySet1. The interface will provide methods to limit users to operate certain functions of bluez, such as allow/disallow user to taggle adapter power, or only allow users to connect services in the specified list, etc. This patch also implements ServiceAllowlist in org.bluez.AdminPolicySet1. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds code to register admin_policy driver to adapter when admin plugin is enabled. The following test steps were performed: 1. restart bluetoothd 2. check if "Admin Policy is enabled" in system log Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds an initial code for a new plugin admin. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This ensures any incoming profile connection will be blocked if its UUID is not allowed by the following assumption: 1. Each system profile asks adapter authorization when seeing a incoming connection. 2. Each external profile checks if its UUID is allowed by adapter when seeing a incoming connection.
-
Yun-Hao Chung authored
This implements functions in src/adapter.c and src/device.c for plugins setting a list of allowed services. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
This adds the following callbacks to btd_adapter_driver. device_added: called when a device is added to the adapter device_removed: called when a device is removed from the adapter device_resolved: called when all services of the device have been resolved.
-
Yun-Hao Chung authored
This adds is_allowed property in btd_service. When is_allowed is set to false, calling btd_service_connect and service_accept will fail and the existing service connection gets disconnected. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Luiz Augusto von Dentz authored
If SetConfiguration fails with Unsupported Configuration it might indicate that either the capabilities stored are incorrect or the seid may have changed, so this attempt to invalidate the remote seps loaded from cache when that happens so the next time there is an attempt to discover this will force Get(All)Capabilities to be called and cause the cache to be updated. Fixes https://github.com/bluez/bluez/issues/178
-
Mariusz Skamra authored
This fixes the issue of --server <socket> parameter last character was dropped. There is no need to use strncpy, as the length is already checked, and it is known that the destination buffer is big enough
-
- Aug 03, 2021
-
-
Marcel Holtmann authored
-
Marcel Holtmann authored
-
Marcel Holtmann authored
-
Marcel Holtmann authored
-
Marcel Holtmann authored
-
- Jul 29, 2021
-
-
Yun-Hao Chung authored
svc_start < foreach_data->end has already been checked in a few lines before. Reviewed-by: Archie Pusaka <apusaka@chromium.org>
-
Luiz Augusto von Dentz authored
Privacy shall be off by default until kernel is stable to support it, also Experimental shall only be enabled for testing purpose.
-
Sonny Sasaka authored
It's useful to be able to see Extended Adv's EIR flags just like the legacy Adv.
-
- Jul 28, 2021
-
-
Luiz Augusto von Dentz authored
This adds Central Address Resolution characteristic so peripherals can use directed advertising using RPA as initiator address.
-
- Jul 26, 2021
-
-
Luiz Augusto von Dentz authored
discoverable setting shall only be store when changed via Discoverable property and not when discovery client set it as that be considered temporary just for the lifetime of the discovery.
-
- Jul 23, 2021
-
-
Hannu Mallat authored
Some PTS clients do not send all the mandatory apparams when retrieving the phonebook. Clients such as car multimedia systems cannot be fixed, therefore working around this issue by inserting default apparams which makes these clients work as well.
-
Dylan Van Assche authored
Require libebook when phonebook-ebook plugin is built.
-
Juho Hamalainen authored
Various phonebook plugins are available, by default phonebook-dummy is always built. Allow to specify which plugin to use at build time.
-
Dylan Van Assche authored
Modernize PBAP phonebook-ebook plugin for newer libebook version of the Evolution Data Server. The ebook plugin was introduced during GSoC 2011 [1] and allows BlueZ to share contacts stored in the Evolution Data Server to connected clients such as car multimedia systems. With the rise of Mobile Linux thanks to the PinePhone and Librem 5, this plugin was modernized to compile with newer libebook versions because the API was changed [2]. [1] http://www.bluez.org/gsoc-eds-backend-of-phonebook-access-profilepbap/ [2] https://wiki.gnome.org/Apps/Evolution/ESourceMigrationGuide
-
- Jul 20, 2021
-
-
Joseph Hwang authored
This patch adds the "exp-quality" command to btmgmt to enable/disable the Bluetooth quality report.
-
Joseph Hwang authored
This patch adds a new UUID for the quality report experimental feature. When reading the experimental features, it checks if the new feature is supported by the controller and stores the value in the quality_report_supported flag of the adapter. The quality_report_supported flag could be used by the bluetoothd to determine if the quality report feature can be enabled. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Joseph Hwang authored
This patch adds new Intel extended telemetry events for both ACL and SCO/eSCO audio link quality reports. For SCO/eSCO audio link quality report, it shows something like > HCI Event: Vendor (0xff) plen 190 #120 [hci0] 2021-05-31 20:27:50.257 Vendor Prefix (0x8780) Intel Extended Telemetry (0x87) Extended Telemetry (0x80): SubOpcode (0x03) Extended event type (0x01): Audio Link Quality Report Type(0x05) SCO/eSCO connection handle (0x6a): 0x0101 Packets from host (0x6b): 399 Tx packets (0x6c): 403 Rx payload lost (0x6d): 3 Tx payload lost (0x6e): 0 Rx No SYNC errors (0x6f): 3 2 3 3 0 Rx HEC errors (0x70): 0 0 0 0 0 Rx CRC errors (0x71): 2 0 0 0 0 Rx NAK errors (0x72): 6 0 0 0 0 Failed Tx due to Wifi coex (0x73): 6 0 0 0 0 Failed Rx due to Wifi coex (0x74): 0 0 0 0 0 Late samples inserted based on CDC (0x75): 0 Samples dropped (0x76): 0 Mute samples sent at initial connection (0x77): 0 PLC injection data (0x78): 0 For ACL audio link quality report, it shows something like > HCI Event: Vendor (0xff) plen 142 #120 [hci0] 2021-05-31 20:27:50.261 Vendor Prefix (0x8780) Intel Extended Telemetry (0x87) Extended Telemetry (0x80): SubOpcode (0x03) Extended event type (0x01): Audio Link Quality Report Type(0x05) ACL connection handle (0x4a): 0x0100 Rx HEC errors (0x4b): 0 Rx CRC errors (0x4c): 0 Packets from host (0x4d): 100 Tx packets (0x4e): 101 Tx packets 0 retries (0x4f): 89 Tx packets 1 retries (0x50): 11 Tx packets 2 retries (0x51): 1 Tx packets 3 retries (0x52): 0 Tx packets 4 retries and more (0x53): 0 Tx DH1 packets (0x54): 0 Tx DH3 packets (0x55): 0 Tx DH5 packets (0x56): 0 Tx 2DH1 packets (0x57): 0 Tx 2DH3 packets (0x58): 0 Tx 2DH5 packets (0x59): 0 Tx 3DH1 packets (0x5a): 6 Tx 3DH3 packets (0x5b): 0 Tx 3DH5 packets (0x5c): 94 Rx packets (0x5d): 272 ACL link throughput (KBps) (0x5e): 343815 ACL max packet latency (ms) (0x5f): 20625 ACL avg packet latency (ms) (0x60): 12 Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
-
Yun-Hao Chung authored
In probe_service, if the service already exists in device->services, it returns the service. This might cause dev_probe and device_probe_profile to add a duplicate service into device->services. When removing the device, a double-free error might occur. This patch changes the logic of probe_service so that the same service will not be added to a device.
-
- Jul 19, 2021
-
-
Luiz Augusto von Dentz authored
The spec says LE Set Random Address cannot be used when scan is enabled or with legacy advertising: BLUETOOTH CORE SPECIFICATION Version 5.2 | Vol 4, Part E page 2480 'If the Host issues this command when any of advertising (created using legacy advertising commands), scanning, or initiating are enabled, the Controller shall return the error code Command Disallowed (0x0C).'
-
Luiz Augusto von Dentz authored
own_addr_type 0x01 and 0x03 shall check that a random address has properly been set: BLUETOOTH CORE SPECIFICATION Version 5.2 | Vol 4, Part E page 2496: 'If LE_Scan_Enable is set to 0x01, the scanning parameters' Own_Address_Type parameter is set to 0x01 or 0x03, and the random ddress for the device has not been initialized, the Controller shall return the error code Invalid HCI Command Parameters (0x12).' BLUETOOTH CORE SPECIFICATION Version 5.2 | Vol 4, Part E page 2614: 'If Enable is set to 0x01, the scanning parameters' Own_Address_Type parameter is set to 0x01 or 0x03, and the random address for the device has not been initialized, the Controller shall return the error code Invalid HCI Command Parameters (0x12).'
-