daemon: use btstack_link_key_db_tlv for all targets

This commit is contained in:
Matthias Ringwald 2018-08-22 15:07:37 +02:00
parent a05b2457aa
commit e9b5398432
3 changed files with 9 additions and 21 deletions

View File

@ -77,6 +77,7 @@
#else #else
#include "btstack_run_loop_posix.h" #include "btstack_run_loop_posix.h"
#endif #endif
#include "btstack_version.h" #include "btstack_version.h"
#include "classic/btstack_link_key_db.h" #include "classic/btstack_link_key_db.h"
#include "classic/btstack_link_key_db_tlv.h" #include "classic/btstack_link_key_db_tlv.h"
@ -1467,6 +1468,7 @@ static void daemon_packet_handler(void * connection, uint8_t packet_type, uint16
case BTSTACK_EVENT_STATE: case BTSTACK_EVENT_STATE:
if (btstack_event_state_get_state(packet) != HCI_STATE_WORKING) break; if (btstack_event_state_get_state(packet) != HCI_STATE_WORKING) break;
if (tlv_setup_done) break; if (tlv_setup_done) break;
// setup TLV using local address as part of the name // setup TLV using local address as part of the name
gap_local_bd_addr(addr); gap_local_bd_addr(addr);
log_info("BTstack up and running at %s", bd_addr_to_str(addr)); log_info("BTstack up and running at %s", bd_addr_to_str(addr));
@ -1474,10 +1476,8 @@ static void daemon_packet_handler(void * connection, uint8_t packet_type, uint16
tlv_impl = btstack_tlv_posix_init_instance(&tlv_context, string_buffer); tlv_impl = btstack_tlv_posix_init_instance(&tlv_context, string_buffer);
btstack_tlv_set_instance(tlv_impl, &tlv_context); btstack_tlv_set_instance(tlv_impl, &tlv_context);
// setup link key db as well, if not done already (a big ugly, but will be evaluated at compile time) // setup link key db
if ((void *)&BTSTACK_LINK_KEY_DB_INSTANCE == (void *)&btstack_link_key_db_tlv_get_instance){
hci_set_link_key_db(btstack_link_key_db_tlv_get_instance(tlv_impl, &tlv_context)); hci_set_link_key_db(btstack_link_key_db_tlv_get_instance(tlv_impl, &tlv_context));
}
// init le device db to use TLV // init le device db to use TLV
le_device_db_tlv_configure(tlv_impl, &tlv_context); le_device_db_tlv_configure(tlv_impl, &tlv_context);
@ -1958,13 +1958,6 @@ int btstack_server_run(int tcp_flag){
platform_iphone_register_preferences_changed(preferences_changed_callback); platform_iphone_register_preferences_changed(preferences_changed_callback);
#endif #endif
#ifdef BTSTACK_LINK_KEY_DB_INSTANCE
// setup link key db, if not done already (a big ugly, but will be evaluated at compile time)
if ((void *)&BTSTACK_LINK_KEY_DB_INSTANCE != (void *)&btstack_link_key_db_tlv_get_instance){
btstack_link_key_db = BTSTACK_LINK_KEY_DB_INSTANCE();
}
#endif
#ifdef BTSTACK_DEVICE_NAME_DB_INSTANCE #ifdef BTSTACK_DEVICE_NAME_DB_INSTANCE
btstack_device_name_db = BTSTACK_DEVICE_NAME_DB_INSTANCE(); btstack_device_name_db = BTSTACK_DEVICE_NAME_DB_INSTANCE();
#endif #endif

View File

@ -37,8 +37,7 @@ case "$host_os" in
LDFLAGS+="-framework CoreFoundation -framework Foundation" LDFLAGS+="-framework CoreFoundation -framework Foundation"
BTSTACK_LIB_LDFLAGS="-dynamiclib -install_name \$(prefix)/lib/libBTstack.dylib" BTSTACK_LIB_LDFLAGS="-dynamiclib -install_name \$(prefix)/lib/libBTstack.dylib"
BTSTACK_LIB_EXTENSION="dylib" BTSTACK_LIB_EXTENSION="dylib"
REMOTE_DEVICE_DB_SOURCES="btstack_link_key_db_corefoundation.m btstack_device_name_db_corefoundation.m rfcomm_service_db_corefoundation.m" REMOTE_DEVICE_DB_SOURCES="btstack_device_name_db_corefoundation.m rfcomm_service_db_corefoundation.m"
BTSTACK_LINK_KEY_DB_INSTANCE="btstack_link_key_db_corefoundation_instance"
BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_corefoundation_instance" BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_corefoundation_instance"
UNIX_SOCKETS=yes UNIX_SOCKETS=yes
HCI_USB_LIB=libusb HCI_USB_LIB=libusb
@ -50,8 +49,7 @@ case "$host_os" in
LDFLAGS+="-lws2_32" LDFLAGS+="-lws2_32"
BTSTACK_LIB_LDFLAGS="-shared" BTSTACK_LIB_LDFLAGS="-shared"
BTSTACK_LIB_EXTENSION="dll" BTSTACK_LIB_EXTENSION="dll"
REMOTE_DEVICE_DB_SOURCES="btstack_link_key_db_tlv.c rfcomm_service_db_memory.c" REMOTE_DEVICE_DB_SOURCES="rfcomm_service_db_memory.c"
BTSTACK_LINK_KEY_DB_INSTANCE="btstack_link_key_db_tlv_instance"
# BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_memory_instance" # BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_memory_instance"
UNIX_SOCKETS=no UNIX_SOCKETS=no
HCI_USB_LIB=winusb HCI_USB_LIB=winusb
@ -61,8 +59,7 @@ case "$host_os" in
btstack_run_loop_SOURCES="btstack_run_loop_posix.c" btstack_run_loop_SOURCES="btstack_run_loop_posix.c"
BTSTACK_LIB_LDFLAGS="-shared -Wl,-rpath,\$(prefix)/lib" BTSTACK_LIB_LDFLAGS="-shared -Wl,-rpath,\$(prefix)/lib"
BTSTACK_LIB_EXTENSION="so" BTSTACK_LIB_EXTENSION="so"
REMOTE_DEVICE_DB_SOURCES="btstack_link_key_db_tlv.c rfcomm_service_db_memory.c" REMOTE_DEVICE_DB_SOURCES="rfcomm_service_db_memory.c"
BTSTACK_LINK_KEY_DB_INSTANCE="btstack_link_key_db_tlv_get_instance"
# BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_fs_instance" # BTSTACK_DEVICE_NAME_DB_INSTANCE="btstack_device_name_db_fs_instance"
UNIX_SOCKETS=yes UNIX_SOCKETS=yes
HCI_USB_LIB=libusb HCI_USB_LIB=libusb
@ -183,9 +180,6 @@ else
echo "#define UART_DEVICE \"$UART_DEVICE\"" >> btstack_config.h echo "#define UART_DEVICE \"$UART_DEVICE\"" >> btstack_config.h
echo "#define UART_SPEED $UART_SPEED" >> btstack_config.h echo "#define UART_SPEED $UART_SPEED" >> btstack_config.h
fi fi
if test ! -z "$BTSTACK_LINK_KEY_DB_INSTANCE" ; then
echo "#define BTSTACK_LINK_KEY_DB_INSTANCE $BTSTACK_LINK_KEY_DB_INSTANCE" >> btstack_config.h
fi
if test ! -z "$BTSTACK_DEVICE_NAME_DB_INSTANCE" ; then if test ! -z "$BTSTACK_DEVICE_NAME_DB_INSTANCE" ; then
echo "#define BTSTACK_DEVICE_NAME_DB_INSTANCE $BTSTACK_DEVICE_NAME_DB_INSTANCE" >> btstack_config.h echo "#define BTSTACK_DEVICE_NAME_DB_INSTANCE $BTSTACK_DEVICE_NAME_DB_INSTANCE" >> btstack_config.h
fi fi

View File

@ -57,6 +57,7 @@ BTdaemon_SOURCES = \
btstack_memory_pool.c \ btstack_memory_pool.c \
btstack_tlv.c \ btstack_tlv.c \
btstack_tlv_posix.c \ btstack_tlv_posix.c \
btstack_link_key_db_tlv.c \
daemon.c \ daemon.c \
gatt_client.c \ gatt_client.c \
hci.c \ hci.c \