| f838361b |
monitor: Use proper name for CIS bit
In the Bluetooth Specification the complete name for bit
number 32 is "Connected Isochronous Stream (Host Support)". |
Vlad Pruteanu |
2 years ago |
1 file, +1, -1 |
| feadcbbe |
bap: Use defer setup when syncing to a BIS source
This commit uses the newly added bt_io_bcast_accept function from
btio.c to implement the defer setup for the BIS sync process.
Now, information from the BIG Info advertising report can be
used when sending the BIG Create Sync command. |
Vlad Pruteanu |
2 years ago |
1 file, +14, -1 |
| 2d2389d9 |
device: Fix not handling initiator properly
Previously initiator would be set whenever a central key was found
which turns out to be unreliable besides the MGMT New Connection event
does in fact inform if the connection was initiated locally or not.
Fixes: https://github.com/bluez/bluez/issues/598 |
Luiz Augusto von Dentz |
2 years ago |
3 files, +13, -15 |
| 53542db3 |
main.conf: Fix parsing of uint32_t values
Passing UINT32_MAX as int may overfollow causing errors such as:
bluetoothd[2688495]: src/main.c:parse_config_int()
General.TemporaryTimeout = 60 is out of range (> -1)
Fixes: https://github.com/bluez/bluez/issues/583#issuecomment-1713447461 |
Luiz Augusto von Dentz |
2 years ago |
1 file, +7, -5 |
| df658c6c |
shared/bass: Add Set Broadcast_Code opcode handler
This adds the Set Broadcast_Code opcode handler, enabling a BASS Server
to sync to an encrypted BIG. |
Iulia Tanasescu |
2 years ago |
2 files, +151, -9 |
| 42681a7c |
monitor: Fix ATT decoding issue
This fixes the way conn handles are marked as unused in the
conn_list array, so that valid conn entries are not overwritten
by new ones. |
Iulia Tanasescu |
2 years ago |
1 file, +5, -2 |
| ed0def33 |
btio: Add support for accepting BIS after defer setup
This adds btio support for accepting BIS connections when defer
setup is enabled on a Broadcast Receiver socket. |
Iulia Tanasescu |
2 years ago |
2 files, +35, -0 |
| 3294c42c |
main.conf: Fix documention of CSIS.Encrypt
CSIS.Encrypt is a boolean so it shall only be set with true/false not
yes/no. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +4, -4 |
| 32daf644 |
main.conf: Fix printing errors for valid options
This fixes the following errors:
Unknown key RefreshDiscovery for group General
Unknown key Encryption for group CSIS
Fixes: https://github.com/bluez/bluez/issues/583 |
Luiz Augusto von Dentz |
2 years ago |
1 file, +2, -0 |
| dc13da09 |
btio: Fix BASE copy from getsockopt()
Fix copy of BASE from getsockopt() and update base length. |
Claudia Draghicescu |
2 years ago |
1 file, +3, -1 |
| 2e47711d |
micp: Add MICP plugin
MICP profile level interface function have been implemented
This adds initial code for MICP plugin. |
Nitin Jadhav |
2 years ago |
3 files, +349, -0 |
| 5c788b73 |
src/shared/micp.c: To implement MICP profile MICS service
- Implementation of functions related profile and service for MICS and MICP
- Specifications referred for implementation:
MICS - MICS_v1.0.pdf
MICP - MICP_v1.0.pdf |
Nitin Jadhav |
2 years ago |
3 files, +971, -0 |
| 94ea1491 |
lib/uuid.h: Add UUID(s)
Add MICS characteristic uuid(s) |
Nitin Jadhav |
2 years ago |
1 file, +5, -0 |
| d06b912d |
bap: Fix not always calling bap_io_close on disconnect
bap_io_disconnected was getting registered for all links while
connecting which prevented bap_io_close to be called when ISO socket is
disconnected thus the cig_active flag will remain set preventing the IO
to be recreated. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +2, -0 |
| c7fd9310 |
monitor: Fix runtime error
This fixes the following runtime error:
monitor/packet.c:10476:2: runtime error: division by zero
Floating point exception |
Luiz Augusto von Dentz |
2 years ago |
1 file, +8, -5 |
| 530afa43 |
media-api: Make QoS a single property
This moves QoS related properties to a single dictionary. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +55, -23 |
| bc354764 |
bap: Remove duplicated code
bap_create_io already handle streams of differents types. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +0, -5 |
| 670f0d0f |
shared/gatt-client: Fix not sending confirmations
Commit fde32ff9c9c0 ("shared/gatt-client: Allow registering with NULL
callback") added an early return to the notify_cb function when the
current client's notify_list is empty which prevents sending
confirmations to indications.
Reported-by: Javier de San Pedro <dev.git@javispedro.com> |
Luiz Augusto von Dentz |
2 years ago |
1 file, +4, -3 |
| 6a8f7c55 |
Release 5.69 |
Marcel Holtmann |
2 years ago |
2 files, +8, -1 |
| 55c07304 |
build: Add generated manual pages to .gitignore |
Marcel Holtmann |
2 years ago |
1 file, +3, -0 |
| c6741c40 |
transport: Fix crash with broadcast properties
When connecting a BAP unicast stream the followin crash can be observed:
Access not within mapped region at address 0x1D4C0000000A
at 0x14F759: get_bcode (transport.c:1121)
by 0x1E02E4: append_property.isra.0 (object.c:498)
by 0x1E03B9: append_properties (object.c:527)
by 0x1E2AAB: g_dbus_get_properties (object.c:1811)
by 0x14B9B6: pac_config (media.c:1130) |
Luiz Augusto von Dentz |
2 years ago |
1 file, +20, -4 |
| 176d0154 |
build: Update library version |
Marcel Holtmann |
2 years ago |
1 file, +1, -1 |
| 8b2f002e |
isotest: Add defer setup support for Broadcast Receiver
This adds defer setup support for the Broadcast Receiver scenario.
In order to create a Broadcast Receiver with the defer setup option,
the -W command line parameter should be used, as described in
isotest.rst. |
Iulia Tanasescu |
2 years ago |
1 file, +80, -42 |
| 8d0d6265 |
adapter: Fix UUID name advertised for bcast source
Fix UUID name typo. |
Claudia Draghicescu |
2 years ago |
1 file, +1, -1 |
| 0a824ce8 |
client/player: Remove Broadcast parameter
Remove unused gdbus parameter.
Fix length for Codec Specific Configuration. |
Claudia Draghicescu |
2 years ago |
1 file, +1, -4 |
| 34d54603 |
transport: Update transport properties for a broadcast stream
This patch gets the QOS broadcast stream parameters and passes them
to upper layers. |
Claudia Draghicescu |
2 years ago |
1 file, +249, -2 |
| 9966e0f8 |
media: Add broadcast sink media endpoint
This patch adds the possibility to register a broadcast
media endpoint if the controller has support for ISO Sync Receiver. |
Claudia Draghicescu |
2 years ago |
2 files, +39, -6 |
| c7850975 |
bap: Add support for BAP broadcast sink
This adds support for BAP broadcast sink, creates a remote endpoint when a
broadcast source is discovered and synchronizes with the source upon
endpoint configuration.
This feature was tested using bluetoothctl with the following commands:
[bluetooth]# endpoint.register 00001851-0000-1000-8000-00805f9b34fb 0x06
[bluetooth]# scan on
[NEW] Endpoint /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/pac_bcast0
[bluetooth]# endpoint.config
/org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/pac_bcast0
/local/endpoint/ep0 16_2_1 |
Claudia Draghicescu |
2 years ago |
1 file, +402, -30 |
| d49ea14f |
shared/bap: Add support for BAP broadcast sink
This adds support for BAP broadcast sink, creates a remote endpoint when a
broadcast source is discovered and synchronizes with the source upon
endpoint configuration.
This feature was tested using bluetoothctl with the following commands:
[bluetooth]# endpoint.register 00001851-0000-1000-8000-00805f9b34fb 0x06
[bluetooth]# scan on
[NEW] Endpoint /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/pac_bcast0
[bluetooth]# endpoint.config
/org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/pac_bcast0
/local/endpoint/ep0 16_2_1 |
Claudia Draghicescu |
2 years ago |
2 files, +150, -27 |
| 35c706f3 |
client: Add agent auto argument support
This adds "auto" capability which behaves like "on" but instead of
asking user to confirm/autorize it automatically accepts, which is
not secure to be used thus a warning is printed when user selects it.
Usage:
[bluetoothctl]# agent auto
Warning: setting auto response is not secure, it bypass user
confirmation/authorization, it shall only be used for test automation.
or
client/bluetoothctl -a auto |
Luiz Augusto von Dentz |
2 years ago |
2 files, +85, -2 |
| c01cf455 |
monitor/intel: Add decoding of PPAG Enable command
Add decoding support for Intel PPAG Enable
command.
btmon log:
< HCI Command: Intel PPAG Enable (0x3f|0x020b) plen 4
Enable: 0x00000002 (China)
> HCI Event: Command Complete (0x0e) plen 4
Intel PPAG Enable (0x3f|0x020b) ncmd 1
Status: Success (0x00) |
Lokendra Singh |
2 years ago |
1 file, +26, -1 |
| e9309497 |
adapter: wait for kernel exp features in adapter initialization
Things like BAP depend on ISO sockets being enabled in kernel. It is
possible the MGMT commands enabling experimental kernel features do not
complete, before BAP etc. initialization and probing starts, in which
case BAP will be mostly nonfunctional.
This was observed to occur always when running BlueZ in a Fedora VM,
requiring bluetoothd restart after every boot for BAP to work,
log containing lines in the order:
bluetoothd[981]: src/adapter.c:read_exp_features_complete() 6fbaf188-05e0-496a-9885-d6ddfdb4e03e flags 0 action 1
bluetoothd[981]: src/adapter.c:read_info_complete() index 0 status 0x00
bluetoothd[981]: profiles/audio/bap.c:bap_probe() BAP requires ISO Socket which is not enabled
bluetoothd[981]: src/adapter.c:iso_socket_complete() ISO Socket successfully set
Fix by waiting in adapter initialization that all MGMT exp feature
requests are done, before proceeding to read adapter information.
Also fix canceling MGMT_OP_SET_EXP_FEATURE for ISO sockets. |
Pauli Virtanen |
2 years ago |
1 file, +107, -28 |
| 70b4db68 |
iso-tester: add test for ACL disconnect before ISO created
Simulate ACL being disconnected when connecting ISO, before LE Create
CIS got sent. The kernel shall indicate connection failure for the ISO
socket immediately when the ACL is gone, since connecting the ISO can no
longer proceed.
ISO Connect ACL Disconnect - Failure |
Pauli Virtanen |
2 years ago |
1 file, +38, -0 |
| 46510881 |
sco-tester: add test for ACL disconnect before SCO established
Simulate ACL being disconnected before SCO is established. Kernel shall
not crash.
eSCO ACL Disconnect - Failure
Link: https://lore.kernel.org/linux-bluetooth/00000000000013b93805fbbadc50@google.com/ |
Pauli Virtanen |
2 years ago |
1 file, +34, -0 |
| bfcc3f7b |
hciemu: Add hciemu_flush_client_events for ordering VHCI vs bthost
bthost commands execute with a delay because events may be sitting in
the socketpair queues. This makes it difficult to ensure, when writing
tests, that certain bthost commands have been handled, before any new
events from VHCI are processed.
To make event ordering possible, add a function that flushes client
bthost/btdev socketpair queues, before processing any new VHCI events.
This is done by pausing VHCI input processing until the kernel
socketpair queues are empty. |
Pauli Virtanen |
2 years ago |
2 files, +57, -0 |
| dbe52200 |
vhci: Add function to pause processing input from vhci
Add function to pause (temporarily) reading data from vhci. This can be
used to synchronously pause handling of btdev commands from the kernel. |
Pauli Virtanen |
2 years ago |
2 files, +10, -0 |
| 0004eb06 |
device: Restart temporary timer while connecting
If the device is temporary restart its timer when attempt to connect to
it since it can interrupt the connection attempt prematurely while it
still scanning, etc. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +4, -0 |
| cc7dbadb |
device: Don't attempt to set auto_connect for devices using RPAs
Device using private address cannot be programmed into the auto_connect
list without them being paired and its IRK being distributed otherwise
there is no way to resolve it address and the command will fail. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +1, -1 |
| 507ba124 |
profile: Remove probe_on_discover
The concept of probing not connected devices is already supported when
loading devices from storage, so drivers shall already be capabable of
handling such a thing as there are dedicated callbacks to indicate when
there is a new connection in the form of .accept callback. |
Luiz Augusto von Dentz |
2 years ago |
2 files, +13, -25 |
| fb642ece |
bap: Set auto_connect
Patch 2a4cf63f2152 has reset the flag back to false when it shouldn't
so this revert it to its original behavior. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +1, -1 |
| 60731cab |
iso-tester: Add test for bcast receiver defer setup
This adds the following test to validate defer setup support for the
Broadcast Receiver scenario:
ISO Broadcaster Receiver Defer - Success |
Iulia Tanasescu |
2 years ago |
1 file, +31, -1 |
| aed75613 |
monitor: Detect LE-ACL connections
This enables LE-ACL connections to be detected by processing its events
otherwise they would be assumed to be BR-ACL. Also make sure that LE-ISO
address is set based on its ACL link. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +84, -4 |
| 31941ff3 |
monitor: Fix not printing latency information with -r
When reading a log from file hci_devba may not work, also store link
information so assign_handle can use use the parent (ACL) destination. |
Luiz Augusto von Dentz |
2 years ago |
2 files, +38, -3 |
| f4aea37e |
build: Fix make distcheck
This fixes the following errors:
make[2]: *** No rule to make target 'doc/test-runner.txt',
needed by 'distdir-am'. Stop.
make[1]: *** [Makefile:11708: distdir] Error 2
make: *** [Makefile:11784: dist] Error 2 |
Luiz Augusto von Dentz |
2 years ago |
1 file, +1, -1 |
| 583d5791 |
iso-tester: Add suspend tests
This adds the following test which attempt to trigger suspend code path
while ISO sockets are connecting or have been connected:
ISO Connect Suspend - Success
ISO Connected Suspend - Success
ISO Connect2 Suspend - Success
ISO Connected2 Suspend - Success |
Luiz Augusto von Dentz |
2 years ago |
1 file, +84, -1 |
| d68bfb65 |
doc/test-runner: Update documentation using rst format
This updates test-runner documentation with a few examples using rst
format. |
Luiz Augusto von Dentz |
2 years ago |
3 files, +178, -285 |
| 8bf3a4a2 |
shared/gatt-server: Fix not allowing valid attribute writes
The length check shall not consider the command header, just its
payload. |
Bart Philips |
2 years ago |
1 file, +2, -2 |
| ac04e5f3 |
device: Fix not probing drivers at startup
Patch 67a26abe53bf ("profile: Add probe_on_discover flag") introduced a
regression which prevents drivers to be properly loaded at startup since
at that point they are not connected when code shall testing if
the devide is temporary instead. |
Luiz Augusto von Dentz |
2 years ago |
1 file, +2, -2 |
| fc6f5856 |
configure.ac: Install D-Bus policy in /usr/share, not /etc
From https://bugs.debian.org/1006631:
> dbus supports policy files in both `/usr/share/dbus-1/system.d` and
> `/etc/dbus-1/systemd`. [The] recently released dbus 1.14.0, officially
> deprecates installing packages' default policies into
> `/etc/dbus-1/systemd`, instead reserving it for the sysadmin.
> This is the same idea as the difference between `/usr/lib/udev/rules.d`
> and `/etc/udev/rules.d`. |
Gioele Barabucci |
2 years ago |
1 file, +1, -1 |
| 8b6432a8 |
configure.ac: Bump minimum D-Bus version to 1.10
D-Bus 1.10, released in 2015, is the first version that supports reading
policy files from `/usr/share/dbus-1` in addition to `/etc/dbus-1`.
The previous minimum version, 1.6, was released in 2012. |
Gioele Barabucci |
2 years ago |
1 file, +2, -2 |