while (device->pendingDataList)
{
EDRData *edrData = device->pendingDataList->data;
- res = CAEDRSendData(device->socketFD, edrData->data,
- edrData->dataLength);
+ res = CAEDRSendData(device->socketFD, device->remoteAddress,
+ edrData->data, edrData->dataLength);
if (CA_STATUS_OK != res)
{
OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "Failed to send pending data [%s]",
}
else
{
- result = CAEDRSendData(device->socketFD, data, dataLength);
+ result = CAEDRSendData(device->socketFD, device->remoteAddress, data, dataLength);
if (CA_STATUS_OK != result)
{
OIC_LOG(ERROR, EDR_ADAPTER_TAG, "Failed to send data!");
}
else
{
- result = CAEDRSendData(device->socketFD, data, dataLength);
+ result = CAEDRSendData(device->socketFD, device->remoteAddress ,data, dataLength);
if (CA_STATUS_OK != result)
{
OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "Failed to send data to [%s] !",
#include "caedrutils.h"
#include "logger.h"
-CAResult_t CAEDRSendData(int serverFD, const void *data, uint32_t dataLength)
+CAResult_t CAEDRSendData(int serverFD, const char *addr, const void *data, uint32_t dataLength)
{
OIC_LOG(DEBUG, EDR_ADAPTER_TAG, "IN");
VERIFY_NON_NULL(data, EDR_ADAPTER_TAG, "Data is null");
+ VERIFY_NON_NULL(addr, EDR_ADAPTER_TAG, "Addr is null");
if (0 > serverFD)
{
}
int dataLen = bt_socket_send_data(serverFD, (const char *)data, dataLength);
- if (dataLen == -1)
+ int errcode = get_last_result();
+
+ if (TIZEN_ERROR_NONE == errcode)
{
- OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "sending data failed!, soketid [%d]", serverFD);
- return CA_SOCKET_OPERATION_FAILED;
+ CALogSendStateInfo(CA_ADAPTER_RFCOMM_BTEDR, addr, 0, dataLength, true, NULL);
}
- else if (dataLen == 0)
+ else
{
- OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "soketid [%d] may be disconnected?", serverFD);
+ if (dataLen == -1)
+ {
+ OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "sending data failed!, soketid [%d] errmsg [%s]",
+ serverFD, get_error_message(errcode));
+ }
+ else if (dataLen == 0)
+ {
+ OIC_LOG_V(ERROR, EDR_ADAPTER_TAG, "soketid [%d] may be disconnected? errmsg [%s]",
+ serverFD, get_error_message(errcode));
+ }
+
+ CALogSendStateInfo(CA_ADAPTER_RFCOMM_BTEDR, addr, 0, dataLength,
+ false, get_error_message(errcode));
+
return CA_SOCKET_OPERATION_FAILED;
}
#define CA_EDR_ENDPOINT_H_
#include <bluetooth.h>
-
+#include <tizen.h>
#include "cacommon.h"
#ifdef __cplusplus
* @retval ::CA_STATUS_INVALID_PARAM Invalid input arguments.
* @retval ::CA_STATUS_FAILED Operation failed.
*/
-CAResult_t CAEDRSendData(int serverFD, const void *data, uint32_t dataLength);
+CAResult_t CAEDRSendData(int serverFD, const char *addr, const void *data, uint32_t dataLength);
#ifdef __cplusplus
} /* extern "C" */