mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-03-28 19:20:54 +00:00
removed old test code
This commit is contained in:
parent
5caa5d6cef
commit
1109056ff2
141
src/sdp.c
141
src/sdp.c
@ -653,144 +653,3 @@ static void sdp_packet_handler(uint8_t packet_type, uint16_t channel, uint8_t *p
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
static uint8_t record[100];
|
||||
static uint8_t request[100];
|
||||
static uint8_t response[100];
|
||||
static void dump_service_search_response(void){
|
||||
uint16_t nr_services = READ_NET_16(sdp_response_buffer, 7);
|
||||
int i;
|
||||
printf("Nr service handles: %u\n", nr_services);
|
||||
for (i=0; i<nr_services;i++){
|
||||
printf(" ServiceHandle %x\n", READ_NET_32(sdp_response_buffer, 9+i*4));
|
||||
}
|
||||
if (sdp_response_buffer[9 + nr_services * 4]){
|
||||
printf(" Continuation index %u\n", READ_NET_16(sdp_response_buffer, 9+nr_services*4+1));
|
||||
} else {
|
||||
printf(" Continuation: NO\n");
|
||||
}
|
||||
}
|
||||
|
||||
void sdp_test(){
|
||||
|
||||
const uint16_t remote_mtu = 48;
|
||||
uint8_t allAttributeIDs[20]; //
|
||||
|
||||
// create an attribute list
|
||||
de_create_sequence(allAttributeIDs);
|
||||
de_add_number(allAttributeIDs, DE_UINT, DE_SIZE_32, 0x0000ffff);
|
||||
|
||||
// create two records with 2 attributes each
|
||||
de_create_sequence(record);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_ServiceRecordHandle);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_32, 0x10001);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_ServiceClassIDList);
|
||||
de_add_number(record, DE_UUID, DE_SIZE_16, 0x0001);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_BrowseGroupList);
|
||||
de_add_number(record, DE_UUID, DE_SIZE_16, 0x0001);
|
||||
uint32_t handle_1 = sdp_register_service_internal(NULL, record);
|
||||
de_dump_data_element(record);
|
||||
|
||||
de_create_sequence(record);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_ServiceRecordHandle);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_32, 0x10002);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_ServiceClassIDList);
|
||||
de_add_number(record, DE_UUID, DE_SIZE_16, 0x0002);
|
||||
de_add_number(record, DE_UINT, DE_SIZE_16, SDP_BrowseGroupList);
|
||||
de_add_number(record, DE_UUID, DE_SIZE_16, 0x0001);
|
||||
sdp_register_service_internal(NULL, record);
|
||||
de_dump_data_element(record);
|
||||
|
||||
uint16_t size = spd_get_filtered_size(record, allAttributeIDs);
|
||||
printf("Attribute size %u\n", size);
|
||||
|
||||
uint16_t transactionID = 1;
|
||||
uint8_t * attributeIDList;
|
||||
uint16_t attributeIDListLen;
|
||||
uint16_t response_pos;
|
||||
uint8_t * serviceSearchPattern;
|
||||
uint16_t serviceSearchPatternLen;
|
||||
|
||||
#if 1
|
||||
// sdp_handle_service_search_request
|
||||
uint16_t nr_services = 1;
|
||||
request[0] = SDP_ServiceSearchRequest;
|
||||
net_store_16(request, 1, transactionID++); // transaction ID
|
||||
serviceSearchPattern = &request[5];
|
||||
de_create_sequence(serviceSearchPattern);
|
||||
{
|
||||
de_add_number(serviceSearchPattern, DE_UUID, DE_SIZE_16, 0x0001);
|
||||
}
|
||||
serviceSearchPatternLen = de_get_len(serviceSearchPattern);
|
||||
net_store_16(request, 5 + serviceSearchPatternLen, 2); // max
|
||||
request[5 + serviceSearchPatternLen + 2] = 0; // cont
|
||||
sdp_handle_service_search_request(request, 16);
|
||||
dump_service_search_response();
|
||||
memcpy(request + 5 + serviceSearchPatternLen + 2, sdp_response_buffer + 9 + nr_services*4, 3);
|
||||
sdp_handle_service_search_request(request, remote_mtu);
|
||||
dump_service_search_response();
|
||||
#endif
|
||||
|
||||
#if 1
|
||||
// sdp_handle_service_attribute_request
|
||||
request[0] = SDP_ServiceAttributeRequest;
|
||||
net_store_16(request, 1, transactionID++); // transaction ID
|
||||
net_store_32(request, 5, handle_1); // record handle
|
||||
net_store_16(request, 9, 11); // max bytes
|
||||
attributeIDList = request + 11;
|
||||
de_create_sequence(attributeIDList);
|
||||
de_add_number(attributeIDList, DE_UINT, DE_SIZE_32, 0x0000ffff);
|
||||
attributeIDListLen = de_get_len(attributeIDList);
|
||||
request[11+attributeIDListLen] = 0;
|
||||
response_pos = 0;
|
||||
while(1) {
|
||||
sdp_handle_service_attribute_request(request, remote_mtu);
|
||||
|
||||
uint16_t attributeListByteCount = READ_NET_16(sdp_response_buffer, 5);
|
||||
memcpy( &response[response_pos], &sdp_response_buffer[7], attributeListByteCount);
|
||||
response_pos += attributeListByteCount;
|
||||
|
||||
printf("attributeListByteCount %u\n", attributeListByteCount);
|
||||
printf("Continuation %u\n", sdp_response_buffer[7+attributeListByteCount]);
|
||||
if (sdp_response_buffer[7+attributeListByteCount] == 0) break;
|
||||
printf("Continuation {%u}\n", READ_NET_16(sdp_response_buffer, 7+attributeListByteCount+1));
|
||||
memcpy(request+11+attributeIDListLen, sdp_response_buffer+7+attributeListByteCount, 3);
|
||||
}
|
||||
de_dump_data_element(response);
|
||||
#endif
|
||||
|
||||
#if 1
|
||||
// sdp_handle_service_search_attribute_request
|
||||
request[0] = SDP_ServiceSearchAttributeRequest;
|
||||
net_store_16(request, 1, transactionID++); // transaction ID
|
||||
serviceSearchPattern = &request[5];
|
||||
de_create_sequence(serviceSearchPattern);
|
||||
{
|
||||
de_add_number(serviceSearchPattern, DE_UUID, DE_SIZE_16, 0x0001);
|
||||
}
|
||||
serviceSearchPatternLen = de_get_len(serviceSearchPattern);
|
||||
net_store_16(request, 5 + serviceSearchPatternLen, 11); // MaximumAttributeByteCount:
|
||||
attributeIDList = request + 5 + serviceSearchPatternLen + 2;
|
||||
de_create_sequence(attributeIDList);
|
||||
de_add_number(attributeIDList, DE_UINT, DE_SIZE_32, 0x0000ffff);
|
||||
attributeIDListLen = de_get_len(attributeIDList);
|
||||
request[5 + serviceSearchPatternLen + 2 + attributeIDListLen] = 0;
|
||||
response_pos = 0;
|
||||
while (1) {
|
||||
sdp_handle_service_search_attribute_request(request, remote_mtu);
|
||||
uint16_t attributeListByteCount = READ_NET_16(sdp_response_buffer, 5);
|
||||
memcpy( &response[response_pos], &sdp_response_buffer[7], attributeListByteCount);
|
||||
response_pos += attributeListByteCount;
|
||||
|
||||
printf("attributeListByteCount %u\n", attributeListByteCount);
|
||||
printf("Continuation %u\n", sdp_response_buffer[7+attributeListByteCount]);
|
||||
if (sdp_response_buffer[7+attributeListByteCount] == 0) break;
|
||||
printf("Continuation {%u,%u}\n", READ_NET_16(sdp_response_buffer, 7+attributeListByteCount+1),
|
||||
READ_NET_16(sdp_response_buffer, 7+attributeListByteCount+3));
|
||||
memcpy(request+5 + serviceSearchPatternLen + 2 + attributeIDListLen, sdp_response_buffer+7+attributeListByteCount, 5);
|
||||
}
|
||||
de_dump_data_element(response);
|
||||
#endif
|
||||
exit(0);
|
||||
}
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user