X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=resource%2Fcsdk%2Fconnectivity%2Fsrc%2Fadapter_util%2Fcaadapterutils.c;h=be740981099e079aa2284cce91fae09156dff93d;hb=3c093548382bb2542c87a67e6e5fa32552c29cb3;hp=83558865fe464b62b61add57f368769a215993dd;hpb=edcfc3d2329da7b914771c0dcff5f42c9b74fd93;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/connectivity/src/adapter_util/caadapterutils.c b/resource/csdk/connectivity/src/adapter_util/caadapterutils.c index 8355886..be74098 100644 --- a/resource/csdk/connectivity/src/adapter_util/caadapterutils.c +++ b/resource/csdk/connectivity/src/adapter_util/caadapterutils.c @@ -185,6 +185,10 @@ void CAConvertNameToAddr(const char *host, uint16_t port, struct sockaddr_storag int r = getaddrinfo(host, NULL, &hints, &addrs); if (r) { + if (NULL != addrs) + { + freeaddrinfo(addrs); + } #if defined(EAI_SYSTEM) if (EAI_SYSTEM == r) { @@ -296,6 +300,7 @@ jmethodID CAGetJNIMethodID(JNIEnv *env, const char* className, if (!jni_cid) { OIC_LOG_V(ERROR, CA_ADAPTER_UTILS_TAG, "jni_cid [%s] is null", className); + CACheckJNIException(env); return NULL; } @@ -303,6 +308,7 @@ jmethodID CAGetJNIMethodID(JNIEnv *env, const char* className, if (!jni_midID) { OIC_LOG_V(ERROR, CA_ADAPTER_UTILS_TAG, "jni_midID [%s] is null", methodName); + CACheckJNIException(env); (*env)->DeleteLocalRef(env, jni_cid); return NULL; } @@ -311,6 +317,17 @@ jmethodID CAGetJNIMethodID(JNIEnv *env, const char* className, return jni_midID; } +bool CACheckJNIException(JNIEnv *env) +{ + if ((*env)->ExceptionCheck(env)) + { + (*env)->ExceptionDescribe(env); + (*env)->ExceptionClear(env); + return true; + } + return false; +} + void CADeleteGlobalReferences(JNIEnv *env) { if (g_Context) @@ -326,3 +343,75 @@ void CADeleteGlobalReferences(JNIEnv *env) } } #endif + +#ifndef WITH_ARDUINO +void CALogAdapterStateInfo(CATransportAdapter_t adapter, CANetworkStatus_t state) +{ + OIC_LOG(DEBUG, CA_ADAPTER_UTILS_TAG, "CALogAdapterStateInfo"); + OIC_LOG(DEBUG, ANALYZER_TAG, "================================================="); + CALogAdapterTypeInfo(adapter); + if (CA_INTERFACE_UP == state) + { + OIC_LOG(INFO, ANALYZER_TAG, "adapter status is changed to CA_INTERFACE_UP"); + } + else + { + OIC_LOG(INFO, ANALYZER_TAG, "adapter status is changed to CA_INTERFACE_DOWN"); + } + OIC_LOG(DEBUG, ANALYZER_TAG, "================================================="); +} + +void CALogSendStateInfo(CATransportAdapter_t adapter, + const char *addr, uint16_t port, ssize_t sentLen, + bool isSuccess, const char* message) +{ + OIC_LOG(DEBUG, CA_ADAPTER_UTILS_TAG, "CALogSendStateInfo"); + OIC_LOG(DEBUG, ANALYZER_TAG, "================================================="); + + if (true == isSuccess) + { + OIC_LOG_V(INFO, ANALYZER_TAG, "Send Success, sent length = [%d]", sentLen); + } + else + { + OIC_LOG_V(INFO, ANALYZER_TAG, "Send Failure, error message = [%s]", + message != NULL ? message : "no message"); + } + + CALogAdapterTypeInfo(adapter); + OIC_LOG_V(INFO, ANALYZER_TAG, "Address = [%s]:[%d]", addr, port); + OIC_LOG(DEBUG, ANALYZER_TAG, "================================================="); + + // samsung log + if (true == isSuccess) + { + OIC_LOG_V(INFO, CA_ADAPTER_UTILS_TAG, "| Analyzer(Retail) | %02x", 1); + } + else + { + OIC_LOG_V(INFO, CA_ADAPTER_UTILS_TAG, "| Analyzer(Retail) | %02x", 0); + } +} + +void CALogAdapterTypeInfo(CATransportAdapter_t adapter) +{ + switch(adapter) + { + case CA_ADAPTER_IP: + OIC_LOG(INFO, ANALYZER_TAG, "Transport Type = [OC_ADAPTER_IP]"); + break; + case CA_ADAPTER_TCP: + OIC_LOG(INFO, ANALYZER_TAG, "Transport Type = [OC_ADAPTER_TCP]"); + break; + case CA_ADAPTER_GATT_BTLE: + OIC_LOG(INFO, ANALYZER_TAG, "Transport Type = [OC_ADAPTER_GATT_BTLE]"); + break; + case CA_ADAPTER_RFCOMM_BTEDR: + OIC_LOG(INFO, ANALYZER_TAG, "Transport Type = [OC_ADAPTER_RFCOMM_BTEDR]"); + break; + default: + OIC_LOG_V(INFO, ANALYZER_TAG, "Transport Type = [%d]", adapter); + break; + } +} +#endif