static CAErrorHandleCallback g_errorHandler = NULL;
#ifdef __WITH_DTLS__
-static void CALESecureReceiveDataCB(const CASecureEndpoint_t *endpoint,
+static CAResult_t CALESecureReceiveDataCB(const CASecureEndpoint_t *endpoint,
const void *data, size_t dataLength);
static ssize_t CALESecureSendDataCB(CAEndpoint_t *endpoint,
"CAGenerateVariableForFragmentation failed, result [%d]", result);
if (g_errorHandler)
{
- g_errorHandler(bleData->remoteEndpoint, bleData->data, bleData->dataLen, result);
- }
+ g_errorHandler(bleData->remoteEndpoint, bleData->data, bleData->dataLen, result);
+ }
return;
}
CALEADAPTER_TAG,
"CALEClientSendNegotiationMessage has failed, result [%d]",
res);
- if (g_errorHandler)
+ if (g_errorHandler)
{
g_errorHandler(bleData->remoteEndpoint,
bleData->data,
CALEADAPTER_TAG,
"Update characteristics failed, result [%d]",
result);
- if (g_errorHandler)
+ if (g_errorHandler)
{
g_errorHandler(bleData->remoteEndpoint, bleData->data, bleData->dataLen, result);
}
return ret;
}
-void CALESecureReceiveDataCB(const CASecureEndpoint_t *sep, const void *data,
+CAResult_t CALESecureReceiveDataCB(const CASecureEndpoint_t *sep, const void *data,
size_t dataLen)
{
OIC_LOG_V(DEBUG, CALEADAPTER_TAG, "%s", __func__);
- VERIFY_NON_NULL_VOID(sep, CALEADAPTER_TAG, "sep is NULL");
- VERIFY_NON_NULL_VOID(data, CALEADAPTER_TAG, "data is NULL");
+ VERIFY_NON_NULL(sep, CALEADAPTER_TAG, "sep is NULL");
+ VERIFY_NON_NULL(data, CALEADAPTER_TAG, "data is NULL");
OIC_LOG_V(DEBUG, CALEADAPTER_TAG,
"Secure Data Receive - decrypted datalen = %d", dataLen);
if (dataLen <= 0)
{
OIC_LOG(ERROR, CALEADAPTER_TAG, "incorrect dataLen, derecypt fail !");
- return;
+ return CA_STATUS_INVALID_PARAM;
}
OIC_LOG_BUFFER(DEBUG, CALEADAPTER_TAG, data, dataLen);
+ CAResult_t res = CA_STATUS_OK;
if (g_networkPacketReceivedCallback)
{
OIC_LOG_V(DEBUG, CALEADAPTER_TAG,
sep->endpoint.flags, sep->endpoint.flags);
OIC_LOG(DEBUG, CALEADAPTER_TAG,
"[CALESecureReceiveDataCB] Received data up !");
- g_networkPacketReceivedCallback(sep, data, dataLen);
+ res = g_networkPacketReceivedCallback(sep, data, dataLen);
+ if (CA_STATUS_OK != res)
+ {
+ OIC_LOG_V(ERROR, CALEADAPTER_TAG, "Error parsing CoAP data, res = %d", res);
+ }
}
+ return res;
}
#endif
g_dataType = dataType;
oc_mutex_unlock(g_bleIsServerMutex);
- result = CAencryptSsl(endpoint, data, dataLen);
+ result = CAencryptSsl(endpoint, (void *)data, dataLen);
if (CA_STATUS_OK != result)
{
OIC_LOG(ERROR, CALEADAPTER_TAG, "caadapternetdtlsencrypt failed!");
g_dataType = dataType;
oc_mutex_unlock(g_bleIsServerMutex);
- result = CAencryptSsl(endpoint, data, dataLen);
+ result = CAencryptSsl(endpoint, (void *)data, dataLen);
if (CA_STATUS_OK != result)
{
OIC_LOG(ERROR, CALEADAPTER_TAG, "caadapternetdtlsencrypt failed!");