| d61f9dc5 |
Release 5.61 |
Marcel Holtmann |
4 years ago |
2 files, +9, -1 |
| 43e95ba7 |
tools/mgmt-tester: Add Read OOB Ext Data test cases
Read Local OOB Ext Data - Invalid index
Read Local OOB Ext Data - Legacy pairing
Read Local OOB Ext Data - Success SSP
Read Local OOB Ext Data - Success SC |
Brian Gix |
4 years ago |
1 file, +50, -0 |
| 558c44cd |
btdev: Fix removing advertising set if it was terminated
Consider the advertising set disabled but don't remove it as the host
may still reuse it. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +1, -1 |
| 3c0a4dfd |
btdev: Fix order of BT_HCI_EVT_LE_ADV_SET_TERM
BT_HCI_EVT_LE_ADV_SET_TERM shall come after
BT_HCI_EVT_LE_ENHANCED_CONN_COMPLETE otherwise the host doesn't know
the connection handle. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +8, -6 |
| a0f67f43 |
btdev: Fix sending terminate advertising event to the wrong device
The device where the event should be sent is the same that had created
not the connection one. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +1, -1 |
| 0824006b |
shared/util: Decode BlueZ offload codec UUID
This adds BlueZ offload codec UUID to uuid128_table so it is
decoded by the likes of btmon. |
Kiran K |
4 years ago |
1 file, +1, -0 |
| 8ca80871 |
mgmt: Set offload codec mgmt feature
Add mgmt support to toggle offload codec feature |
Kiran K |
4 years ago |
1 file, +44, -0 |
| a84ae30c |
emulator: Add support enhanced SCO connection
Add support for enhanced_setup_synchronous_connection command
in btdev |
Kiran K |
4 years ago |
1 file, +57, -1 |
| 039888b6 |
monitor: Track PSM for L2CAP analyze function |
Marcel Holtmann |
4 years ago |
1 file, +34, -0 |
| 285aa5e0 |
main: Add missing Experimental entry to General options
When Experimental was introduced it was not added to General option
which causes a warning to be printed when it is set. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +1, -0 |
| 6e0ebc17 |
adapter: Fix warning when exit
g_hash_table_destroy prints a warning when it is NULL so this checks if
adapter->allowed_uuid_set has actually been set. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +4, -1 |
| d4f377a5 |
adapter: Simplify setting of experimental debug feature
The action already indicates the value of btd_opts.experimental. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +1, -1 |
| 214278a3 |
monitor: Fix logging of CIG Test SDU Interval param
This fixes log of SDU interval in StoM direction. |
Mariusz Skamra |
4 years ago |
1 file, +1, -1 |
| d26a7111 |
monitor: Fix Maximum PDU type in CIS Test Param
The Maximum PDU in CIS Test parameters is 2 byte value. |
Mariusz Skamra |
4 years ago |
2 files, +7, -5 |
| f90e7e1a |
monitor: Track L2CAP packets for analyze function |
Marcel Holtmann |
4 years ago |
1 file, +71, -2 |
| 7a6b6805 |
monitor: Store MSFT extension event prefix |
Marcel Holtmann |
4 years ago |
3 files, +11, -0 |
| f71feab3 |
bthost: Fix not initializing address types properly
The address type given to the init_conn is the peer address type
(btdev) not the bthost address type, the old code assume it could use
since only BDADDR_BREDR or BDADDR_LE_PUBLIC was tested but with the
upcoming support for LL Privacy the peer address type would become
BDADDR_LE_RANDOM which cannot be used as address type of bthost as that
doesn't support random addresses and would likely cause SMP to fail when
pairing. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +12, -6 |
| 219e1c6e |
bthost: Add bthost_debug and use it on smp.c
This adds bthost_debug which wraps util_debug and make use of it in
smp.c. |
Luiz Augusto von Dentz |
4 years ago |
4 files, +46, -30 |
| 561c5007 |
plugins/admin: add uuid duplicate check
SetServiceAllowlist should ignore those duplicated UUIDs.
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
1 file, +15, -1 |
| bb0714be |
client: add AffectedByPolicy property
This prints property AffectedByPolicy in device info if
org.bluez.AdminPolicyStatus1 exists.
This also rename find_battery_by_path to find_proxies_by_path to reuse
the function.
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
1 file, +16, -4 |
| 4f3adc7b |
client: add admin submenu and allow command
This creates a menu - admin and add a commands to bluetoothctl
- allow [clear/uuid1 uuid2 ...]
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
4 files, +230, -1 |
| b03f77ba |
shared/shell: fix missing stdbool in shell.h
bt_shell_menu_exists_t returns bool, but stdbool.h is not included.
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
1 file, +1, -0 |
| f287a42c |
client/advertising: Fix not disabling local-name in Includes
When setting a advertising.name other than on/off it shall also disable
local-name flag from Includes as that would cause an error when parsed
by the daemon. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +7, -0 |
| ed664d98 |
advertising: Fix failing to advertise with Includes=local-name
When local-name is set MGMT_ADV_FLAG_LOCAL_NAME would be set which would
be sent with MGMT_OP_ADD_EXT_ADV_PARAMS but latter one it would be
overwrite in generate_scan_rsp. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +2, -9 |
| 6fb2f1aa |
monitor: Make --analyze print address OUI
This makes analyze.c use packet_print_addr which does take care of
decoding OUI portion of the address. |
Luiz Augusto von Dentz |
4 years ago |
7 files, +29, -86 |
| 34d44262 |
monitor: Make --analyze output latencies in msec
Milisecconds is probably the best unit to have since it is unlikely that
the controller can respond in under 1 msec as well as most time
sensitive connection e.g. A2DP, HFP, etc, also don't expect the
latencies to be over 1 sec. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +9, -6 |
| 7dc659cd |
monitor: Fix not accouting for multiple outstanding packets
Analyze code was not accounting for the fact that multiple outstanding
packets could be pending which will cause the last_tx to be overwritten
but its latency would be calculated against the very first packet
complete. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +13, -7 |
| 52c7d168 |
monitor: Fix minimun packet latency
It seems timer_sub can produce negative values leading to median packet
latency to be negative e.g conn->last_tx_compl is ahead of
conn->last_tx, in which case it should be discarded. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +5, -2 |
| ea224edb |
monitor: Fix median packet size
Calculating the median packet based on the current median + size / 2
does not account for last packet could smaller e.g. opp transfer could
end with just 1 byte which would cut the median in a half, so this
switch to more traditional means of calculating by doing total bytes
sent / num of packets so each an every packet has the same weight. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +4, -5 |
| 44e1bcff |
audio/transport: Only store volume when also emitting DBus prop change
By setting a2dp->volume early in set_volume() the resulting call to
media_transport_update_volume() when an AVRCP reply is received will
likely see the same volume received (unless the peer rounded it to
another value) and bail on equality, before emitting a DBus property
change. This results in DBus clients not being made aware of the change
unless the peer is an audio source (that receives a notification about
changed volume, instead of a command to _set_ a new volume), where
set_volume() immediately raises the DBus signal.
This issue is observed when playing back audio to headphones through an
AbsoluteVolume-enabled audio server like PulseAudio, which does not
receive the "Volume" change (while the peer does change volume) when
setting this property externally using ie. dbus-send. |
Marijn Suijten |
4 years ago |
1 file, +3, -3 |
| e21680c9 |
audio/avrcp: Use host/network order as appropriate for pdu->params_len
When comparing against or writing to pdu->params_len to enforce matching
length with total packet length, take into account that pdu->params_len
is in network order (big endian) while packet size (operand_count) is in
host order (usually little endian).
This silently breaks a number of AVRCP commands that perform a quick
length check based on params_len and bail if it doesn't match exactly.
Fixes: e2b0f0d8d ("avrcp: Fix not checking if params_len match number of received bytes") |
Marijn Suijten |
4 years ago |
1 file, +2, -2 |
| c944e5f1 |
doc: Add a doc for Intel hardware variants
This patch adds a document for Intel hardware variants currently
supported by the kernel and its firmware list. |
Tedd Ho-Jeong An |
4 years ago |
1 file, +159, -0 |
| e098cad1 |
monitor: Add support for tlv based version format for Intel vendor
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. |
Tedd Ho-Jeong An |
4 years ago |
1 file, +217, -2 |
| 53f026ec |
btdev: Add proper handling for own_address_type 0x03
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. |
Luiz Augusto von Dentz |
4 years ago |
1 file, +78, -8 |
| 8867c391 |
monitor: Add further stats to analzye functionality |
Marcel Holtmann |
4 years ago |
1 file, +132, -13 |
| a3370977 |
doc: add admin policy file storage description
This adds storage description of admin policy file in
doc/settings-storage.txt |
Yun-Hao Chung |
4 years ago |
1 file, +20, -0 |
| b7a401fe |
doc: add description of admin policy
This adds admin-policy-api.txt.
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
1 file, +65, -0 |
| b97174f2 |
plugins/admin: persist policy settings
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 |
4 years ago |
1 file, +164, -1 |
| 3c258b15 |
plugins/admin: add AffectedByPolicy property
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 |
4 years ago |
1 file, +71, -2 |
| efe2eb47 |
plugins/admin: add device callbacks
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 |
4 years ago |
1 file, +78, -0 |
| 2106a20d |
plugins/admin: add ServiceAllowList property
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 |
4 years ago |
1 file, +58, -0 |
| 0d31b194 |
plugins/admin: add ServiceAllowList method
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 |
4 years ago |
1 file, +126, -1 |
| 36f34110 |
plugins/admin: add admin_policy adapter driver
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 |
4 years ago |
1 file, +66, -1 |
| e7c34995 |
plugins: new plugin
This adds an initial code for a new plugin admin.
Reviewed-by: Miao-chen Chou <mcchou@chromium.org> |
Yun-Hao Chung |
4 years ago |
4 files, +42, -0 |
| ebaa144d |
core: block not allowed UUID connect in auth
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 |
4 years ago |
2 files, +16, -0 |
| b084a69a |
core: add adapter and device allowed_uuid functions
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 |
4 years ago |
4 files, +162, -1 |
| 86aa6bc9 |
core: add device callbacks to adapter driver
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 |
4 years ago |
3 files, +82, -8 |
| 320bda70 |
core: add is_allowed property in btd_service
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> |
Yun-Hao Chung |
4 years ago |
2 files, +35, -0 |
| 07ae6eb9 |
a2dp: Invalidate cache if SetConfiguration fails
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 |
Luiz Augusto von Dentz |
4 years ago |
3 files, +130, -78 |
| 1b5abf42 |
monitor: Fix truncated server socket path parameter
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 |
Mariusz Skamra |
4 years ago |
1 file, +2, -4 |