CAResult_t CAEDRClientConnect(const char *remoteAddress, const char *serviceUUID) { OIC_LOG(DEBUG, EDR_ADAPTER_TAG, "IN"); VERIFY_NON_NULL(remoteAddress, EDR_ADAPTER_TAG, "Remote address is null"); VERIFY_NON_NULL(serviceUUID, EDR_ADAPTER_TAG, "Service UUID is null"); size_t addressLen = strlen(remoteAddress); if (0 == addressLen || CA_MACADDR_SIZE - 1 != addressLen) { OIC_LOG(ERROR, EDR_ADAPTER_TAG, "Invalid input: Invalid remote address"); return CA_STATUS_INVALID_PARAM; } if (!serviceUUID[0]) { OIC_LOG(ERROR, EDR_ADAPTER_TAG, "Invalid input: Empty service uuid"); return CA_STATUS_INVALID_PARAM; } bt_error_e err = bt_socket_connect_rfcomm(remoteAddress, serviceUUID); if (BT_ERROR_NONE != err) { OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "Failed to connect!, address [%s] error num [%x]", remoteAddress, err); return CA_STATUS_FAILED; } OIC_LOG(DEBUG, EDR_ADAPTER_TAG, "OUT"); return CA_STATUS_OK; }
gboolean start_bt_service(void* data) { __COMMON_FUNC_ENTER__; char* start_address = (char*)data; int error, ret = 0; const char default_device_name[] = "Tizen-RHT"; const char *device_name = NULL; // gMainLoop = g_main_loop_new(NULL, FALSE); MIN_LOG("Remote Hotspot Trigger started\n"); device_name = default_device_name; bt_server_address = start_address; // Initialize bluetooth error = rhtf_initialize_bluetooth(device_name); if(error != 0) { ret = -2; return ret; // goto error_end_without_socket; } MIN_LOG("succeed in rhtf_initialize_bluetooth()\n"); ret = bt_socket_connect_rfcomm(bt_server_address, service_uuid); if(ret != BT_ERROR_NONE) { MIN_LOG("[%s] bt_socket_connect_rfcomm failed.", __FUNCTION__); return -50; } else { ALOGI("[%s] bt_socket_connect_rfcomm succeeded. bt_socket_connection_state_changed_cb will be called.", __FUNCTION__); } // If succeed to accept a connection, start a main loop. // g_main_loop_run(gMainLoop); ALOGI("Server is terminated successfully\n"); /*error_end_with_socket: // Finalized bluetooth rhtf_finalize_bluetooth_socket(); */ //error_end_without_socket: // rhtf_finalize_bluetooth(); __COMMON_FUNC_EXIT__; return ret; }