X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=bt-service%2Fbt-service-common.c;h=a7f4cbf7284941ac0cc05ce99732c17a22069c68;hb=baafd71b1294da18908043ccb450a1bfaac62c75;hp=54e3e39edafd591e5ec0d0ad49ee3c252eb223d6;hpb=a91d0ccb4f6a64dc63d13926765fc8d2c1c58c63;p=platform%2Fcore%2Fconnectivity%2Fbluetooth-frwk.git diff --git a/bt-service/bt-service-common.c b/bt-service/bt-service-common.c index 54e3e39..a7f4cbf 100644 --- a/bt-service/bt-service-common.c +++ b/bt-service/bt-service-common.c @@ -35,11 +35,13 @@ #include "bluetooth-api.h" #include "bt-service-common.h" #include "bt-service-agent.h" +#include "bt-internal-types.h" static GDBusConnection *system_conn; static GDBusConnection *session_conn; static GDBusProxy *manager_proxy; static GDBusProxy *adapter_proxy; +static GDBusProxy *ipsp_proxy; static void *net_conn; static GDBusProxy *adapter_properties_proxy; @@ -171,6 +173,32 @@ static GDBusProxy *__bt_init_adapter_proxy(void) return proxy; } +static GDBusProxy *__bt_init_ipsp_proxy(void) +{ + BT_DBG("+"); + + GDBusConnection *g_conn; + GDBusProxy *proxy; + + + g_conn = _bt_gdbus_get_system_gconn(); + retv_if(g_conn == NULL, NULL); + + proxy = g_dbus_proxy_new_sync(g_conn, G_DBUS_PROXY_FLAGS_NONE, + NULL, BT_IPSP_NAME, + "/org/projectx/bt_ipsp", BT_IPSP_INTERFACE, NULL, NULL); + + if (!proxy) { + BT_ERR("Unable to get proxy"); + return NULL; + } + + ipsp_proxy = proxy; + + BT_DBG("-"); + return proxy; +} + static GDBusProxy *__bt_init_adapter_properties_proxy(void) { GDBusConnection *g_conn; @@ -213,6 +241,21 @@ GDBusProxy *_bt_get_manager_proxy(void) return __bt_init_manager_proxy(); } +GDBusProxy *_bt_get_ipsp_proxy(void) +{ + if (ipsp_proxy) { + const char *path = g_dbus_proxy_get_object_path(ipsp_proxy); + if (path == NULL) { + BT_ERR("Already proxy released hence creating new proxy"); + return __bt_init_ipsp_proxy(); + } + + return ipsp_proxy; + } + return __bt_init_ipsp_proxy(); + +} + static void *__bt_init_net_conn(void) { int result; @@ -360,6 +403,29 @@ void _bt_deinit_proxys(void) } } +GDBusProxy *_bt_gdbus_get_hid_agent_proxy(void) +{ + GDBusConnection *conn; + GDBusProxy *proxy; + GError *err = NULL; + + conn = _bt_gdbus_get_system_gconn(); + retv_if(conn == NULL, NULL); + + proxy = g_dbus_proxy_new_sync(conn, G_DBUS_PROXY_FLAGS_NONE, NULL, + BT_HID_SERVICE_NAME, BT_HID_AGENT_OBJECT_PATH, + BT_HID_SERVICE_INTERFACE, NULL, &err); + if (proxy == NULL) { + if (err != NULL) { + ERR("Unable to create proxy: %s", err->message); + g_clear_error(&err); + } + return NULL; + } + + return proxy; +} + void _bt_convert_device_path_to_address(const char *device_path, char *device_address) { @@ -415,6 +481,7 @@ void _bt_convert_addr_string_to_secure_string(char *addr, ret_if(len != BT_ADDRESS_STRING_SIZE - 1); strncpy(addr, address, len); + addr[len] = '\0'; addr[len-1] = 'X'; addr[len-2] = 'X'; @@ -968,6 +1035,267 @@ const char *_bt_convert_disc_reason_to_string(int reason) } } +const char *_bt_convert_service_function_to_string(int function) +{ + int i; + + typedef struct { + int function; + const char *function_name; + } bt_function_name_t; + + const bt_function_name_t bt_functions[] = { + {BT_CHECK_ADAPTER, "BT_CHECK_ADAPTER"}, + {BT_ENABLE_ADAPTER, "BT_ENABLE_ADAPTER"}, + {BT_DISABLE_ADAPTER, "BT_DISABLE_ADAPTER"}, + {BT_RECOVER_ADAPTER, "BT_RECOVER_ADAPTER"}, + {BT_SET_DISCOVERABLE_TIME, "BT_SET_DISCOVERABLE_TIME"}, + {BT_GET_DISCOVERABLE_TIME, "BT_GET_DISCOVERABLE_TIME"}, + {BT_IGNORE_AUTO_PAIRING, "BT_IGNORE_AUTO_PAIRING"}, + {BT_GET_LOCAL_ADDRESS, "BT_GET_LOCAL_ADDRESS"}, + {BT_GET_LOCAL_VERSION, "BT_GET_LOCAL_VERSION"}, + {BT_GET_LOCAL_NAME, "BT_GET_LOCAL_NAME"}, + {BT_SET_LOCAL_NAME, "BT_SET_LOCAL_NAME"}, + {BT_IS_SERVICE_USED, "BT_IS_SERVICE_USED"}, + {BT_GET_DISCOVERABLE_MODE, "BT_GET_DISCOVERABLE_MODE"}, + {BT_SET_DISCOVERABLE_MODE, "BT_SET_DISCOVERABLE_MODE"}, + {BT_START_DISCOVERY, "BT_START_DISCOVERY"}, + {BT_START_CUSTOM_DISCOVERY, "BT_START_CUSTOM_DISCOVERY"}, + {BT_CANCEL_DISCOVERY, "BT_CANCEL_DISCOVERY"}, + {BT_START_LE_DISCOVERY, "BT_START_LE_DISCOVERY"}, + {BT_STOP_LE_DISCOVERY, "BT_STOP_LE_DISCOVERY"}, + {BT_IS_DISCOVERYING, "BT_IS_DISCOVERYING"}, + {BT_IS_LE_DISCOVERYING, "BT_IS_LE_DISCOVERYING"}, + {BT_ENABLE_RSSI, "BT_ENABLE_RSSI"}, + {BT_GET_RSSI, "BT_GET_RSSI"}, + {BT_IS_CONNECTABLE, "BT_IS_CONNECTABLE"}, + {BT_SET_CONNECTABLE, "BT_SET_CONNECTABLE"}, + {BT_GET_BONDED_DEVICES, "BT_GET_BONDED_DEVICES"}, + {BT_RESET_ADAPTER, "BT_RESET_ADAPTER"}, + {BT_SET_ADVERTISING, "BT_SET_ADVERTISING"}, + {BT_SET_CUSTOM_ADVERTISING, "BT_SET_CUSTOM_ADVERTISING"}, + {BT_SET_ADVERTISING_PARAMETERS, "BT_SET_ADVERTISING_PARAMETERS"}, + {BT_GET_ADVERTISING_DATA, "BT_GET_ADVERTISING_DATA"}, + {BT_SET_ADVERTISING_DATA, "BT_SET_ADVERTISING_DATA"}, + {BT_SET_SCAN_PARAMETERS, "BT_SET_SCAN_PARAMETERS"}, + {BT_GET_SCAN_RESPONSE_DATA, "BT_GET_SCAN_RESPONSE_DATA"}, + {BT_SET_SCAN_RESPONSE_DATA, "BT_SET_SCAN_RESPONSE_DATA"}, + {BT_IS_ADVERTISING, "BT_IS_ADVERTISING"}, + {BT_SET_MANUFACTURER_DATA, "BT_SET_MANUFACTURER_DATA"}, + {BT_LE_CONN_UPDATE, "BT_LE_CONN_UPDATE"}, + {BT_LE_READ_MAXIMUM_DATA_LENGTH, "BT_LE_READ_MAXIMUM_DATA_LENGTH"}, + {BT_LE_WRITE_HOST_SUGGESTED_DATA_LENGTH, "BT_LE_WRITE_HOST_SUGGESTED_DATA_LENGTH"}, + {BT_LE_READ_HOST_SUGGESTED_DATA_LENGTH, "BT_LE_READ_HOST_SUGGESTED_DATA_LENGTH"}, + {BT_LE_SET_DATA_LENGTH, "BT_LE_SET_DATA_LENGTH"}, + {BT_ADD_WHITE_LIST, "BT_ADD_WHITE_LIST"}, + {BT_REMOVE_WHITE_LIST, "BT_REMOVE_WHITE_LIST"}, + {BT_CLEAR_WHITE_LIST, "BT_CLEAR_WHITE_LIST"}, + {BT_REGISTER_SCAN_FILTER, "BT_REGISTER_SCAN_FILTER"}, + {BT_UNREGISTER_SCAN_FILTER, "BT_UNREGISTER_SCAN_FILTER"}, + {BT_UNREGISTER_ALL_SCAN_FILTERS, "BT_UNREGISTER_ALL_SCAN_FILTERS"}, + {BT_IS_SCAN_FILTER_SUPPORTED, "BT_IS_SCAN_FILTER_SUPPORTED"}, + {BT_GET_PROFILE_CONNECTED_DEVICES, "BT_GET_PROFILE_CONNECTED_DEVICES"}, + {BT_ENABLE_FORCE_HCI_DUMP, "BT_ENABLE_FORCE_HCI_DUMP"}, + {BT_SET_PASSKEY_NOTIFICATION, "BT_SET_PASSKEY_NOTIFICATION"}, + {BT_BOND_DEVICE, "BT_BOND_DEVICE"}, + {BT_BOND_DEVICE_BY_TYPE, "BT_BOND_DEVICE_BY_TYPE"}, + {BT_CANCEL_BONDING, "BT_CANCEL_BONDING"}, + {BT_PASSKEY_REPLY, "BT_PASSKEY_REPLY"}, + {BT_PASSKEY_CONFIRMATION_REPLY, "BT_PASSKEY_CONFIRMATION_REPLY"}, + {BT_UNBOND_DEVICE, "BT_UNBOND_DEVICE"}, + {BT_SEARCH_SERVICE, "BT_SEARCH_SERVICE"}, + {BT_CANCEL_SEARCH_SERVICE, "BT_CANCEL_SEARCH_SERVICE"}, + {BT_GET_BONDED_DEVICE, "BT_GET_BONDED_DEVICE"}, + {BT_GET_IS_ALIAS_SET, "BT_GET_IS_ALIAS_SET"}, + {BT_SET_ALIAS, "BT_SET_ALIAS"}, + {BT_SET_AUTHORIZATION, "BT_SET_AUTHORIZATION"}, + {BT_UNSET_AUTHORIZATION, "BT_UNSET_AUTHORIZATION"}, + {BT_IS_DEVICE_CONNECTED, "BT_IS_DEVICE_CONNECTED"}, + {BT_GET_CONNECTED_LINK_TYPE, "BT_GET_CONNECTED_LINK_TYPE"}, + {BT_SET_PIN_CODE, "BT_SET_PIN_CODE"}, + {BT_UNSET_PIN_CODE, "BT_UNSET_PIN_CODE"}, + {BT_UPDATE_LE_CONNECTION_MODE, "BT_UPDATE_LE_CONNECTION_MODE"}, + {BT_SET_PROFILE_TRUSTED, "BT_SET_PROFILE_TRUSTED"}, + {BT_GET_PROFILE_TRUSTED, "BT_GET_PROFILE_TRUSTED"}, + {BT_SET_PROFILE_RESTRICTED, "BT_SET_PROFILE_RESTRICTED"}, + {BT_GET_PROFILE_RESTRICTED, "BT_GET_PROFILE_RESTRICTED"}, + {BT_HID_CONNECT, "BT_HID_CONNECT"}, + {BT_HID_DISCONNECT, "BT_HID_DISCONNECT"}, + {BT_HID_DEVICE_ACTIVATE, "BT_HID_DEVICE_ACTIVATE"}, + {BT_HID_DEVICE_DEACTIVATE, "BT_HID_DEVICE_DEACTIVATE"}, + {BT_HID_DEVICE_CONNECT, "BT_HID_DEVICE_CONNECT"}, + {BT_HID_DEVICE_DISCONNECT, "BT_HID_DEVICE_DISCONNECT"}, + {BT_HID_DEVICE_SEND_MOUSE_EVENT, "BT_HID_DEVICE_SEND_MOUSE_EVENT"}, + {BT_HID_DEVICE_SEND_KEY_EVENT, "BT_HID_DEVICE_SEND_KEY_EVENT"}, + {BT_HID_DEVICE_SEND_CUSTOM_EVENT, "BT_HID_DEVICE_SEND_CUSTOM_EVENT"}, + {BT_HID_DEVICE_SEND_REPLY_TO_REPORT, "BT_HID_DEVICE_SEND_REPLY_TO_REPORT"}, + {BT_HID_ENABLE_BARCODE_FEATURE, "BT_HID_ENABLE_BARCODE_FEATURE"}, + {BT_NETWORK_ACTIVATE, "BT_NETWORK_ACTIVATE"}, + {BT_NETWORK_DEACTIVATE, "BT_NETWORK_DEACTIVATE"}, + {BT_NETWORK_CONNECT, "BT_NETWORK_CONNECT"}, + {BT_NETWORK_DISCONNECT, "BT_NETWORK_DISCONNECT"}, + {BT_NETWORK_SERVER_DISCONNECT, "BT_NETWORK_SERVER_DISCONNECT"}, + {BT_AUDIO_CONNECT, "BT_AUDIO_CONNECT"}, + {BT_AUDIO_DISCONNECT, "BT_AUDIO_DISCONNECT"}, + {BT_AG_CONNECT, "BT_AG_CONNECT"}, + {BT_AG_DISCONNECT, "BT_AG_DISCONNECT"}, + {BT_AV_CONNECT, "BT_AV_CONNECT"}, + {BT_AV_DISCONNECT, "BT_AV_DISCONNECT"}, + {BT_AV_SOURCE_CONNECT, "BT_AV_SOURCE_CONNECT"}, + {BT_AV_SOURCE_DISCONNECT, "BT_AV_SOURCE_DISCONNECT"}, + {BT_HF_CONNECT, "BT_HF_CONNECT"}, + {BT_HF_DISCONNECT, "BT_HF_DISCONNECT"}, + {BT_GET_SPEAKER_GAIN, "BT_GET_SPEAKER_GAIN"}, + {BT_SET_SPEAKER_GAIN, "BT_SET_SPEAKER_GAIN"}, + {BT_SET_CONTENT_PROTECT, "BT_SET_CONTENT_PROTECT"}, + {BT_OOB_READ_LOCAL_DATA, "BT_OOB_READ_LOCAL_DATA"}, + {BT_OOB_ADD_REMOTE_DATA, "BT_OOB_ADD_REMOTE_DATA"}, + {BT_OOB_REMOVE_REMOTE_DATA, "BT_OOB_REMOVE_REMOTE_DATA"}, + {BT_AVRCP_SET_TRACK_INFO, "BT_AVRCP_SET_TRACK_INFO"}, + {BT_AVRCP_SET_PROPERTY, "BT_AVRCP_SET_PROPERTY"}, + {BT_AVRCP_SET_PROPERTIES, "BT_AVRCP_SET_PROPERTIES"}, + {BT_AVRCP_CONTROL_CONNECT, "BT_AVRCP_CONTROL_CONNECT"}, + {BT_AVRCP_CONTROL_DISCONNECT, "BT_AVRCP_CONTROL_DISCONNECT"}, + {BT_AVRCP_TARGET_CONNECT, "BT_AVRCP_TARGET_CONNECT"}, + {BT_AVRCP_TARGET_DISCONNECT, "BT_AVRCP_TARGET_DISCONNECT"}, + {BT_AVRCP_HANDLE_CONTROL, "BT_AVRCP_HANDLE_CONTROL"}, + {BT_AVRCP_CONTROL_SET_PROPERTY, "BT_AVRCP_CONTROL_SET_PROPERTY"}, + {BT_AVRCP_CONTROL_GET_PROPERTY, "BT_AVRCP_CONTROL_GET_PROPERTY"}, + {BT_AVRCP_GET_TRACK_INFO, "BT_AVRCP_GET_TRACK_INFO"}, + {BT_OPP_PUSH_FILES, "BT_OPP_PUSH_FILES"}, + {BT_OPP_CANCEL_PUSH, "BT_OBT_OPP_IS_PUSHING_FILESPP_CANCEL_PUSH"}, + {BT_OPP_IS_PUSHING_FILES, "BT_OPP_IS_PUSHING_FILES"}, + {BT_OPP_GET_TRANSFER_PROGRESS, "BT_OPP_GET_TRANSFER_PROGRESS"}, + {BT_MAP_CREATE_SESSION, "BT_MAP_CREATE_SESSION"}, + {BT_MAP_DESTROY_SESSION, "BT_MAP_DESTROY_SESSION"}, + {BT_MAP_SET_FOLDER, "BT_MAP_SET_FOLDER"}, + {BT_MAP_LIST_FOLDERS, "BT_MAP_LIST_FOLDERS"}, + {BT_MAP_LIST_FILTER_FIELDS, "BT_MAP_LIST_FILTER_FIELDS"}, + {BT_MAP_LIST_MESSAGES, "BT_MAP_LIST_MESSAGES"}, + {BT_MAP_UPDATE_INBOX, "BT_MAP_UPDATE_INBOX"}, + {BT_MAP_PUSH_MESSAGE, "BT_MAP_PUSH_MESSAGE"}, + {BT_MAP_GET_MESSAGE, "BT_MAP_GET_MESSAGE"}, + {BT_OBEX_SERVER_ALLOCATE, "BT_OBEX_SERVER_ALLOCATE"}, + {BT_OBEX_SERVER_DEALLOCATE, "BT_OBEX_SERVER_DEALLOCATE"}, + {BT_OBEX_SERVER_IS_ACTIVATED, "BT_OBEX_SERVER_IS_ACTIVATED"}, + {BT_OBEX_SERVER_ACCEPT_CONNECTION, "BT_OBEX_SERVER_ACCEPT_CONNECTION"}, + {BT_OBEX_SERVER_REJECT_CONNECTION, "BT_OBEX_SERVER_REJECT_CONNECTION"}, + {BT_OBEX_SERVER_ACCEPT_FILE, "BT_OBEX_SERVER_ACCEPT_FILE"}, + {BT_OBEX_SERVER_REJECT_FILE, "BT_OBEX_SERVER_REJECT_FILE"}, + {BT_OBEX_SERVER_SET_PATH, "BT_OBEX_SERVER_SET_PATH"}, + {BT_OBEX_SERVER_SET_ROOT, "BT_OBEX_SERVER_SET_ROOT"}, + {BT_OBEX_SERVER_CANCEL_TRANSFER, "BT_OBEX_SERVER_CANCEL_TRANSFER"}, + {BT_OBEX_SERVER_CANCEL_ALL_TRANSFERS, "BT_OBEX_SERVER_CANCEL_ALL_TRANSFERS"}, + {BT_OBEX_SERVER_IS_RECEIVING, "BT_OBEX_SERVER_IS_RECEIVING"}, + {BT_RFCOMM_CLIENT_CONNECT, "BT_RFCOMM_CLIENT_CONNECT"}, + {BT_RFCOMM_CLIENT_CANCEL_CONNECT, "BT_RFCOMM_CLIENT_CANCEL_CONNECT"}, + {BT_RFCOMM_CLIENT_IS_CONNECTED, "BT_RFCOMM_CLIENT_IS_CONNECTED"}, + {BT_RFCOMM_SOCKET_DISCONNECT, "BT_RFCOMM_SOCKET_DISCONNECT"}, + {BT_RFCOMM_SOCKET_WRITE, "BT_RFCOMM_SOCKET_WRITE"}, + {BT_RFCOMM_CREATE_SOCKET, "BT_RFCOMM_CREATE_SOCKET"}, + {BT_RFCOMM_REMOVE_SOCKET, "BT_RFCOMM_REMOVE_SOCKET"}, + {BT_RFCOMM_LISTEN, "BT_RFCOMM_LISTEN"}, + {BT_RFCOMM_IS_UUID_AVAILABLE, "BT_RFCOMM_IS_UUID_AVAILABLE"}, + {BT_RFCOMM_ACCEPT_CONNECTION, "BT_RFCOMM_ACCEPT_CONNECTION"}, + {BT_RFCOMM_REJECT_CONNECTION, "BT_RFCOMM_REJECT_CONNECTION"}, + {BT_RFCOMM_CREATE_SOCKET_EX, "BT_RFCOMM_CREATE_SOCKET_EX"}, + {BT_RFCOMM_REMOVE_SOCKET_EX, "BT_RFCOMM_REMOVE_SOCKET_EX"}, + {BT_PBAP_CONNECT, "BT_PBAP_CONNECT"}, + {BT_PBAP_DISCONNECT, "BT_PBAP_DISCONNECT"}, + {BT_PBAP_GET_PHONEBOOK_SIZE, "BT_PBAP_GET_PHONEBOOK_SIZE"}, + {BT_PBAP_GET_PHONEBOOK, "BT_PBAP_GET_PHONEBOOK"}, + {BT_PBAP_GET_LIST, "BT_PBAP_GET_LIST"}, + {BT_PBAP_PULL_VCARD, "BT_PBAP_PULL_VCARD"}, + {BT_PBAP_PHONEBOOK_SEARCH, "BT_PBAP_PHONEBOOK_SEARCH"}, + {BT_ENABLE_ADAPTER_LE, "BT_ENABLE_ADAPTER_LE"}, + {BT_DISABLE_ADAPTER_LE, "BT_DISABLE_ADAPTER_LE"}, + {BT_CONNECT_LE, "BT_CONNECT_LE"}, + {BT_DISCONNECT_LE, "BT_DISCONNECT_LE"}, + {BT_SET_LE_PRIVACY, "BT_SET_LE_PRIVACY"}, + {BT_REQ_ATT_MTU, "BT_REQ_ATT_MTU"}, + {BT_GET_ATT_MTU, "BT_GET_ATT_MTU"}, + {BT_GET_DEVICE_IDA, "BT_GET_DEVICE_IDA"}, + {BT_SET_LE_STATIC_RANDOM_ADDRESS, "BT_SET_LE_STATIC_RANDOM_ADDRESS"}, + {BT_HDP_CONNECT, "BT_HDP_CONNECT"}, + {BT_HDP_DISCONNECT, "BT_HDP_DISCONNECT"}, + {BT_HDP_SEND_DATA, "BT_HDP_SEND_DATA"}, + {BT_HDP_REGISTER_SINK_APP, "BT_HDP_REGISTER_SINK_APP"}, + {BT_HDP_UNREGISTER_SINK_APP, "BT_HDP_UNREGISTER_SINK_APP"}, + {BT_GATT_GET_PRIMARY_SERVICES, "BT_GATT_GET_PRIMARY_SERVICES"}, + {BT_GATT_DISCOVER_CHARACTERISTICS, "BT_GATT_DISCOVER_CHARACTERISTICS"}, + {BT_GATT_SET_PROPERTY_REQUEST, "BT_GATT_SET_PROPERTY_REQUEST"}, + {BT_GATT_READ_CHARACTERISTIC, "BT_GATT_READ_CHARACTERISTIC"}, + {BT_GATT_DISCOVER_CHARACTERISTICS_DESCRIPTOR, "BT_GATT_DISCOVER_CHARACTERISTICS_DESCRIPTOR"}, + {BT_GATT_REGISTER_APPLICATION, "BT_GATT_REGISTER_APPLICATION"}, + {BT_GATT_REGISTER_SERVICE, "BT_GATT_REGISTER_SERVICE"}, + {BT_GATT_SEND_RESPONSE, "BT_GATT_SEND_RESPONSE"}, + {BT_LE_IPSP_INIT, "BT_LE_IPSP_INIT"}, + {BT_LE_IPSP_DEINIT, "BT_LE_IPSP_DEINIT"}, + {BT_LE_IPSP_CONNECT, "BT_LE_IPSP_CONNECT"}, + {BT_LE_IPSP_DISCONNECT, "BT_LE_IPSP_DISCONNECT"}, + {BT_DPM_SET_ALLOW_BT_MODE, "BT_DPM_SET_ALLOW_BT_MODE"}, + {BT_DPM_GET_ALLOW_BT_MODE, "BT_DPM_GET_ALLOW_BT_MODE"}, + {BT_DPM_SET_DEVICE_RESTRITION, "BT_DPM_SET_DEVICE_RESTRITION"}, + {BT_DPM_GET_DEVICE_RESTRITION, "BT_DPM_GET_DEVICE_RESTRITION"}, + {BT_DPM_SET_UUID_RESTRITION, "BT_DPM_SET_UUID_RESTRITION"}, + {BT_DPM_GET_UUID_RESTRITION, "BT_DPM_GET_UUID_RESTRITION"}, + {BT_DPM_ADD_DEVICES_BLACKLIST, "BT_DPM_ADD_DEVICES_BLACKLIST"}, + {BT_DPM_ADD_DEVICES_WHITELIST, "BT_DPM_ADD_DEVICES_WHITELIST"}, + {BT_DPM_ADD_UUIDS_BLACKLIST, "BT_DPM_ADD_UUIDS_BLACKLIST"}, + {BT_DPM_ADD_UUIDS_WHITELIST, "BT_DPM_ADD_UUIDS_WHITELIST"}, + {BT_DPM_CLEAR_DEVICES_BLACKLIST, "BT_DPM_CLEAR_DEVICES_BLACKLIST"}, + {BT_DPM_CLEAR_DEVICES_WHITELIST, "BT_DPM_CLEAR_DEVICES_WHITELIST"}, + {BT_DPM_CLEAR_UUIDS_BLACKLIST, "BT_DPM_CLEAR_UUIDS_BLACKLIST"}, + {BT_DPM_CLEAR_UUIDS_WHITELIST, "BT_DPM_CLEAR_UUIDS_WHITELIST"}, + {BT_DPM_REMOVE_DEVICE_BLACKLIST, "BT_DPM_REMOVE_DEVICE_BLACKLIST"}, + {BT_DPM_REMOVE_DEVICE_WHITELIST, "BT_DPM_REMOVE_DEVICE_WHITELIST"}, + {BT_DPM_REMOVE_UUID_BLACKLIST, "BT_DPM_REMOVE_UUID_BLACKLIST"}, + {BT_DPM_REMOVE_UUID_WHITELIST, "BT_DPM_REMOVE_UUID_WHITELIST"}, + {BT_DPM_GET_DEVICES_BLACKLIST, "BT_DPM_GET_DEVICES_BLACKLIST"}, + {BT_DPM_GET_DEVICES_WHITELIST, "BT_DPM_GET_DEVICES_WHITELIST"}, + {BT_DPM_GET_UUIDS_BLACKLIST, "BT_DPM_GET_UUIDS_BLACKLIST"}, + {BT_DPM_GET_UUIDS_WHITELIST, "BT_DPM_GET_UUIDS_WHITELIST"}, + {BT_DPM_SET_ALLOW_OUTGOING_CALL, "BT_DPM_SET_ALLOW_OUTGOING_CALL"}, + {BT_DPM_GET_ALLOW_OUTGOING_CALL, "BT_DPM_GET_ALLOW_OUTGOING_CALL"}, + {BT_DPM_SET_PAIRING_STATE, "BT_DPM_SET_PAIRING_STATE"}, + {BT_DPM_GET_PAIRING_STATE, "BT_DPM_GET_PAIRING_STATE"}, + {BT_DPM_SET_PROFILE_STATE, "BT_DPM_SET_PROFILE_STATE"}, + {BT_DPM_GET_PROFILE_STATE, "BT_DPM_GET_PROFILE_STATE"}, + {BT_DPM_SET_DESKROP_CONNECTIVITY_STATE, "BT_DPM_SET_DESKROP_CONNECTIVITY_STATE"}, + {BT_DPM_GET_DESKROP_CONNECTIVITY_STATE, "BT_DPM_GET_DESKROP_CONNECTIVITY_STATE"}, + {BT_DPM_SET_DISCOVERABLE_STATE, "BT_DPM_SET_DISCOVERABLE_STATE"}, + {BT_DPM_GET_DISCOVERABLE_STATE, "BT_DPM_GET_DISCOVERABLE_STATE"}, + {BT_DPM_SET_LIMITED_DISCOVERABLE_STATE, "BT_DPM_SET_LIMITED_DISCOVERABLE_STATE"}, + {BT_DPM_GET_LIMITED_DISCOVERABLE_STATE, "BT_DPM_GET_LIMITED_DISCOVERABLE_STATE"}, + {BT_DPM_SET_DATA_TRANSFER_STATE, "BT_DPM_SET_DATA_TRANSFER_STATE"}, + {BT_DPM_GET_DATA_TRANSFER_STATE, "BT_DPM_GET_DATA_TRANSFER_STATE"}, + {BT_PXP_MONITOR_SET_PROPERTY, "BT_PXP_MONITOR_SET_PROPERTY"}, + {BT_PXP_MONITOR_GET_PROPERTY, "BT_PXP_MONITOR_GET_PROPERTY"}, + {BT_PXP_MONITOR_GET_SUPPORTED_SERIVCES, "BT_PXP_MONITOR_GET_SUPPORTED_SERIVCES"}, + {BT_PXP_REPORTER_REGISTER, "BT_PXP_REPORTER_REGISTER"}, + {BT_PXP_REPORTER_UNREGISTER, "BT_PXP_REPORTER_UNREGISTER"}, + {BT_PXP_REPORTER_GET_PROPERTY, "BT_PXP_REPORTER_GET_PROPERTY"}, + {BT_TDS_PROVIDER_REGISTER, "BT_TDS_PROVIDER_REGISTER"}, + {BT_TDS_PROVIDER_UNREGISTER, "BT_TDS_PROVIDER_UNREGISTER"}, + {BT_TDS_PROVIDER_SET_MANUF_DATA, "BT_TDS_PROVIDER_SET_MANUF_DATA"}, + {BT_TDS_PROVIDER_CREATE, "BT_TDS_PROVIDER_CREATE"}, + {BT_TDS_PROVIDER_DESTROY, "BT_TDS_PROVIDER_DESTROY"}, + {BT_TDS_PROVIDER_SET_TRANSPORT_DATA, "BT_TDS_PROVIDER_SET_TRANSPORT_DATA"}, + {BT_TDS_SEND_ACTIVATION_RESPONSE, "BT_TDS_SEND_ACTIVATION_RESPONSE"}, + {BT_TDS_READ_TRANSPORT_DATA, "BT_TDS_READ_TRANSPORT_DATA"}, + {BT_TDS_ENABLE_CONTROL_POINT, "BT_TDS_ENABLE_CONTROL_POINT"}, + {BT_TDS_ACTIVATE_CONTROL_POINT, "BT_TDS_ACTIVATE_CONTROL_POINT"}, + {-1, ""}, + }; + + for (i = 0; bt_functions[i].function != -1; i++) { + if (bt_functions[i].function == function) + return bt_functions[i].function_name; + } + + return NULL; +} + void _bt_logging_connection(gboolean connect, int addr_type) { static int le_conn = 0;