| ae15504f |
katin viikset |
Luka Hietala |
1 month ago |
1 file, +7, -0 |
| ede308f8 |
dkfgödfgdgd |
Luka Hietala |
1 month ago |
1 file, +1, -0 |
| 1c9cc00d |
asdf |
Luka Hietala |
1 month ago |
1 file, +1, -0 |
| 8a41ac3f |
test-bap: add audio configuration selection and streaming tests
Add tests from BAP.TS 4.10.
The tests testing (ii) configurations only test configuration selection
with L/R separately. Can be filled in later to use two simultaneous BAP.
The difference between CIS Establishment at QoS vs. Enable is not
properly simulated, so only one variant is added. |
Pauli Virtanen |
1 month ago |
1 file, +1469, -6 |
| 7858675e |
test-bap: make PDU macros parametrizable
Adjust PDU-forming macros, so that they can be used for connecting
multiple streams to parametrizable locations. |
Pauli Virtanen |
1 month ago |
1 file, +258, -99 |
| a1f8862a |
shared/tester: better debug output on io memcmp failure |
Pauli Virtanen |
1 month ago |
1 file, +4, -3 |
| 231372ca |
bap: don't configure endpoints of all codecs at once
When device is connected we currently try create all streams for all
endpoints. If there are multiple (= vendor codecs), this likely causes
creating multiple streams for same location, which is not allowed.
Change it to create streams only for the first endpoint, for each
direction.
Sound server can later request switching to another endpoint if
necessary. |
Pauli Virtanen |
1 month ago |
1 file, +4, -1 |
| 0c56d482 |
shared/bap: fix packet length comparison to ATT MTU in bap_queue_req()
bap_queue_req() forgot to account for ATT command headers when comparing
to MTU, and fail to send if packet too big. Fix the MTU comparison. |
Pauli Virtanen |
1 month ago |
1 file, +1, -1 |
| f1afca6a |
shared/bap: fix channel allocation logic in bt_bap_select()
bt_bap_select() does not correctly determine the need for multi-stream
configurations 6,7,8,9,11(i), as its result depends on whether Audio
Locations is read before or after the PACs, doesn't work with general
location bits, etc.
Fix the procedure to be simpler: create streams for all locations, up to
a specific number of channels. By default, limit to max 2 channels per
direction for compatibility (BAP doesn't have explicit AC with larger
channel counts.) Also simplify the code.
Ignore lpac Locations when selecting: the value mostly makes sense for
Unicast Server role, but Client and Server cannot use the same value as
only a few bits can be set. As Client, we should be able to configure
any Location bits. The sound server can simply ignore our suggested
channel allocation if really needed, or use SetConfiguration() API to
build custom configurations. |
Pauli Virtanen |
1 month ago |
3 files, +103, -110 |
| c1493c32 |
unit: Add basic unit tests for battery charge handling |
Roman Smirnov |
1 month ago |
4 files, +234, -1 |
| c5d4a041 |
shared/battery: improve the display of the charge level
The battery charge level may fluctuate due to uncalibrated
sensors. Commit smooths out such fluctuations.
The algorithm for determining uncalibrated sensors consists of
finding the number of changes in charge direction (i.e., "spikes").
If the number of spikes is zero, the device is charging or discharging.
If there is one spike, it may mean that the device has started charging
or has been disconnected from charging. If there are two or more spikes,
this is a clear indication of an uncalibrated sensor.
Check that the battery charge is fluctuating. If the battery charge
is fluctuating, use the average charge value, otherwise use the current
value.
Fixes: https://github.com/bluez/bluez/issues/1612 |
Roman Smirnov |
1 month ago |
4 files, +128, -2 |
| f5043771 |
mgmt-tester: add tests for discoverable timeout
Test that the discoverable timeout can be set successfully and that the
timeout actually triggers:
Set discoverable on timeout - Success 1
Set discoverable on timeout - Success 2 (Timeout) |
Pauli Virtanen |
1 month ago |
1 file, +60, -3 |
| 078a047f |
device: Fix the return type of device_irk_cmp()
The return value from device_irk_cmp() is returned directly from
device_addr_type_cmp() which implements a memcmp()-like interface, so
we need to return an int() and a zero for equality. Returning bool
will cause false positives since false is 0 and true is 1.
Fixes: f1fb4f95f49e ("core: Fix not resolving addresses") |
Andrey Smirnov |
1 month ago |
1 file, +4, -4 |
| 4bf47f88 |
btdev: Fix set_bredrle_commands
This fixes set_bredrle_commands which was overriding the list of
commands previously set, so instead of setting the extra command
after the command list of the specific version this is now merged
together with each version that requires the extra commands. |
Luiz Augusto von Dentz |
1 month ago |
1 file, +136, -122 |
| f67b72b4 |
monitor: Add page information to print_features_subpage
This makes print_features_subpage print the page they belong:
> HCI Event: Command Complete (0x0e) plen 253
LE Read All Local Features (0x08|0x0087) ncmd 1
Status: Success (0x00)
Page: 10
Features[0/0][8]: 403900f301000080
LL Privacy
LE 2M PHY
LE Coded PHY
LE Extended Advertising
LE Periodic Advertising
Periodic Advertising Sync Transfer - Sender
Periodic Advertising Sync Transfer - Recipient
Connected Isochronous Stream - Central
Connected Isochronous Stream - Peripheral
Isochronous Broadcaster
Synchronized Receiver
Connected Isochronous Stream (Host Support)
LL Extended Feature Set
Features[1/0][8]: 0000000000000000
Features[1/1][8]: 0000000000000000
Features[1/2][8]: 0000000000000000
Features[2/0][8]: 0000000000000000
Features[2/1][8]: 0000000000000000
Features[2/2][8]: 0000000000000000
Features[3/0][8]: 0000000000000000
Features[3/1][8]: 0000000000000000
Features[3/2][8]: 0000000000000000
Features[4/0][8]: 0000000000000000
Features[4/1][8]: 0000000000000000
Features[4/2][8]: 0000000000000000
Features[5/0][8]: 0000000000000000
Features[5/1][8]: 0000000000000000
Features[5/2][8]: 0000000000000000
Features[6/0][8]: 0000000000000000
Features[6/1][8]: 0000000000000000
Features[6/2][8]: 0000000000000000
Features[7/0][8]: 0000000000000000
Features[7/1][8]: 0000000000000000
Features[7/2][8]: 0000000000000000
Features[8/0][8]: 0000000000000000
Features[8/1][8]: 0000000000000000
Features[8/2][8]: 0000000000000000
Features[9/0][8]: 0000000000000000
Features[9/1][8]: 0000000000000000
Features[9/2][8]: 0000000000000000
Features[10/0][8]: 0000000000000000
Features[10/1][8]: 0000000000000000
Features[10/2][8]: 0000000000000000 |
Luiz Augusto von Dentz |
1 month ago |
1 file, +4, -4 |
| ebd6f9fe |
build: obexd: Revert "Fix make distcheck"
Fixes: https://github.com/bluez/bluez/issues/806
Reverts: 9cc8b97b8 ("build: obexd: Fix make distcheck") |
Alfred Wingate |
1 month ago |
1 file, +4, -3 |
| 057da545 |
build: Fix distcheck by hardcoding non absolute paths
Pkg-config gives out absolute paths that don't fare well with distcheck
that needs to install files into its own prefix.
Disable cups for distcheck as well so that only dbus needs this
handling.
You can learn more about this type of issue here.
https://bugzilla.redhat.com/show_bug.cgi?id=1123963
See-Also: 9cc8b97b8 ("build: obexd: Fix make distcheck") |
Alfred Wingate |
1 month ago |
1 file, +8, -1 |
| 708bf7d1 |
build: use AM_DISTCHECK_CONFIGURE_FLAGS
DISTCHECK_CONFIGURE_FLAGS is meant for users to be set on the command
line.
https://www.gnu.org/software//automake/manual/html_node/DISTCHECK_005fCONFIGURE_005fFLAGS.html |
Alfred Wingate |
1 month ago |
1 file, +1, -1 |
| 300ec5a4 |
unit/test-hfp: Add tests for simple 3way support
This add the following tests:
- /HFP/HF/TWC/BV-01-C
Verify that the AG indicates to the HF the presence of an incoming
call waiting and that the HF sends the User Determined User Busy
(UDUB) indication to the AG (AT+CHLD=0).
- /HFP/HF/TWC/BV-02-C
Verify that the AG indicates to the HF the presence of an incoming
call waiting, and the HF can end an active call and accept the other
(held or waiting) call (AT+CHLD=1).
- /HFP/HF/TWC/BV-03-C
Verify that the AG indicates to the HF the presence of an incoming
call waiting, and the HF can place an active call on hold and accept
a call waiting (AT+CHLD=2). |
Frédéric Danis |
1 month ago |
1 file, +401, -1 |
| e9b4bf29 |
shared/hfp: Add simple 3way calls support
This adds support for the AT+CHLD=0 (Releases all held calls or set
User Determined User Busy for a waiting call), =1 (Releases all active
calls and accept the other call, held or waiting) and =2 (Places all
active calls on hold and accept the other call, held or waiting)
commands and the +CCWA (Call waiting notification) event. |
Frédéric Danis |
1 month ago |
3 files, +234, -4 |
| 5e41d1e1 |
The GATT.Client option is in the wrong section.
GATT.Client is currently in the CSIS section, but should
be in the GATT section. The bug is that
setting the Client option to false has no effect. |
Pavel Bozhko |
2 months ago |
1 file, +5, -5 |
| a7b0f235 |
shared/bap: fix keeping PAC caps <-> metadata correspondence
In PACS, Metadata is associated with a specific PAC. bap_pac_merge()
mixes up metadatas from different PACs if some PAC has no metadata.
Fix caps<->metadata correspondence by explicitly storing 0-length entry,
instead of skipping it altogether, if metadata (or caps) is missing. |
Pauli Virtanen |
2 months ago |
1 file, +2, -2 |
| 5d7693dc |
github/issue_template: Add basic issue template
Add issue template that instructs to use btmon and indicate software
versions. |
Pauli Virtanen |
2 months ago |
1 file, +41, -0 |
| bfbd3d90 |
bap: make SetConfiguration() work similarly for ucast and bcast
Change ucast SetConfiguration() to always create a new stream.
Previously, it also removed all streams, but this is not useful now as
it prevents client from creating multiple streams, and since it can use
ClearConfiguration() to remove streams. |
Pauli Virtanen |
2 months ago |
1 file, +0, -7 |
| 173e9963 |
unit/test-hfp: Add Enhanced Call Status tests
This add the following test:
- /HFP/HF/ECS/BV-01-C
Verify that the HF can request the status of current calls in the AG.
- /HFP/HF/ECS/BV-02-C
Verify that the AG can send the correct call status when an SLC is
initialized.
- /HFP/HF/ICA/BV-07-C-full
Verify that HF can connect to an AG that is receiving an in-coming
call. |
Frédéric Danis |
2 months ago |
1 file, +68, -1 |
| d33b9b7c |
shared/hfp: Add Enhanced Call Status support
In case remote device supports the Enhanced Call Status the calls are
created, updated or removed based on results of AT+CLCC commands.
This implies to send an AT+CLCC command on reception of +CIEV events
for <call>, <callsetup> or <callheld> indicators instead of managing
calls directly.
This updates the tests using FULL_SLC_SESSION:
- /HFP/HF/ENO/BV-01-C
- /HFP/HF/ICA/BV-01-C
- /HFP/HF/ICA/BV-02-C
- /HFP/HF/ICA/BV-03-C
- /HFP/HF/ICA/BV-04-C-full |
Frédéric Danis |
2 months ago |
3 files, +264, -12 |
| 51197aac |
btio: Fix endless loop if accept return -EBADFD
In certain cases, e.g. ISO Broadcast Listen, the listening socket may
get into an invalid state (CONNECTED) if the PA Sync is terminated
causing an endless loop of accept syscall. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +4, -1 |
| 1302116e |
bass: Fix not cleaning up delegator properly
When BIG sync is lost, or the assistant modify removing all streams,
delegator should be freed to so the assistant can start over and share
another stream. |
Luiz Augusto von Dentz |
2 months ago |
2 files, +122, -105 |
| 2c17c992 |
iso-tester: Add tests for checking proper handling of Sync Lost
This introduces the following tests to check if BIG/PA Sync Lost are
handled properly:
ISO Broadcaster Receiver Sync Lost - Success
ISO Broadcaster PAST Receiver Sync Lost - Success |
Luiz Augusto von Dentz |
2 months ago |
1 file, +49, -0 |
| d9b71705 |
bthost: Add support for terminating a BIG
This adds support for sending BT_HCI_CMD_LE_TERM_BIG via
bthost_terminate_big. |
Luiz Augusto von Dentz |
2 months ago |
2 files, +12, -0 |
| ca70a0b7 |
emulator: Generate PA Sync Lost
This attempts to generate a PA Sync Lost whenever a PA is disabled and
there is a remote synced to it. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +30, -1 |
| ec5819b8 |
github/stale: Fix not removing stale tag when an issue is updated
In order for stale action to automatically remove stale label from
issues it requires the following permissions:
issues: write and pull-requests: write
https://github.com/actions/stale?tab=readme-ov-file#remove-stale-when-updated |
Luiz Augusto von Dentz |
2 months ago |
1 file, +3, -0 |
| 14f868fd |
transport: always show A2DP Delay property as sink if DelayReporting
The Delay property is currently not shown to sound server unless remote
side has acked delay reporting. However, when we are A2DP Sink, we
reply to delay report requests with the current value, so the value
logically exists and is active. This behavior was apparently changed in
commits 05f8bd489fd1 and 5d4efe960fd.
Show Delay value for local A2DP Sink endpoint if it has DelayReporting.
Fixes: https://github.com/bluez/bluez/issues/1541 |
Pauli Virtanen |
2 months ago |
3 files, +11, -0 |
| f82bc288 |
bass: Fix no setting state delegator IO is closed
If delegator IO is closed it means PA Sync is terminated as well. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +3, -0 |
| 69e5da68 |
mgmt-tester: Add tests for 5.2 and 6.0 Bluetooth version
This adds the following tests that attempt to initialize controllers
with version 5.2 and 6.0:
- Set Low Energy on 5.2 - Success 4
- Set Low Energy on 6.0 - Success 5 |
Luiz Augusto von Dentz |
2 months ago |
1 file, +35, -0 |
| 7fe16b6d |
emulator: Add support for LL Extended Feature Set
This adds support for emulating LL Extended Feature Set introduced in 6.0
that adds the following:
Commands:
- HCI_LE_Read_All_Local_Supported_Features(0x2087)(Feature:47,1)
- HCI_LE_Read_All_Remote_Features(0x2088)(Feature:47,2)
Events:
- HCI_LE_Read_All_Remote_Features_Complete(0x2b)(Mask bit:42) |
Luiz Augusto von Dentz |
2 months ago |
5 files, +103, -5 |
| 070ef3d7 |
monitor: Decode Bluetooth 6.0 version
This decodes 0x0e as Bluetooth 6.0. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +3, -0 |
| 654c4f57 |
unit/test-hfp: Add ECNR off test
This add the following test:
- /HFP/HF/ENO/BV-01-C
Verify that the HF can disable the EC/NR function of the AG. |
Frédéric Danis |
2 months ago |
1 file, +22, -1 |
| f3904a8f |
shared/hfp: Add NREC disable command |
Frédéric Danis |
2 months ago |
2 files, +40, -3 |
| b0db5e1c |
shared/hfp: Add extended response code enabling command |
Frédéric Danis |
2 months ago |
2 files, +35, -2 |
| 32d740d8 |
monitor: Add decoding support for LL_FEATURE_EXT_{REQ,RSP}
This adds support for LL_FEATURE_EXT_{REQ,RSP} which is used to
exchange LL Features. |
Luiz Augusto von Dentz |
2 months ago |
4 files, +44, -0 |
| 1479b279 |
monitor: Add decoding support for LL Extended Feature Set
This adds support for decoding LL Extended Feature Set introduced in 6.0
that adds the following:
Commands:
- HCI_LE_Read_All_Local_Supported_Features(0x2087)(Feature:47,1)
- HCI_LE_Read_All_Remote_Features(0x2088)(Feature:47,2)
Events:
- HCI_LE_Read_All_Remote_Features_Complete(0x2b)(Mask bit:42) |
Luiz Augusto von Dentz |
2 months ago |
2 files, +166, -18 |
| bb82243a |
btdev: Fix crash on BIG cleanup
This fixes the following crash:
Invalid read of size 8
at 0x400F26F: le_big_free (btdev.c:606)
by 0x4024636: queue_remove_all (queue.c:341)
by 0x40246C2: queue_destroy (queue.c:60)
by 0x401B7C9: btdev_destroy (btdev.c:7820)
by 0x400CFBF: hciemu_client_destroy (hciemu.c:301)
by 0x4024636: queue_remove_all (queue.c:341)
by 0x40246C2: queue_destroy (queue.c:60)
by 0x400DA91: hciemu_unref (hciemu.c:441)
by 0x40072F2: test_post_teardown (iso-tester.c:701)
by 0x402BB0A: tester_teardown_complete (tester.c:713)
by 0x402BB41: default_teardown (tester.c:266)
by 0x402B43B: teardown_callback (tester.c:434) |
Luiz Augusto von Dentz |
2 months ago |
1 file, +7, -5 |
| 229d411e |
bthost: Fix crash on bthost_past_set_info
This fixes the following crash:
Invalid read of size 1
at 0x401DEFE: send_command (bthost.c:1101)
by 0x4021F01: bthost_past_set_info (bthost.c:3758)
by 0x4006038: test_listen_past (iso-tester.c:3246)
by 0x494984A: ??? (in /usr/lib64/libglib-2.0.so.0.8400.4)
by 0x4943862: ??? (in /usr/lib64/libglib-2.0.so.0.8400.4)
by 0x494C7A7: ??? (in /usr/lib64/libglib-2.0.so.0.8400.4)
by 0x494CA4E: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.8400.4)
by 0x402CC4D: mainloop_run (mainloop-glib.c:65)
by 0x402D224: mainloop_run_with_signal (mainloop-notify.c:196)
by 0x402C445: tester_run (tester.c:1084)
by 0x4005609: main (iso-tester.c:4335)
Address 0x40 is not stack'd, malloc'd or (recently) free'd |
Luiz Augusto von Dentz |
2 months ago |
1 file, +3, -0 |
| f80a2a57 |
client: Add script for testing Broadcast Delegator
This adds a script for testing Broadcast Delagator role. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +9, -0 |
| e52f05e1 |
client: Add script that setup a broadcast source with 2 BIS
This adds a testing script which setups 2 BIS Broadcast Source, one
for the left and another for right location. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +19, -0 |
| fdf49338 |
client/assistant: Detect if object already contains a valid BCode
If assistant object already contains a valid (non-zero) BCode
(e.g state=local) use it instead of always request the user to
re-enter. |
Luiz Augusto von Dentz |
2 months ago |
1 file, +41, -14 |
| 667db9a8 |
client/assistant: Handle assistant.push to own broadcasts |
Luiz Augusto von Dentz |
2 months ago |
2 files, +86, -21 |
| 10b2a2ff |
bass: Implement Device option for Push
This implements support for MediaAssistant.Push with local broadcast
sources. |
Luiz Augusto von Dentz |
2 months ago |
4 files, +601, -278 |
| bde3c34f |
gatt-database: Add btd_gatt_database_get and btd_gatt_database_get_adapter
This adds btd_gatt_database_get and btd_gatt_database_get_adapter
that makes it possible to resolve the btd_gatt_database and btd_adapter
respectively when only the gatt_db is available. |
Luiz Augusto von Dentz |
2 months ago |
2 files, +39, -0 |