From: DoHyun Pyun Date: Mon, 17 Dec 2018 07:13:39 +0000 (+0900) Subject: Revert "Fixes for scan in VD" X-Git-Tag: accepted/tizen/5.0/unified/20181217.142003^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F70%2F195670%2F1;p=platform%2Fupstream%2Fiotivity.git Revert "Fixes for scan in VD" This reverts commit 014180e0d5f6689cc38916f8301934b3eaf373ae. Change-Id: I93e04bb1fcf2f9deab56132ec01358a19a75e69d Signed-off-by: DoHyun Pyun --- diff --git a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient.h b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient.h index f3aac22..e967513 100644 --- a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient.h +++ b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient.h @@ -79,8 +79,6 @@ void CALEAdapterScanResultCb(int result, bt_adapter_le_device_scan_result_info_s */ void CAStartTimerThread(void *data); -void CALEClientScanThread(); - /** * Used to initialize all required mutex variable for Gatt Client implementation. * diff --git a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient_vd.c b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient_vd.c index 2e2ea1e..f8954d0 100644 --- a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient_vd.c +++ b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleclient_vd.c @@ -47,11 +47,9 @@ #define WAIT_TIME_WRITE_CHARACTERISTIC 10 * MICROSECS_PER_SEC //For custom uuid ble server -#define CA_GATT_CUSTOM_UUID "4209" -#define CA_GATT_CUSTOM_UUID2 "4204" -#define CUSTOM_UUID_LEN 4 - -static const int samsung_code = 117; +#define CA_GATT_CUSTOM_UUID "75004209-0000-0000-0000-000000000000" +#define CA_GATT_CUSTOM_UUID2 "75004204-0000-0000-0000-000000000000" +#define CUSTOM_UUID_LEN 9 uint64_t const TIMEOUT = 30 * MICROSECS_PER_SEC; @@ -185,6 +183,8 @@ static GMainLoop *g_eventLoop = NULL; */ static ca_thread_pool_t g_LEClientThreadPool = NULL; +CAResult_t CALEClientScanThread(); + void CALEGattCharacteristicChangedCb(bt_gatt_h characteristic, char *value, int valueLen, void *userData) @@ -312,7 +312,7 @@ void CALEGattConnectionStateChanged(bool connected, const char *remoteAddress) g_isConnectionInProgress = false; oc_mutex_unlock(g_isConnectionInProgressMutex); - + // TODO:Disabling scanning for now.Need to check. /*oc_mutex_lock(g_scanMutex); if (g_isMulticastInProgress || g_isUnicastScanInProgress) @@ -395,32 +395,6 @@ static bool CALEIsHaveServiceImpl(bt_adapter_le_device_scan_result_info_s *scanI } OICFree(uuids); } - - if(ret == false){ - char *man_data = NULL; - int man_data_len; - int man_id; - result = bt_adapter_le_get_scan_result_manufacturer_data(scanInfo, - pkt_type, &man_id, &man_data, &man_data_len); - - if (result == BT_ERROR_NONE && NULL != man_data) - { - char *compare_man_data = OICMalloc((man_data_len*2)+1); - int pos =0; - for(int i=0;iremote_address); - ret = true; - } - OICFree(compare_man_data); - OICFree(man_data); - } - } return ret; } @@ -463,20 +437,20 @@ void CALEAdapterScanResultCb(int result, bt_adapter_le_device_scan_result_info_s } oc_mutex_unlock(g_isScanningInProgressMutex); - if (CALEIsHaveService(scanInfo, CA_GATT_SERVICE_UUID) || - CALEIsHaveService(scanInfo, CA_GATT_CUSTOM_UUID)|| - CALEIsHaveService(scanInfo, CA_GATT_CUSTOM_UUID2)) + LEServerInfo *serverInfo = NULL; + oc_mutex_lock(g_LEServerListMutex); + CAResult_t ret = CAGetLEServerInfo(g_LEServerList, scanInfo->remote_address, &serverInfo); + if (CA_STATUS_OK != ret) { - OIC_LOG_V(DEBUG, TAG, "Device [%s] supports OIC or custom service", scanInfo->remote_address); - - LEServerInfo *serverInfo = NULL; - oc_mutex_lock(g_LEServerListMutex); - CAResult_t ret = CAGetLEServerInfo(g_LEServerList, scanInfo->remote_address, &serverInfo); - if (CA_STATUS_OK != ret) - { OIC_LOG_V(DEBUG, TAG, "Newly discovered device with address [%s] ", scanInfo->remote_address); + if (CALEIsHaveService(scanInfo, CA_GATT_SERVICE_UUID) || + CALEIsHaveService(scanInfo, CA_GATT_CUSTOM_UUID)|| + CALEIsHaveService(scanInfo, CA_GATT_CUSTOM_UUID2)) + { + OIC_LOG_V(DEBUG, TAG, "Device [%s] supports OIC or custom service", scanInfo->remote_address); + char *addr = OICStrdup(scanInfo->remote_address); if (NULL == addr) { @@ -502,34 +476,7 @@ void CALEAdapterScanResultCb(int result, bt_adapter_le_device_scan_result_info_s CAFreeLEServerInfo(serverInfo); return; } - }else { - OIC_LOG_V(DEBUG, TAG, - "Device Present with address [%s] ", scanInfo->remote_address); - - if(serverInfo->status == LE_STATUS_UNICAST_PENDING){ - bt_gatt_client_h clientHandle = NULL; - int32_t ret = bt_gatt_client_create(serverInfo->remoteAddress, &clientHandle); - if (BT_ERROR_NONE != ret || NULL == clientHandle) - { - OIC_LOG_V(ERROR, TAG, - "bt_gatt_client_create Failed with ret value [%s] ", CALEGetErrorMsg(ret)); - CALEGattDisConnect(serverInfo->remoteAddress); - oc_mutex_unlock(g_LEServerListMutex); - return ; - } - serverInfo->clientHandle = clientHandle; - - serverInfo->status = LE_STATUS_CONNECTION_INITIATED; - if (CA_STATUS_OK != CALEGattInitiateConnection(serverInfo->remoteAddress)) - { - OIC_LOG_V(ERROR, TAG, "Could not initiate connection to [%s]", serverInfo->remoteAddress); - serverInfo->status = LE_STATUS_DISCOVERED; - CADestroyLEDataList(&serverInfo->pendingDataList); - oc_mutex_unlock(g_LEServerListMutex); - return ; - } - } - } + } } oc_mutex_unlock(g_LEServerListMutex); OIC_LOG(DEBUG, TAG, "OUT"); @@ -622,7 +569,7 @@ CAResult_t CAStartLEGattClient() return CA_STATUS_OK; } -void CALEClientScanThread() +CAResult_t CALEClientScanThread() { oc_mutex_lock(g_scanMutex); if (!g_isMulticastInProgress && !g_isUnicastScanInProgress) @@ -632,7 +579,7 @@ void CALEClientScanThread() { oc_mutex_unlock(g_scanMutex); OIC_LOG(ERROR, TAG, "CALEGattStartDeviceScanning failed"); - return ; + return CA_STATUS_FAILED; } g_isUnicastScanInProgress = true; // Start Timer @@ -647,7 +594,7 @@ void CALEClientScanThread() oc_mutex_unlock(g_scanMutex); OIC_LOG(DEBUG, TAG, "OUT"); - return ; + return CA_STATUS_OK; } void CAStartTimerThread(void *data) @@ -1194,7 +1141,6 @@ exit: void CADiscoverLEServicesThread(void *remoteAddress) { OIC_LOG(DEBUG, TAG, "IN"); - VERIFY_NON_NULL_VOID(remoteAddress, TAG, "remote address is NULL"); char *address = (char *)remoteAddress; @@ -1337,32 +1283,6 @@ CAResult_t CAUpdateCharacteristicsToGattServer(const char *remoteAddress, "Device with address [%s] not yet found, initiating scan", remoteAddress); - char *addr = OICStrdup(remoteAddress); - if (NULL == addr) - { - oc_mutex_unlock(g_LEServerListMutex); - OIC_LOG(ERROR, TAG, "Device address is NULL"); - return CA_STATUS_FAILED; - } - serverInfo = (LEServerInfo *)OICCalloc(1, sizeof(LEServerInfo)); - if (NULL == serverInfo) - { - oc_mutex_unlock(g_LEServerListMutex); - OIC_LOG(ERROR, TAG, "Calloc failed"); - OICFree(addr); - return CA_STATUS_FAILED; - } - serverInfo->remoteAddress = addr; - serverInfo->status = LE_STATUS_UNICAST_PENDING; - - if (CA_STATUS_OK != CAAddLEServerInfoToList(&g_LEServerList, serverInfo)) - { - oc_mutex_unlock(g_LEServerListMutex); - OIC_LOG_V(ERROR, TAG, "Could not add [%s] to server list", remoteAddress); - CAFreeLEServerInfo(serverInfo); - return CA_STATUS_FAILED; - } - if (CA_STATUS_OK != CAAddLEDataToList(&serverInfo->pendingDataList, data, dataLen)) { oc_mutex_unlock(g_LEServerListMutex); @@ -1370,6 +1290,8 @@ CAResult_t CAUpdateCharacteristicsToGattServer(const char *remoteAddress, return CA_STATUS_FAILED; } + oc_mutex_unlock(g_LEServerListMutex); + oc_mutex_lock(g_scanMutex); if (!g_isMulticastInProgress && !g_isUnicastScanInProgress) { @@ -1392,6 +1314,8 @@ CAResult_t CAUpdateCharacteristicsToGattServer(const char *remoteAddress, } oc_mutex_unlock(g_scanMutex); + OIC_LOG(DEBUG, TAG, "OUT"); + return CA_STATUS_OK; } if (serverInfo->status == LE_STATUS_DISCOVERED) @@ -1402,7 +1326,7 @@ CAResult_t CAUpdateCharacteristicsToGattServer(const char *remoteAddress, OIC_LOG(ERROR, TAG, "Could not add data to pending list"); return CA_STATUS_FAILED; } - + bt_gatt_client_h clientHandle = NULL; int32_t ret = bt_gatt_client_create(serverInfo->remoteAddress, &clientHandle); if (BT_ERROR_NONE != ret || NULL == clientHandle) diff --git a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleserver_vd.c b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleserver_vd.c old mode 100644 new mode 100755 index f1a5f6e..6a52aedb --- a/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleserver_vd.c +++ b/resource/csdk/connectivity/src/bt_le_adapter/tizen/caleserver_vd.c @@ -859,6 +859,10 @@ CAResult_t CAAddNewCharacteristicsToGattServer(const bt_gatt_h svcPath, const ch if (read) { + g_gattReadCharPath = charPath; + } + else + { char desc_value[2] = {0, 0}; // Notification enabled. bt_gatt_h descriptor = NULL; permissions = BT_GATT_PERMISSION_READ | BT_GATT_PERMISSION_WRITE; @@ -883,9 +887,6 @@ CAResult_t CAAddNewCharacteristicsToGattServer(const bt_gatt_h svcPath, const ch CALEGetErrorMsg(ret)); return CA_STATUS_FAILED; } - g_gattReadCharPath = charPath; - } - else{ g_gattWriteCharPath = charPath; }