From 9b1c3b4d7d0a803905c88f4526948289db492cfd Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Wed, 25 Nov 2015 16:09:30 +0100 Subject: [PATCH] pass in service record handle for sdp hfp create --- src/classic/hfp.c | 4 ++-- src/classic/hfp.h | 2 +- src/classic/hfp_ag.c | 4 ++-- src/classic/hfp_ag.h | 2 +- src/classic/hfp_hf.h | 2 +- src/classic/hsp_ag.c | 2 +- src/classic/pan.c | 2 +- test/pts/hfp_ag_test.c | 2 +- test/pts/hfp_hf_test.c | 2 +- test/pts/iopt.c | 4 ++-- 10 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/classic/hfp.c b/src/classic/hfp.c index ff3f1b0d0..e4425a983 100644 --- a/src/classic/hfp.c +++ b/src/classic/hfp.c @@ -346,13 +346,13 @@ static hfp_connection_t * provide_hfp_connection_context_for_bd_addr(bd_addr_t b * AG bit 5: Wide band speech (yes/no, 1 = yes, 0 = no) */ -void hfp_create_sdp_record(uint8_t * service, uint16_t service_uuid, int rfcomm_channel_nr, const char * name){ +void hfp_create_sdp_record(uint8_t * service, uint32_t service_record_handle, uint16_t service_uuid, int rfcomm_channel_nr, const char * name){ uint8_t* attribute; de_create_sequence(service); // 0x0000 "Service Record Handle" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceRecordHandle); - de_add_number(service, DE_UINT, DE_SIZE_32, 0x10001); + de_add_number(service, DE_UINT, DE_SIZE_32, service_record_handle); // 0x0001 "Service Class ID List" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceClassIDList); diff --git a/src/classic/hfp.h b/src/classic/hfp.h index 84cb6b758..981895834 100644 --- a/src/classic/hfp.h +++ b/src/classic/hfp.h @@ -475,7 +475,7 @@ int get_bit(uint16_t bitmap, int position); int store_bit(uint32_t bitmap, int position, uint8_t value); // UTILS_END -void hfp_create_sdp_record(uint8_t * service, uint16_t service_uuid, int rfcomm_channel_nr, const char * name); +void hfp_create_sdp_record(uint8_t * service, uint32_t service_record_handle, uint16_t service_uuid, int rfcomm_channel_nr, const char * name); void hfp_handle_hci_event(hfp_callback_t callback, uint8_t packet_type, uint8_t *packet, uint16_t size); void hfp_emit_event(hfp_callback_t callback, uint8_t event_subtype, uint8_t value); void hfp_emit_string_event(hfp_callback_t callback, uint8_t event_subtype, const char * value); diff --git a/src/classic/hfp_ag.c b/src/classic/hfp_ag.c index f9079890e..0858c3025 100644 --- a/src/classic/hfp_ag.c +++ b/src/classic/hfp_ag.c @@ -168,11 +168,11 @@ static int has_hf_indicators_feature(hfp_connection_t * connection){ return hf && ag; } -void hfp_ag_create_sdp_record(uint8_t * service, int rfcomm_channel_nr, const char * name, uint8_t ability_to_reject_call, uint16_t supported_features){ +void hfp_ag_create_sdp_record(uint8_t * service, uint32_t service_record_handle, int rfcomm_channel_nr, const char * name, uint8_t ability_to_reject_call, uint16_t supported_features){ if (!name){ name = default_hfp_ag_service_name; } - hfp_create_sdp_record(service, SDP_HandsfreeAudioGateway, rfcomm_channel_nr, name); + hfp_create_sdp_record(service, SDP_HandsfreeAudioGateway, service_record_handle, rfcomm_channel_nr, name); /* * 0x01 – Ability to reject a call diff --git a/src/classic/hfp_ag.h b/src/classic/hfp_ag.h index 082cb61a6..9c150b136 100644 --- a/src/classic/hfp_ag.h +++ b/src/classic/hfp_ag.h @@ -58,7 +58,7 @@ extern "C" { /** * @brief Create HFP Audio Gateway (AG) SDP service record. */ -void hfp_ag_create_sdp_record(uint8_t * service, int rfcomm_channel_nr, const char * name, uint8_t ability_to_reject_call, uint16_t supported_features);; +void hfp_ag_create_sdp_record(uint8_t * service, uint32_t service_record_handle, int rfcomm_channel_nr, const char * name, uint8_t ability_to_reject_call, uint16_t supported_features);; /** * @brief Intialize HFP Audio Gateway (AG) device. diff --git a/src/classic/hfp_hf.h b/src/classic/hfp_hf.h index 455d7ceea..de68c844b 100644 --- a/src/classic/hfp_hf.h +++ b/src/classic/hfp_hf.h @@ -59,7 +59,7 @@ extern "C" { /** * @brief Create HFP Hands-Free (HF) SDP service record. */ -void hfp_hf_create_sdp_record(uint8_t * service, int rfcomm_channel_nr, const char * name, uint16_t supported_features); +void hfp_hf_create_sdp_record(uint8_t * service, uint32_t service_record_handle, int rfcomm_channel_nr, const char * name, uint16_t supported_features); /** * @brief Intialize HFP Hands-Free (HF) device. diff --git a/src/classic/hsp_ag.c b/src/classic/hsp_ag.c index 4179f5b67..e3a584c1c 100644 --- a/src/classic/hsp_ag.c +++ b/src/classic/hsp_ag.c @@ -145,7 +145,7 @@ void hsp_ag_create_service(uint8_t * service, uint32_t service_record_handle, in // 0x0000 "Service Record Handle" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceRecordHandle); - de_add_number(service, DE_UINT, DE_SIZE_32, 0x10001); + de_add_number(service, DE_UINT, DE_SIZE_32, service_record_handle); // 0x0001 "Service Class ID List" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceClassIDList); diff --git a/src/classic/pan.c b/src/classic/pan.c index 11b95023d..361ef6e9b 100644 --- a/src/classic/pan.c +++ b/src/classic/pan.c @@ -70,7 +70,7 @@ static void pan_create_service(uint8_t *service, uint32_t service_record_handle, // 0x0000 "Service Record Handle" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceRecordHandle); - de_add_number(service, DE_UINT, DE_SIZE_32, 0x10001); + de_add_number(service, DE_UINT, DE_SIZE_32, service_record_handle); // 0x0001 "Service Class ID List" de_add_number(service, DE_UINT, DE_SIZE_16, SDP_ServiceClassIDList); diff --git a/test/pts/hfp_ag_test.c b/test/pts/hfp_ag_test.c index 08ff2022d..1785fa43d 100644 --- a/test/pts/hfp_ag_test.c +++ b/test/pts/hfp_ag_test.c @@ -380,7 +380,7 @@ int btstack_main(int argc, const char * argv[]){ // init SDP, create record for SPP and register with SDP sdp_init(); memset((uint8_t *)hfp_service_buffer, 0, sizeof(hfp_service_buffer)); - hfp_ag_create_sdp_record((uint8_t *)hfp_service_buffer, rfcomm_channel_nr, hfp_ag_service_name, 0, 0); + hfp_ag_create_sdp_record((uint8_t *)hfp_service_buffer, 0x10005, rfcomm_channel_nr, hfp_ag_service_name, 0, 0); sdp_register_service((uint8_t *)hfp_service_buffer); diff --git a/test/pts/hfp_hf_test.c b/test/pts/hfp_hf_test.c index e6c254e5f..39ec78434 100644 --- a/test/pts/hfp_hf_test.c +++ b/test/pts/hfp_hf_test.c @@ -239,7 +239,7 @@ int btstack_main(int argc, const char * argv[]){ // init SDP, create record for SPP and register with SDP sdp_init(); memset((uint8_t *)hfp_service_buffer, 0, sizeof(hfp_service_buffer)); - hfp_hf_create_sdp_record((uint8_t *)hfp_service_buffer, rfcomm_channel_nr, hfp_hf_service_name, 0); + hfp_hf_create_sdp_record((uint8_t *)hfp_service_buffer, 0x10006, rfcomm_channel_nr, hfp_hf_service_name, 0); sdp_register_service((uint8_t *)hfp_service_buffer); // turn on! diff --git a/test/pts/iopt.c b/test/pts/iopt.c index db415866e..942ea16a7 100644 --- a/test/pts/iopt.c +++ b/test/pts/iopt.c @@ -109,10 +109,10 @@ int btstack_main(int argc, const char * argv[]){ hsp_hs_create_service((uint8_t *)hsp_hs_service_buffer, 0x10004, 3, "HSP HS", 0); sdp_register_service((uint8_t *)hsp_hs_service_buffer); - hfp_ag_create_sdp_record((uint8_t *)hfp_ag_service_buffer, 4, "HFP AG", 0, 0); + hfp_ag_create_sdp_record((uint8_t *)hfp_ag_service_buffer, 0x10005, 4, "HFP AG", 0, 0); sdp_register_service((uint8_t *)hfp_ag_service_buffer); - hfp_hf_create_sdp_record((uint8_t *)hfp_hf_service_buffer, 5, "HFP HS", 0); + hfp_hf_create_sdp_record((uint8_t *)hfp_hf_service_buffer, 0x10006, 5, "HFP HS", 0); sdp_register_service((uint8_t *)hfp_hf_service_buffer); // set CoD for all this