From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> If mode is set to BT_MODE_LE SDP protocol won't be operational so it is useless to attempt to add records. --- src/adapter.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/adapter.c b/src/adapter.c index 1fcf75ec4..e8b84ccda 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -1227,6 +1227,13 @@ int adapter_service_add(struct btd_adapter *adapter, sdp_record_t *rec) { int ret; + /* + * If the controller does not support BR/EDR operation, + * there is no point in trying to add SDP records. + */ + if (btd_opts.mode == BT_MODE_LE) + return -ENOTSUP; + DBG("%s", adapter->path); ret = add_record_to_server(&adapter->bdaddr, rec); @@ -1240,10 +1247,17 @@ int adapter_service_add(struct btd_adapter *adapter, sdp_record_t *rec) void adapter_service_remove(struct btd_adapter *adapter, uint32_t handle) { - sdp_record_t *rec = sdp_record_find(handle); + sdp_record_t *rec; + /* + * If the controller does not support BR/EDR operation, + * there is no point in trying to remote SDP records. + */ + if (btd_opts.mode == BT_MODE_LE) + return; DBG("%s", adapter->path); + rec = sdp_record_find(handle); if (!rec) return; -- 2.35.1