a2dp: support SDP record without service name and/or provider

This commit is contained in:
Matthias Ringwald 2023-11-13 15:27:53 +01:00
parent 0faf80ae28
commit 1041da4bfc
3 changed files with 12 additions and 8 deletions

View File

@ -145,12 +145,16 @@ void a2dp_create_sdp_record(uint8_t * service, uint32_t service_record_handle,
// 0x0100 "Service Name"
if (strlen(service_name) > 0){
de_add_number(service, DE_UINT, DE_SIZE_16, 0x0100);
de_add_data(service, DE_STRING, (uint16_t) strlen(service_name), (uint8_t *) service_name);
}
// 0x0100 "Provider Name"
if (strlen(service_provider_name) > 0) {
de_add_number(service, DE_UINT, DE_SIZE_16, 0x0102);
de_add_data(service, DE_STRING, (uint16_t)strlen(service_provider_name), (uint8_t *) service_provider_name);
de_add_data(service, DE_STRING, (uint16_t) strlen(service_provider_name), (uint8_t *) service_provider_name);
}
// 0x0311 "Supported Features"
de_add_number(service, DE_UINT, DE_SIZE_16, 0x0311);

View File

@ -59,8 +59,8 @@ extern "C" {
* @param service
* @param service_record_handle
* @param supported_features 16-bit bitmap, see AVDTP_SINK_SF_* values in avdtp.h
* @param service_name
* @param service_provider_name
* @param service_name or NULL for default value. Provide "" (empty string) to skip attribute
* @param service_provider_name or NULL for default value. Provide "" (empty string) to skip attribute
*/
void a2dp_sink_create_sdp_record(uint8_t * service, uint32_t service_record_handle, uint16_t supported_features, const char * service_name, const char * service_provider_name);

View File

@ -59,8 +59,8 @@ extern "C" {
* @param service
* @param service_record_handle
* @param supported_features 16-bit bitmap, see AVDTP_SOURCE_SF_* values in avdtp.h
* @param service_name
* @param service_provider_name
* @param service_name or NULL for default value. Provide "" (empty string) to skip attribute
* @param service_provider_name or NULL for default value. Provide "" (empty string) to skip attribute
*/
void a2dp_source_create_sdp_record(uint8_t * service, uint32_t service_record_handle, uint16_t supported_features, const char * service_name, const char * service_provider_name);