2023-07-06 13:43:05

by Claudia Draghicescu

[permalink] [raw]
Subject: [PATCH BlueZ v3 1/1] adapter: Allow broadcaster to be passed up to application

Allow a broadcast advertiser to be passed up to application,
if the scanner is an ISO Sync Receiver capable device.
This allows for a broadcast sink to discover broadcast sources.

---
src/adapter.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

diff --git a/src/adapter.c b/src/adapter.c
index 2679d4302..a48d73ddb 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -7031,6 +7031,27 @@ static bool is_filter_match(GSList *discovery_filter, struct eir_data *eir_data,
return got_match;
}

+static int find_baas(gconstpointer a, gconstpointer b)
+{
+ const struct eir_sd *sd = a;
+ const char *baas_uuid = b;
+
+ return strcmp(sd->uuid, baas_uuid);
+}
+
+static bool accept_bcast_adv(struct btd_adapter *adapter,
+ struct eir_data *eir_data)
+{
+ if ((btd_adapter_has_settings(adapter, MGMT_SETTING_ISO_SYNC_RECEIVER))
+ && !(eir_data->flags & (EIR_LIM_DISC | EIR_GEN_DISC))
+ && (g_slist_find_custom(eir_data->sd_list,
+ BAA_SERVICE_UUID, find_baas))) {
+ return true;
+ }
+
+ return false;
+}
+
static void filter_duplicate_data(void *data, void *user_data)
{
struct discovery_client *client = data;
@@ -7154,6 +7175,9 @@ void btd_adapter_device_found(struct btd_adapter *adapter,
return;
}

+ if (accept_bcast_adv(adapter, &eir_data))
+ monitoring = true;
+
if (!discoverable && !monitoring && !eir_data.rsi) {
eir_data_free(&eir_data);
return;
--
2.34.1



2023-07-06 14:55:04

by bluez.test.bot

[permalink] [raw]
Subject: RE: adapter: Allow broadcaster to be passed up to application

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=763113

---Test result---

Test Summary:
CheckPatch PASS 0.34 seconds
GitLint PASS 0.21 seconds
BuildEll PASS 27.78 seconds
BluezMake PASS 1032.58 seconds
MakeCheck PASS 12.05 seconds
MakeDistcheck PASS 159.81 seconds
CheckValgrind PASS 261.24 seconds
CheckSmatch PASS 351.87 seconds
bluezmakeextell PASS 106.92 seconds
IncrementalBuild PASS 917.45 seconds
ScanBuild PASS 1099.94 seconds



---
Regards,
Linux Bluetooth