sdp_query_util: inline into sdp_util and sdp_client

This commit is contained in:
Matthias Ringwald 2016-02-18 12:10:47 +01:00
parent d13e2c60a2
commit 023f27646b
30 changed files with 87 additions and 229 deletions

View File

@ -26,7 +26,6 @@ apis = [
["src/classic/rfcomm.h", "RFCOMM", "rfcomm"],
["src/classic/sdp_client.h", "SDP Client", "sdpClient"],
["src/classic/sdp_query_rfcomm.h", "SDP RFCOMM Query", "sdpQueries"],
["src/classic/sdp_query_util.h","SDP Query Utils","sdpQueryUtil"],
["src/classic/sdp_server.h", "SDP Server", "sdpSrv"],
["src/classic/sdp_util.h","SDP Utils", "sdpUtil"],

View File

@ -29,8 +29,6 @@ COMMON += \
SDP_CLIENT += \
sdp_client.o \
sdp_parser.o \
sdp_query_util.o \
sdp_query_rfcomm.o \
ATT += \

View File

@ -85,7 +85,6 @@
#include "btstack_event.h"
#include "btstack_run_loop.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_util.h"
#include "classic/sdp_util.h"
#include "hci.h"
#include "hci_cmd.h"
@ -445,7 +444,7 @@ static void packet_handler (uint8_t packet_type, uint16_t channel, uint8_t *pack
case BTSTACK_EVENT_STATE:
if (packet[2] == HCI_STATE_WORKING) {
printf("Start SDP BNEP query.\n");
sdp_general_query_for_uuid(remote, SDP_BNEPProtocol);
sdp_client_query_uuid16(remote, SDP_BNEPProtocol);
}
break;

View File

@ -55,7 +55,6 @@
#include "btstack_memory.h"
#include "btstack_run_loop.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_util.h"
#include "classic/sdp_util.h"
#include "hci.h"
#include "hci_cmd.h"
@ -105,7 +104,7 @@ static void sdp_client_init(void){
/* @section SDP Client Query
* To trigger an SDP query to get the a list of service records on a remote device,
* you need to call sdp_general_query_for_uuid() with the remote address and the
* you need to call sdp_client_query_uuid16() with the remote address and the
* BNEP protocol UUID, as shown in Listing SDPQueryUUID.
* In this example we again used fixed address of the remote device. Please update
* for your environment.
@ -121,7 +120,7 @@ static void packet_handler (uint8_t packet_type, uint16_t channel, uint8_t *pack
// BTstack activated, get started
if (packet[2] == HCI_STATE_WORKING){
printf("Start SDP BNEP query.\n");
sdp_general_query_for_uuid(&handle_sdp_client_query_result, remote, SDP_BNEPProtocol);
sdp_client_query_uuid16(&handle_sdp_client_query_result, remote, SDP_BNEPProtocol);
}
break;
default:

View File

@ -54,7 +54,6 @@
#include "btstack_memory.h"
#include "btstack_run_loop.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_util.h"
#include "classic/sdp_util.h"
#include "hci.h"
#include "hci_cmd.h"
@ -95,7 +94,7 @@ static void sdp_client_init(void){
/* @section SDP Client Query
*
* @text To trigger an SDP query to get the a list of service records on a remote device,
* you need to call sdp_general_query_for_uuid() with the remote address and the
* you need to call sdp_client_query_uuid16() with the remote address and the
* UUID of the public browse group, as shown in Listing SDPQueryUUID.
* In this example we used fixed address of the remote device shown in Listing Remote.
* Please update it with the address of a device in your vicinity, e.g., one reported
@ -116,7 +115,7 @@ static void packet_handler (uint8_t packet_type, uint16_t channel, uint8_t *pack
switch (event) {
case BTSTACK_EVENT_STATE:
if (packet[2] == HCI_STATE_WORKING){
sdp_general_query_for_uuid(&handle_sdp_client_query_result, remote, SDP_PublicBrowseGroup);
sdp_client_query_uuid16(&handle_sdp_client_query_result, remote, SDP_PublicBrowseGroup);
}
break;
default:

View File

@ -69,7 +69,6 @@
#include "classic/sdp_server.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_query_util.h"
#include "hci.h"
#include "hci_cmd.h"
#include "hci_dump.h"

View File

@ -51,7 +51,6 @@ BTdaemon_SOURCES = \
sdp_server.c \
sdp_client.c \
sdp_query_rfcomm.c \
sdp_query_util.c \
att_dispatch.c \
gatt_client.c \
att_db.c \

View File

@ -65,8 +65,6 @@ SPP = \
SDP_CLIENT += \
sdp_client.o \
sdp_parser.o \
sdp_query_util.o \
sdp_query_rfcomm.o \
BLE = \

View File

@ -51,7 +51,6 @@ BTdaemon_FILES = \
rfcomm_service_db_cocoa.m \
sdp_client.c \
sdp_query_rfcomm.c \
sdp_query_util.c \
BTdaemon_CFLAGS = \
-I$(BTSTACK_ROOT)/src \

View File

@ -65,8 +65,6 @@ SPP = \
SDP_CLIENT += \
sdp_client.o \
sdp_parser.o \
sdp_query_util.o \
sdp_query_rfcomm.o \
BLE = \

View File

@ -67,8 +67,6 @@ SPP = \
SDP_CLIENT += \
sdp_client.o \
sdp_parser.o \
sdp_query_util.o \
sdp_query_rfcomm.o \
BLE = \

View File

@ -51,9 +51,7 @@ BTdaemon_OBJS = $(libBTstack_OBJS) \
rfcomm.o \
sdp.o \
sdp_client.o \
sdp_parser.o \
sdp_query_rfcomm.o \
sdp_query_util.o \
daemon.o \
hci_transport_h4_mtk.o \

View File

@ -45,17 +45,17 @@ OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
# Source Files Quoted if spaced
SOURCEFILES_QUOTED_IF_SPACED=../src/system_config/bk-audio-dk/system_init.c ../src/system_config/bk-audio-dk/system_tasks.c ../src/btstack_port.c ../src/app_debug.c ../src/app.c ../src/main.c ../../../src/bnep.c ../../../src/btstack_memory.c ../../../src/hci.c ../../../src/hci_cmd.c ../../../src/hci_dump.c ../../../src/hci_transport_h4_embedded.c ../../../src/l2cap.c ../../../src/l2cap_signaling.c ../../../src/linked_list.c ../../../src/btstack_memory_pool.c ../../../src/pan.c ../../../src/remote_device_db_memory.c ../../../src/rfcomm.c ../../../src/btstack_run_loop.c ../../../src/btstack_run_loop_embedded.c ../../../src/sdp_server.c ../../../src/sdp_client.c ../../../src/sdp_query_rfcomm.c ../../../src/sdp_query_util.c ../../../src/sdp_util.c ../../../src/btstack_util.c ../../../../driver/tmr/src/dynamic/drv_tmr.c ../../../../system/clk/src/sys_clk.c ../../../../system/clk/src/sys_clk_pic32mx.c ../../../../system/devcon/src/sys_devcon.c ../../../../system/devcon/src/sys_devcon_pic32mx.c ../../../../system/int/src/sys_int_pic32.c ../../../../system/ports/src/sys_ports.c ../../../chipset/csr/btstack_chipset_csr.c ../../../ble/ad_parser.c ../../../ble/att_db.c ../../../ble/att_dispatch.c ../../../ble/att_server.c ../../../ble/le_device_db_memory.c ../../../ble/sm.c ../../../example/embedded/spp_and_le_counter.c
SOURCEFILES_QUOTED_IF_SPACED=../src/system_config/bk-audio-dk/system_init.c ../src/system_config/bk-audio-dk/system_tasks.c ../src/btstack_port.c ../src/app_debug.c ../src/app.c ../src/main.c ../../../src/bnep.c ../../../src/btstack_memory.c ../../../src/hci.c ../../../src/hci_cmd.c ../../../src/hci_dump.c ../../../src/hci_transport_h4_embedded.c ../../../src/l2cap.c ../../../src/l2cap_signaling.c ../../../src/linked_list.c ../../../src/btstack_memory_pool.c ../../../src/pan.c ../../../src/remote_device_db_memory.c ../../../src/rfcomm.c ../../../src/btstack_run_loop.c ../../../src/btstack_run_loop_embedded.c ../../../src/sdp_server.c ../../../src/sdp_client.c ../../../src/sdp_query_rfcomm.c ../../../src/sdp_util.c ../../../src/btstack_util.c ../../../../driver/tmr/src/dynamic/drv_tmr.c ../../../../system/clk/src/sys_clk.c ../../../../system/clk/src/sys_clk_pic32mx.c ../../../../system/devcon/src/sys_devcon.c ../../../../system/devcon/src/sys_devcon_pic32mx.c ../../../../system/int/src/sys_int_pic32.c ../../../../system/ports/src/sys_ports.c ../../../chipset/csr/btstack_chipset_csr.c ../../../ble/ad_parser.c ../../../ble/att_db.c ../../../ble/att_dispatch.c ../../../ble/att_server.c ../../../ble/le_device_db_memory.c ../../../ble/sm.c ../../../example/embedded/spp_and_le_counter.c
# Object Files Quoted if spaced
OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/2048875307/system_init.o ${OBJECTDIR}/_ext/2048875307/system_tasks.o ${OBJECTDIR}/_ext/1360937237/btstack_port.o ${OBJECTDIR}/_ext/1360937237/app_debug.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1386528437/bnep.o ${OBJECTDIR}/_ext/1386528437/btstack_memory.o ${OBJECTDIR}/_ext/1386528437/hci.o ${OBJECTDIR}/_ext/1386528437/hci_cmd.o ${OBJECTDIR}/_ext/1386528437/hci_dump.o ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o ${OBJECTDIR}/_ext/1386528437/l2cap.o ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o ${OBJECTDIR}/_ext/1386528437/linked_list.o ${OBJECTDIR}/_ext/1386528437/memory_pool.o ${OBJECTDIR}/_ext/1386528437/pan.o ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o ${OBJECTDIR}/_ext/1386528437/rfcomm.o ${OBJECTDIR}/_ext/1386528437/run_loop.o ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o ${OBJECTDIR}/_ext/1386528437/sdp.o ${OBJECTDIR}/_ext/1386528437/sdp_client.o ${OBJECTDIR}/_ext/1386528437/sdp_parser.o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o ${OBJECTDIR}/_ext/1386528437/sdp_util.o ${OBJECTDIR}/_ext/1386528437/utils.o ${OBJECTDIR}/_ext/1880736137/drv_tmr.o ${OBJECTDIR}/_ext/1112166103/sys_clk.o ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o ${OBJECTDIR}/_ext/1510368962/sys_devcon.o ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o ${OBJECTDIR}/_ext/2147153351/sys_ports.o ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o ${OBJECTDIR}/_ext/1386511916/ad_parser.o ${OBJECTDIR}/_ext/1386511916/att.o ${OBJECTDIR}/_ext/1386511916/att_dispatch.o ${OBJECTDIR}/_ext/1386511916/att_server.o ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o ${OBJECTDIR}/_ext/1386511916/sm.o ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o
POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/2048875307/system_init.o.d ${OBJECTDIR}/_ext/2048875307/system_tasks.o.d ${OBJECTDIR}/_ext/1360937237/btstack_port.o.d ${OBJECTDIR}/_ext/1360937237/app_debug.o.d ${OBJECTDIR}/_ext/1360937237/app.o.d ${OBJECTDIR}/_ext/1360937237/main.o.d ${OBJECTDIR}/_ext/1386528437/bnep.o.d ${OBJECTDIR}/_ext/1386528437/btstack_memory.o.d ${OBJECTDIR}/_ext/1386528437/hci.o.d ${OBJECTDIR}/_ext/1386528437/hci_cmd.o.d ${OBJECTDIR}/_ext/1386528437/hci_dump.o.d ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o.d ${OBJECTDIR}/_ext/1386528437/l2cap.o.d ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o.d ${OBJECTDIR}/_ext/1386528437/linked_list.o.d ${OBJECTDIR}/_ext/1386528437/memory_pool.o.d ${OBJECTDIR}/_ext/1386528437/pan.o.d ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o.d ${OBJECTDIR}/_ext/1386528437/rfcomm.o.d ${OBJECTDIR}/_ext/1386528437/run_loop.o.d ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o.d ${OBJECTDIR}/_ext/1386528437/sdp.o.d ${OBJECTDIR}/_ext/1386528437/sdp_client.o.d ${OBJECTDIR}/_ext/1386528437/sdp_parser.o.d ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d ${OBJECTDIR}/_ext/1386528437/sdp_util.o.d ${OBJECTDIR}/_ext/1386528437/utils.o.d ${OBJECTDIR}/_ext/1880736137/drv_tmr.o.d ${OBJECTDIR}/_ext/1112166103/sys_clk.o.d ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o.d ${OBJECTDIR}/_ext/1510368962/sys_devcon.o.d ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o.d ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o.d ${OBJECTDIR}/_ext/2147153351/sys_ports.o.d ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o.d ${OBJECTDIR}/_ext/1386511916/ad_parser.o.d ${OBJECTDIR}/_ext/1386511916/att.o.d ${OBJECTDIR}/_ext/1386511916/att_dispatch.o.d ${OBJECTDIR}/_ext/1386511916/att_server.o.d ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o.d ${OBJECTDIR}/_ext/1386511916/sm.o.d ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o.d
OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/2048875307/system_init.o ${OBJECTDIR}/_ext/2048875307/system_tasks.o ${OBJECTDIR}/_ext/1360937237/btstack_port.o ${OBJECTDIR}/_ext/1360937237/app_debug.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1386528437/bnep.o ${OBJECTDIR}/_ext/1386528437/btstack_memory.o ${OBJECTDIR}/_ext/1386528437/hci.o ${OBJECTDIR}/_ext/1386528437/hci_cmd.o ${OBJECTDIR}/_ext/1386528437/hci_dump.o ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o ${OBJECTDIR}/_ext/1386528437/l2cap.o ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o ${OBJECTDIR}/_ext/1386528437/linked_list.o ${OBJECTDIR}/_ext/1386528437/memory_pool.o ${OBJECTDIR}/_ext/1386528437/pan.o ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o ${OBJECTDIR}/_ext/1386528437/rfcomm.o ${OBJECTDIR}/_ext/1386528437/run_loop.o ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o ${OBJECTDIR}/_ext/1386528437/sdp.o ${OBJECTDIR}/_ext/1386528437/sdp_client.o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ${OBJECTDIR}/_ext/1386528437/sdp_util.o ${OBJECTDIR}/_ext/1386528437/utils.o ${OBJECTDIR}/_ext/1880736137/drv_tmr.o ${OBJECTDIR}/_ext/1112166103/sys_clk.o ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o ${OBJECTDIR}/_ext/1510368962/sys_devcon.o ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o ${OBJECTDIR}/_ext/2147153351/sys_ports.o ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o ${OBJECTDIR}/_ext/1386511916/ad_parser.o ${OBJECTDIR}/_ext/1386511916/att.o ${OBJECTDIR}/_ext/1386511916/att_dispatch.o ${OBJECTDIR}/_ext/1386511916/att_server.o ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o ${OBJECTDIR}/_ext/1386511916/sm.o ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o
POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/2048875307/system_init.o.d ${OBJECTDIR}/_ext/2048875307/system_tasks.o.d ${OBJECTDIR}/_ext/1360937237/btstack_port.o.d ${OBJECTDIR}/_ext/1360937237/app_debug.o.d ${OBJECTDIR}/_ext/1360937237/app.o.d ${OBJECTDIR}/_ext/1360937237/main.o.d ${OBJECTDIR}/_ext/1386528437/bnep.o.d ${OBJECTDIR}/_ext/1386528437/btstack_memory.o.d ${OBJECTDIR}/_ext/1386528437/hci.o.d ${OBJECTDIR}/_ext/1386528437/hci_cmd.o.d ${OBJECTDIR}/_ext/1386528437/hci_dump.o.d ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o.d ${OBJECTDIR}/_ext/1386528437/l2cap.o.d ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o.d ${OBJECTDIR}/_ext/1386528437/linked_list.o.d ${OBJECTDIR}/_ext/1386528437/memory_pool.o.d ${OBJECTDIR}/_ext/1386528437/pan.o.d ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o.d ${OBJECTDIR}/_ext/1386528437/rfcomm.o.d ${OBJECTDIR}/_ext/1386528437/run_loop.o.d ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o.d ${OBJECTDIR}/_ext/1386528437/sdp.o.d ${OBJECTDIR}/_ext/1386528437/sdp_client.o.d.d ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d.d ${OBJECTDIR}/_ext/1386528437/sdp_util.o.d ${OBJECTDIR}/_ext/1386528437/utils.o.d ${OBJECTDIR}/_ext/1880736137/drv_tmr.o.d ${OBJECTDIR}/_ext/1112166103/sys_clk.o.d ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o.d ${OBJECTDIR}/_ext/1510368962/sys_devcon.o.d ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o.d ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o.d ${OBJECTDIR}/_ext/2147153351/sys_ports.o.d ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o.d ${OBJECTDIR}/_ext/1386511916/ad_parser.o.d ${OBJECTDIR}/_ext/1386511916/att.o.d ${OBJECTDIR}/_ext/1386511916/att_dispatch.o.d ${OBJECTDIR}/_ext/1386511916/att_server.o.d ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o.d ${OBJECTDIR}/_ext/1386511916/sm.o.d ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o.d
# Object Files
OBJECTFILES=${OBJECTDIR}/_ext/2048875307/system_init.o ${OBJECTDIR}/_ext/2048875307/system_tasks.o ${OBJECTDIR}/_ext/1360937237/btstack_port.o ${OBJECTDIR}/_ext/1360937237/app_debug.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1386528437/bnep.o ${OBJECTDIR}/_ext/1386528437/btstack_memory.o ${OBJECTDIR}/_ext/1386528437/hci.o ${OBJECTDIR}/_ext/1386528437/hci_cmd.o ${OBJECTDIR}/_ext/1386528437/hci_dump.o ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o ${OBJECTDIR}/_ext/1386528437/l2cap.o ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o ${OBJECTDIR}/_ext/1386528437/linked_list.o ${OBJECTDIR}/_ext/1386528437/memory_pool.o ${OBJECTDIR}/_ext/1386528437/pan.o ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o ${OBJECTDIR}/_ext/1386528437/rfcomm.o ${OBJECTDIR}/_ext/1386528437/run_loop.o ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o ${OBJECTDIR}/_ext/1386528437/sdp.o ${OBJECTDIR}/_ext/1386528437/sdp_client.o ${OBJECTDIR}/_ext/1386528437/sdp_parser.o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o ${OBJECTDIR}/_ext/1386528437/sdp_util.o ${OBJECTDIR}/_ext/1386528437/utils.o ${OBJECTDIR}/_ext/1880736137/drv_tmr.o ${OBJECTDIR}/_ext/1112166103/sys_clk.o ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o ${OBJECTDIR}/_ext/1510368962/sys_devcon.o ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o ${OBJECTDIR}/_ext/2147153351/sys_ports.o ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o ${OBJECTDIR}/_ext/1386511916/ad_parser.o ${OBJECTDIR}/_ext/1386511916/att.o ${OBJECTDIR}/_ext/1386511916/att_dispatch.o ${OBJECTDIR}/_ext/1386511916/att_server.o ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o ${OBJECTDIR}/_ext/1386511916/sm.o ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o
OBJECTFILES=${OBJECTDIR}/_ext/2048875307/system_init.o ${OBJECTDIR}/_ext/2048875307/system_tasks.o ${OBJECTDIR}/_ext/1360937237/btstack_port.o ${OBJECTDIR}/_ext/1360937237/app_debug.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1386528437/bnep.o ${OBJECTDIR}/_ext/1386528437/btstack_memory.o ${OBJECTDIR}/_ext/1386528437/hci.o ${OBJECTDIR}/_ext/1386528437/hci_cmd.o ${OBJECTDIR}/_ext/1386528437/hci_dump.o ${OBJECTDIR}/_ext/1386528437/hci_transport_h4_dma.o ${OBJECTDIR}/_ext/1386528437/l2cap.o ${OBJECTDIR}/_ext/1386528437/l2cap_signaling.o ${OBJECTDIR}/_ext/1386528437/linked_list.o ${OBJECTDIR}/_ext/1386528437/memory_pool.o ${OBJECTDIR}/_ext/1386528437/pan.o ${OBJECTDIR}/_ext/1386528437/remote_device_db_memory.o ${OBJECTDIR}/_ext/1386528437/rfcomm.o ${OBJECTDIR}/_ext/1386528437/run_loop.o ${OBJECTDIR}/_ext/1386528437/btstack_run_loop_embedded.o ${OBJECTDIR}/_ext/1386528437/sdp.o ${OBJECTDIR}/_ext/1386528437/sdp_client.o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ${OBJECTDIR}/_ext/1386528437/sdp_util.o ${OBJECTDIR}/_ext/1386528437/utils.o ${OBJECTDIR}/_ext/1880736137/drv_tmr.o ${OBJECTDIR}/_ext/1112166103/sys_clk.o ${OBJECTDIR}/_ext/1112166103/sys_clk_pic32mx.o ${OBJECTDIR}/_ext/1510368962/sys_devcon.o ${OBJECTDIR}/_ext/1510368962/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/2087176412/sys_int_pic32.o ${OBJECTDIR}/_ext/2147153351/sys_ports.o ${OBJECTDIR}/_ext/1768124388/btstack_chipset_csr.o ${OBJECTDIR}/_ext/1386511916/ad_parser.o ${OBJECTDIR}/_ext/1386511916/att.o ${OBJECTDIR}/_ext/1386511916/att_dispatch.o ${OBJECTDIR}/_ext/1386511916/att_server.o ${OBJECTDIR}/_ext/1386511916/le_device_db_memory.o ${OBJECTDIR}/_ext/1386511916/sm.o ${OBJECTDIR}/_ext/350421922/spp_and_le_counter.o
# Source Files
SOURCEFILES=../src/system_config/bk-audio-dk/system_init.c ../src/system_config/bk-audio-dk/system_tasks.c ../src/btstack_port.c ../src/app_debug.c ../src/app.c ../src/main.c ../../../src/bnep.c ../../../src/btstack_memory.c ../../../src/hci.c ../../../src/hci_cmd.c ../../../src/hci_dump.c ../../../src/hci_transport_h4_embedded.c ../../../src/l2cap.c ../../../src/l2cap_signaling.c ../../../src/linked_list.c ../../../src/btstack_memory_pool.c ../../../src/pan.c ../../../src/remote_device_db_memory.c ../../../src/rfcomm.c ../../../src/btstack_run_loop.c ../../../src/btstack_run_loop_embedded.c ../../../src/sdp_server.c ../../../src/sdp_client.c ../../../src/sdp_query_rfcomm.c ../../../src/sdp_query_util.c ../../../src/sdp_util.c ../../../src/btstack_util.c ../../../../driver/tmr/src/dynamic/drv_tmr.c ../../../../system/clk/src/sys_clk.c ../../../../system/clk/src/sys_clk_pic32mx.c ../../../../system/devcon/src/sys_devcon.c ../../../../system/devcon/src/sys_devcon_pic32mx.c ../../../../system/int/src/sys_int_pic32.c ../../../../system/ports/src/sys_ports.c ../../../chipset/csr/btstack_chipset_csr.c ../../../ble/ad_parser.c ../../../ble/att_db.c ../../../ble/att_dispatch.c ../../../ble/att_server.c ../../../ble/le_device_db_memory.c ../../../ble/sm.c ../../../example/embedded/spp_and_le_counter.c
SOURCEFILES=../src/system_config/bk-audio-dk/system_init.c ../src/system_config/bk-audio-dk/system_tasks.c ../src/btstack_port.c ../src/app_debug.c ../src/app.c ../src/main.c ../../../src/bnep.c ../../../src/btstack_memory.c ../../../src/hci.c ../../../src/hci_cmd.c ../../../src/hci_dump.c ../../../src/hci_transport_h4_embedded.c ../../../src/l2cap.c ../../../src/l2cap_signaling.c ../../../src/linked_list.c ../../../src/btstack_memory_pool.c ../../../src/pan.c ../../../src/remote_device_db_memory.c ../../../src/rfcomm.c ../../../src/btstack_run_loop.c ../../../src/btstack_run_loop_embedded.c ../../../src/sdp_server.c ../../../src/sdp_client.c ../../../src/sdp_query_rfcomm.c ../../../src/sdp_util.c ../../../src/btstack_util.c ../../../../driver/tmr/src/dynamic/drv_tmr.c ../../../../system/clk/src/sys_clk.c ../../../../system/clk/src/sys_clk_pic32mx.c ../../../../system/devcon/src/sys_devcon.c ../../../../system/devcon/src/sys_devcon_pic32mx.c ../../../../system/int/src/sys_int_pic32.c ../../../../system/ports/src/sys_ports.c ../../../chipset/csr/btstack_chipset_csr.c ../../../ble/ad_parser.c ../../../ble/att_db.c ../../../ble/att_dispatch.c ../../../ble/att_server.c ../../../ble/le_device_db_memory.c ../../../ble/sm.c ../../../example/embedded/spp_and_le_counter.c
CFLAGS=
@ -237,13 +237,7 @@ ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o: ../../../src/sdp_query_rfcomm.c
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -Os -I"." -I"../../../.." -I"../src" -I"../src/system_config/bk-audio-dk" -I"../../../include" -I"../../../src" -I"../../../ble" -I"../../../chipset/csr" -MMD -MF "${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d" -o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ../../../src/sdp_query_rfcomm.c
${OBJECTDIR}/_ext/1386528437/sdp_query_util.o: ../../../src/sdp_query_util.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1386528437"
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -Os -I"." -I"../../../.." -I"../src" -I"../src/system_config/bk-audio-dk" -I"../../../include" -I"../../../src" -I"../../../ble" -I"../../../chipset/csr" -MMD -MF "${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d" -o ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o ../../../src/sdp_query_util.c
${OBJECTDIR}/_ext/1386528437/sdp_util.o: ../../../src/sdp_util.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1386528437"
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_util.o.d
@ -490,13 +484,7 @@ ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o: ../../../src/sdp_query_rfcomm.c
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -Os -I"." -I"../../../.." -I"../src" -I"../src/system_config/bk-audio-dk" -I"../../../include" -I"../../../src" -I"../../../ble" -I"../../../chipset/csr" -MMD -MF "${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o.d" -o ${OBJECTDIR}/_ext/1386528437/sdp_query_rfcomm.o ../../../src/sdp_query_rfcomm.c
${OBJECTDIR}/_ext/1386528437/sdp_query_util.o: ../../../src/sdp_query_util.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1386528437"
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -Os -I"." -I"../../../.." -I"../src" -I"../src/system_config/bk-audio-dk" -I"../../../include" -I"../../../src" -I"../../../ble" -I"../../../chipset/csr" -MMD -MF "${OBJECTDIR}/_ext/1386528437/sdp_query_util.o.d" -o ${OBJECTDIR}/_ext/1386528437/sdp_query_util.o ../../../src/sdp_query_util.c
${OBJECTDIR}/_ext/1386528437/sdp_util.o: ../../../src/sdp_util.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1386528437"
@${RM} ${OBJECTDIR}/_ext/1386528437/sdp_util.o.d

View File

@ -58,7 +58,6 @@
<itemPath>../../../src/sdp_server.h</itemPath>
<itemPath>../../../src/sdp_client.h</itemPath>
<itemPath>../../../src/sdp_query_rfcomm.h</itemPath>
<itemPath>../../../src/sdp_query_util.h</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder name="f2" displayName="framework" projectFiles="true">
@ -135,7 +134,6 @@
<itemPath>../../../src/classic/sdp_server.c</itemPath>
<itemPath>../../../src/classic/sdp_client.c</itemPath>
<itemPath>../../../src/classic/sdp_query_rfcomm.c</itemPath>
<itemPath>../../../src/classic/sdp_query_util.c</itemPath>
<itemPath>../../../src/classic/sdp_util.c</itemPath>
<itemPath>../../../src/btstack_util.c</itemPath>
</logicalFolder>

View File

@ -38,7 +38,6 @@ COMMON = \
sdp_util.c \
btstack_util.c \
sdp_client.c \
sdp_query_util.c \
sdp_query_rfcomm.c \
BLE = \

View File

@ -23,7 +23,6 @@ $(NAME)_SOURCES += \
../../src/classic/sdp_server.c \
../../src/classic/sdp_client.c \
../../src/classic/sdp_query_rfcomm.c \
../../src/classic/sdp_query_util.c \
../../src/classic/sdp_util.c \
../../src/btstack_linked_list.c \
../../src/btstack_memory.c \

View File

@ -89,7 +89,6 @@
#include "classic/sdp_server.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_query_util.h"
#include "classic/sdp_util.h"
// #endif

View File

@ -56,9 +56,10 @@
#include "btstack_memory.h"
#include "hci_dump.h"
#include "l2cap.h"
#include "btstack_debug.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_server.h"
#include "btstack_debug.h"
#include "classic/sdp_util.h"
#include "btstack_event.h"
#define HFP_HF_FEATURES_SIZE 10

View File

@ -55,12 +55,13 @@
#include "btstack_memory.h"
#include "hci_dump.h"
#include "l2cap.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_server.h"
#include "btstack_debug.h"
#include "classic/hfp.h"
#include "classic/hfp_gsm_model.h"
#include "classic/hfp_ag.h"
#include "classic/hfp_gsm_model.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_server.h"
#include "classic/sdp_util.h"
// private prototypes
static void packet_handler(uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size);

View File

@ -57,6 +57,7 @@
#include "l2cap.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_server.h"
#include "classic/sdp_util.h"
#include "btstack_debug.h"
#include "classic/hfp.h"
#include "classic/hfp_hf.h"

View File

@ -54,6 +54,7 @@
#include "btstack_run_loop.h"
#include "classic/sdp_server.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_util.h"
#include "hci.h"
#include "hci_cmd.h"
#include "hci_dump.h"

View File

@ -54,6 +54,7 @@
#include "btstack_run_loop.h"
#include "classic/sdp_server.h"
#include "classic/sdp_query_rfcomm.h"
#include "classic/sdp_util.h"
#include "hci.h"
#include "hci_cmd.h"
#include "hci_dump.h"

View File

@ -82,10 +82,10 @@ static uint16_t sdp_client_setup_service_search_request(uint8_t * data);
static uint16_t sdp_client_setup_service_attribute_request(uint8_t * data);
static void sdp_client_parse_service_search_response(uint8_t* packet);
static void sdp_client_parse_service_attribute_response(uint8_t* packet);
static uint32_t serviceRecordHandle;
static uint32_t record_handle;
#endif
static uint8_t des_attributeIDList[] = { 0x35, 0x05, 0x0A, 0x00, 0x01, 0xff, 0xff}; // Attribute: 0x0001 - 0x0100
// State DES Parser
static de_state_t de_header_state;
@ -112,6 +112,10 @@ static uint8_t continuationState[16];
static uint8_t continuationStateLen;
static sdp_client_state_t sdp_client_state = INIT;
static SDP_PDU_ID_t PDU_ID = SDP_Invalid;
#ifdef ENABLE_SDP_EXTRA_QUERIES
static uint32_t serviceRecordHandle;
static uint32_t record_handle;
#endif
// DES Parser
void de_state_init(de_state_t * de_state){
@ -707,6 +711,24 @@ void sdp_client_query(btstack_packet_handler_t callback, bd_addr_t remote, const
l2cap_create_channel(sdp_client_packet_handler, remote, PSM_SDP, l2cap_max_mtu(), NULL);
}
void sdp_client_query_uuid16(btstack_packet_handler_t callback, bd_addr_t remote, uint16_t uuid){
if (!sdp_client_ready()){
sdp_client_emit_busy(callback);
return;
}
uint8_t * service_service_search_pattern = sdp_service_search_pattern_for_uuid16(uuid);
sdp_client_query(callback, remote, service_service_search_pattern, des_attributeIDList);
}
void sdp_client_query_uuid128(btstack_packet_handler_t callback, bd_addr_t remote, const uint8_t* uuid){
if (!sdp_client_ready()){
sdp_client_emit_busy(callback);
return;
}
uint8_t * service_service_search_pattern = sdp_service_search_pattern_for_uuid128(uuid);
sdp_client_query(callback, remote, service_service_search_pattern, des_attributeIDList);
}
#ifdef ENABLE_SDP_EXTRA_QUERIES
void sdp_client_service_attribute_search(btstack_packet_handler_t callback, bd_addr_t remote, uint32_t search_service_record_handle, uint8_t * des_attribute_id_list){
if (!sdp_client_ready()) {

View File

@ -78,6 +78,19 @@ int sdp_client_ready(void);
*/
void sdp_client_query(btstack_packet_handler_t callback, bd_addr_t remote, const uint8_t * des_service_search_pattern, const uint8_t * des_attribute_id_list);
/*
* @brief Searches SDP records on a remote device for all services with a given UUID.
* @note calls sdp_client_query with service search pattern based on uuid16
*/
void sdp_client_query_uuid16(btstack_packet_handler_t callback, bd_addr_t remote, uint16_t uuid16);
/*
* @brief Searches SDP records on a remote device for all services with a given UUID.
* @note calls sdp_client_query with service search pattern based on uuid128
*/
void sdp_client_query_uuid128(btstack_packet_handler_t callback, bd_addr_t remote, const uint8_t* uuid128);
/**
* @brief Retrieves all attribute IDs of a SDP record specified by its service record handle and a list of attribute IDs.
* The remote data is handled by the SDP parser. The SDP parser delivers attribute values and done event via the callback.

View File

@ -43,7 +43,6 @@
#define __SDP_QUERY_RFCOMM_H
#include "btstack_util.h"
#include "classic/sdp_query_util.h"
#define SDP_SERVICE_NAME_LEN 20

View File

@ -1,96 +0,0 @@
/*
* Copyright (C) 2014 BlueKitchen GmbH
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holders nor the names of
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
* 4. Any redistribution, use, or modification is done solely for
* personal benefit and not for any commercial purpose or for
* monetary gain.
*
* THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS
* RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
* THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* Please inquire about commercial licensing options at
* contact@bluekitchen-gmbh.com
*
*/
/*
* sdp_query_util.c
*/
#include "btstack_debug.h"
#include "classic/sdp_client.h"
#include "classic/sdp_query_util.h"
static uint8_t des_attributeIDList[] = { 0x35, 0x05, 0x0A, 0x00, 0x01, 0xff, 0xff}; // Attribute: 0x0001 - 0x0100
static uint8_t des_serviceSearchPattern[] = {0x35, 0x03, 0x19, 0x00, 0x00};
static uint8_t des_serviceSearchPatternUUID128[] = {
0x35, 0x10, 0x19,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static uint8_t* create_service_search_pattern_for_uuid128(uint8_t* uuid){
memcpy(&des_serviceSearchPatternUUID128[3], uuid, 16);
return (uint8_t*)des_serviceSearchPatternUUID128;
}
static void sdp_general_query_emit_busy(btstack_packet_handler_t callback){
log_error("sdp_general_query initiated when not ready");
uint8_t event[] = { SDP_EVENT_QUERY_COMPLETE, 1, SDP_QUERY_BUSY};
(*callback)(HCI_EVENT_PACKET, 0, event, sizeof(event));
}
/**
* @brief Checks if the SDP Client is ready
* @return 1 when no query is active
*/
int sdp_general_query_ready(void){
return sdp_client_ready();
}
uint8_t* create_service_search_pattern_for_uuid(uint16_t uuid){
big_endian_store_16(des_serviceSearchPattern, 3, uuid);
return (uint8_t*)des_serviceSearchPattern;
}
void sdp_general_query_for_uuid(btstack_packet_handler_t callback, bd_addr_t remote, uint16_t uuid){
if (!sdp_client_ready()){
sdp_general_query_emit_busy(callback);
return;
}
create_service_search_pattern_for_uuid(uuid);
sdp_client_query(callback, remote, (uint8_t*)&des_serviceSearchPattern[0], (uint8_t*)&des_attributeIDList[0]);
}
void sdp_general_query_for_uuid128(btstack_packet_handler_t callback, bd_addr_t remote, uint8_t* uuid){
if (!sdp_client_ready()){
sdp_general_query_emit_busy(callback);
return;
}
create_service_search_pattern_for_uuid128(uuid);
sdp_client_query(callback, remote, (uint8_t*)&des_serviceSearchPatternUUID128[0], (uint8_t*)&des_attributeIDList[0]);
}

View File

@ -1,79 +0,0 @@
/*
* Copyright (C) 2014 BlueKitchen GmbH
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holders nor the names of
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
* 4. Any redistribution, use, or modification is done solely for
* personal benefit and not for any commercial purpose or for
* monetary gain.
*
* THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS
* RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
* THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* Please inquire about commercial licensing options at
* contact@bluekitchen-gmbh.com
*
*/
/*
* sdp_query_util.h
*/
#ifndef __SDP_QUERY_UTIL_H
#define __SDP_QUERY_UTIL_H
#if defined __cplusplus
extern "C" {
#endif
/* API_START */
/*
* @brief Returns service search pattern for given UUID
*/
uint8_t* create_service_search_pattern_for_uuid(uint16_t uuid);
/**
* @brief Checks if the SDP Client is ready
* @return 1 when no query is active
*/
int sdp_general_query_ready(void);
/*
* @brief Searches SDP records on a remote device for all services with a given UUID.
*/
void sdp_general_query_for_uuid(btstack_packet_handler_t callback, bd_addr_t remote, uint16_t uuid16);
/*
* @brief
*/
void sdp_general_query_for_uuid128(btstack_packet_handler_t callback, bd_addr_t remote, uint8_t* uuid128);
/* API_END */
#if defined __cplusplus
}
#endif
#endif // __SDP_QUERY_UTIL_H

View File

@ -60,6 +60,12 @@
const char * const type_names[] = { "NIL", "UINT", "INT", "UUID", "STRING", "BOOL", "DES", "DEA", "URL"};
#endif
static uint8_t des_serviceSearchPattern[] = {0x35, 0x03, 0x19, 0x00, 0x00};
static uint8_t des_serviceSearchPatternUUID128[] = {
0x35, 0x10, 0x19,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
// MARK: DataElement getter
de_size_t de_get_size_type(const uint8_t *header){
return (de_size_t) (header[0] & 7);
@ -746,3 +752,14 @@ void sdp_create_spp_service(uint8_t *service, uint32_t service_record_handle, in
de_add_number(service, DE_UINT, DE_SIZE_16, 0x0100);
de_add_data(service, DE_STRING, strlen(name), (uint8_t *) name);
}
uint8_t* sdp_service_search_pattern_for_uuid16(uint16_t uuid16){
big_endian_store_16(des_serviceSearchPattern, 3, uuid16);
return (uint8_t*)des_serviceSearchPattern;
}
uint8_t* sdp_service_search_pattern_for_uuid128(const uint8_t * uuid128){
memcpy(&des_serviceSearchPatternUUID128[3], uuid128, 16);
return (uint8_t*)des_serviceSearchPatternUUID128;
}

View File

@ -119,6 +119,18 @@ int sdp_traversal_match_pattern(uint8_t * element, de_type_t attributeType
void sdp_create_spp_service(uint8_t *service, uint32_t service_record_handle, int service_id, const char *name);
/*
* @brief Returns service search pattern for given UUID-16
* @note Uses fixed buffer
*/
uint8_t* sdp_service_search_pattern_for_uuid16(uint16_t uuid16);
/*
* @brief Returns service search pattern for given UUID-128
* @note Uses fixed buffer
*/
uint8_t* sdp_service_search_pattern_for_uuid128(const uint8_t * uuid128);
/* API_END */
#if defined __cplusplus

View File

@ -24,7 +24,6 @@ COMMON = \
l2cap_signaling.c \
rfcomm.c \
sdp_client.c \
sdp_query_util.c \
sdp_util.c \