#include <stdint.h>
#include "caadapterutils.h"
-#include "camutex.h"
+#include "octhread.h"
#include "uarraylist.h"
#include "logger.h"
#include "oic_malloc.h"
#endif
#ifdef RA_ADAPTER_IBB
+#define SET_BUT_NOT_USED(x) (void) x
/**
* Logging tag for module name.
*/
-#define RA_ADAPTER_TAG "RA_ADAP_IBB"
+#define RA_ADAPTER_TAG "OIC_RA_ADAP_IBB"
/**
* Network Packet Received Callback to CA.
/**
* Network Changed Callback to CA.
*/
-static CANetworkChangeCallback g_networkChangeCallback = NULL;
+static CAAdapterChangeCallback g_networkChangeCallback = NULL;
/**
* Holds XMPP data information.
{
xmpp_t *xmpp;
int port;
- char hostname[RA_MAX_HOSTNAME_LENGTH];
+ char hostName[RA_MAX_HOSTNAME_LENGTH];
char password[RA_MAX_PASSWORD_LENGTH];
char jid[CA_RAJABBERID_SIZE];
- CANetworkStatus_t connection_status;
+ CANetworkStatus_t connectionStatus;
+ CAJidBoundCallback jidBoundCallback;
} CARAXmppData_t;
-static ca_mutex g_raadapterMutex = NULL;
+static oc_mutex g_raadapterMutex = NULL;
-static CARAXmppData_t g_xmppData = {.xmpp = NULL, .port = 5222, .hostname = {0},
- .password = {0}, .jid = {0}, .connection_status = CA_INTERFACE_DOWN};
+static CARAXmppData_t g_xmppData = {.xmpp = NULL, .port = 5222, .hostName = {0},
+ .password = {0}, .jid = {0}, .connectionStatus = CA_INTERFACE_DOWN,
+ .jidBoundCallback = NULL};
static void CARANotifyNetworkChange(const char *address, CANetworkStatus_t status);
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CARANotifyNetworkChange IN");
- g_xmppData.connection_status = status;
+ g_xmppData.connectionStatus = status;
- CAEndpoint_t *localEndpoint = CACreateEndpointObject(CA_DEFAULT_FLAGS,
- CA_ADAPTER_REMOTE_ACCESS,
- address, 0);
- if (!localEndpoint)
- {
- OIC_LOG(ERROR, RA_ADAPTER_TAG, "localEndpoint creation failed!");
- return;
- }
- CANetworkChangeCallback networkChangeCallback = g_networkChangeCallback;
+ CAAdapterChangeCallback networkChangeCallback = g_networkChangeCallback;
if (networkChangeCallback)
{
- networkChangeCallback(localEndpoint, status);
+ networkChangeCallback(CA_ADAPTER_REMOTE_ACCESS, status);
}
else
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "g_networkChangeCallback is NULL");
}
- CAFreeEndpoint(localEndpoint);
-
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CARANotifyNetworkChange OUT");
}
}
else if (option == OBSERVE_DEREGISTER)
{
- obs_item_t *item = ilist_finditem_func(g_observerList, CARAFindSessID, sid);
+ obs_item_t *item = ilist_finditem_func(g_observerList, (find_fp) CARAFindSessID, sid);
if (item != NULL)
{
item->option = OBSERVE_DEREGISTER;
}
}
-static int CARAGetReqObsOption(coap_pdu_t *pdu)
+static int CARAGetReqObsOption(coap_pdu_t *pdu, const CAEndpoint_t *endPoint)
{
uint32_t obsopt = -1;
CARequestInfo_t *reqInfo = (CARequestInfo_t *) OICMalloc(sizeof(*reqInfo));
VERIFY_NON_NULL_RET(reqInfo, RA_ADAPTER_TAG, "Memory alloc of CARequestInfo_t failed!", -1);
- CAResult_t result = CAGetRequestInfoFromPDU(pdu, reqInfo);
+ CAResult_t result = CAGetRequestInfoFromPDU(pdu, endPoint, reqInfo);
if (CA_STATUS_OK != result)
{
OICFree(reqInfo);
static int CARAErrorCB(xmpp_ibb_session_t *sess, xmpperror_t *xerr)
{
- OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "%s(): code(%d) tyep'%s' mesg'%s'",
+ OIC_LOG_V(ERROR, RA_ADAPTER_TAG, "%s(): code(%d) tyep'%s' mesg'%s'",
__FUNCTION__, xerr->code, xerr->type, xerr->mesg);
+ SET_BUT_NOT_USED(sess);
+ SET_BUT_NOT_USED(xerr);
return 0;
}
static int CARAOpenCB(xmpp_ibb_session_t *sess, char *type)
{
OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "%s(): set type '%s'", __FUNCTION__, type);
+ SET_BUT_NOT_USED(sess);
+ SET_BUT_NOT_USED(type);
return 0;
}
{
OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "%s(): set type '%s'", __FUNCTION__, type);
char *sid = xmpp_ibb_get_sid(sess);
- obs_item_t *item = ilist_finditem_func(g_observerList, CARAFindSessID, sid);
+ obs_item_t *item = ilist_finditem_func(g_observerList, (find_fp) CARAFindSessID, sid);
if (item != NULL)
{
ilist_remove(g_observerList, item);
OICFree(item);
}
+ SET_BUT_NOT_USED(type);
return 0;
}
return -1;
}
uint32_t code = CA_NOT_FOUND;
- coap_pdu_t *pdu = (coap_pdu_t *) CAParsePDU(xdata->data, xdata->size, &code);
+ coap_pdu_t *pdu = (coap_pdu_t *) CAParsePDU(xdata->data, xdata->size, &code,
+ endPoint);
char *sid = CARAGetSIDFromPDU(pdu);
- int obsopt = CARAGetReqObsOption(pdu);
+ int obsopt = CARAGetReqObsOption(pdu, endPoint);
coap_delete_pdu(pdu);
if (CARAPDUIsRequest(code))
else
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "this is a response data");
- obs_item_t *item = ilist_finditem_func(g_observerList, CARAFindSessID, sid);
+ obs_item_t *item = ilist_finditem_func(g_observerList, (find_fp) CARAFindSessID, sid);
if (item != NULL)
{
if (item->option == OBSERVE_DEREGISTER)
return -1;
}
memcpy(buf, xdata->data, xdata->size);
- g_networkPacketCallback(endPoint, buf, xdata->size);
+ CASecureEndpoint_t sep =
+ {.endpoint = {.adapter = CA_ADAPTER_IP, .flags = CA_DEFAULT_FLAGS}};
+ memcpy(&sep.endpoint, endPoint, sizeof(sep.endpoint));
+ g_networkPacketCallback(&sep, buf, xdata->size);
CAFreeEndpoint (endPoint);
}
{
if (conninfo->connevent != 0)
{
- OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, " status(%d) error(%d) errorType(%d) errorText '%s'\n",
+ OIC_LOG_V(ERROR, RA_ADAPTER_TAG, " status(%d) error(%d) errorType(%d) errorText '%s'\n",
conninfo->connevent, conninfo->error, conninfo->errortype,
conninfo->errortext);
CARANotifyNetworkChange(g_xmppData.jid, CA_INTERFACE_DOWN);
return -1;
}
- OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "\n\n Bound JID: '%s'\n\n\n", xmpphelper_get_bound_jid(xmpp));
+ OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "Bound JID: '%s'", xmpphelper_get_bound_jid(xmpp));
+ if (g_xmppData.jidBoundCallback != NULL)
+ {
+ g_xmppData.jidBoundCallback((char *) xmpphelper_get_bound_jid(xmpp));
+ }
CARANotifyNetworkChange(xmpphelper_get_bound_jid(xmpp), CA_INTERFACE_UP);
+ VERIFY_NON_NULL_RET(udata, RA_ADAPTER_TAG, "Invalid parameter!", 0);
return 0;
}
CAResult_t CAInitializeRA(CARegisterConnectivityCallback registerCallback,
- CANetworkPacketReceivedCallback networkPacketCallback,
- CANetworkChangeCallback netCallback, ca_thread_pool_t handle)
+ CANetworkPacketReceivedCallback networkPacketCallback,
+ CAAdapterChangeCallback netCallback, ca_thread_pool_t handle)
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CAInitializeRA IN");
if (!registerCallback || !networkPacketCallback || !netCallback || !handle)
CAConnectivityHandler_t raHandler = {
.startAdapter = CAStartRA,
+ .stopAdapter = CAStopRA,
.startListenServer = CAStartRAListeningServer,
.startDiscoveryServer = CAStartRADiscoveryServer,
.sendData = CASendRAUnicastData,
.sendDataToAll = CASendRAMulticastData,
.GetnetInfo = CAGetRAInterfaceInformation,
.readData = CAReadRAData,
- .stopAdapter = CAStopRA,
- .terminate = CATerminateRA};
- registerCallback(raHandler, CA_ADAPTER_REMOTE_ACCESS);
+ .terminate = CATerminateRA,
+ .cType = CA_ADAPTER_REMOTE_ACCESS};
- g_xmppData.xmpp = xmpphelper_new(CARAConnHandler, NULL);
+ registerCallback(raHandler);
+#ifdef NDEBUG
+ xmpp_log_t *log = xmpp_get_default_logger(XMPP_LEVEL_ERROR);
+#else
+ xmpp_log_t *log = xmpp_get_default_logger(XMPP_LEVEL_DEBUG);
+#endif
+ g_xmppData.xmpp = xmpphelper_new(CARAConnHandler, NULL, log, NULL);
xmpphelper_force_tls(g_xmppData.xmpp);
g_observerList = ilist_new();
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Invalid parameter!");
return CA_STATUS_INVALID_PARAM;
}
- if (caraInfo->hostname != NULL)
+ if (caraInfo->hostName != NULL)
{
- OICStrcpy(g_xmppData.hostname, sizeof(g_xmppData.hostname), caraInfo->hostname);
+ OICStrcpy(g_xmppData.hostName, sizeof(g_xmppData.hostName), caraInfo->hostName);
}
else
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Invalid parameter!");
return CA_STATUS_INVALID_PARAM;
}
- if (caraInfo->username != NULL && strlen(caraInfo->username) != 0)
+ if (caraInfo->userName != NULL && strlen(caraInfo->userName) != 0)
{
- OICStrcpy(g_xmppData.jid, sizeof(g_xmppData.jid), caraInfo->username);
+ OICStrcpy(g_xmppData.jid, sizeof(g_xmppData.jid), caraInfo->userName);
}
else
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Invalid parameter!");
return CA_STATUS_INVALID_PARAM;
}
- if (caraInfo->xmpp_domain != NULL && strlen(caraInfo->xmpp_domain) != 0)
+ if (caraInfo->xmppDomain != NULL && strlen(caraInfo->xmppDomain) != 0)
{
OICStrcat(g_xmppData.jid, sizeof(g_xmppData.jid), "@");
- OICStrcat(g_xmppData.jid, sizeof(g_xmppData.jid), caraInfo->xmpp_domain);
+ OICStrcat(g_xmppData.jid, sizeof(g_xmppData.jid), caraInfo->xmppDomain);
if (caraInfo->resource != NULL && strlen(caraInfo->resource) != 0)
{
OICStrcat(g_xmppData.jid, sizeof(g_xmppData.jid), "/");
OICStrcpy(g_xmppData.password, sizeof(g_xmppData.password), caraInfo->password);
}
g_xmppData.port = caraInfo->port;
+ g_xmppData.jidBoundCallback = caraInfo->jidBoundCallback;
return CA_STATUS_OK;
}
return CA_STATUS_FAILED;
}
- g_raadapterMutex = ca_mutex_new ();
+ g_raadapterMutex = oc_mutex_new ();
if (!g_raadapterMutex)
{
OIC_LOG (ERROR, RA_ADAPTER_TAG, PCF("Memory allocation for mutex failed."));
return CA_MEMORY_ALLOC_FAILED;
}
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
- xmpphelper_connect(g_xmppData.xmpp, g_xmppData.hostname, g_xmppData.port,
+ xmpphelper_connect(g_xmppData.xmpp, g_xmppData.hostName, g_xmppData.port,
g_xmppData.jid, g_xmppData.password);
xmpp_ibb_reg_funcs_t regfuncs;
regfuncs.open_cb = CARAOpenCB;
xmpphelper_run(g_xmppData.xmpp);
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "RA adapter started succesfully");
return CA_STATUS_OK;
xmpp_ibb_unregister(xmpphelper_get_conn(g_xmppData.xmpp));
if (!g_raadapterMutex)
{
- ca_mutex_free (g_raadapterMutex);
+ oc_mutex_free (g_raadapterMutex);
g_raadapterMutex = NULL;
}
OIC_LOG(DEBUG, RA_ADAPTER_TAG, PCF("Stopped RA adapter successfully"));
}
int32_t CASendRAUnicastData(const CAEndpoint_t *remoteEndpoint, const void *data,
- uint32_t dataLength)
+ uint32_t dataLength, CADataType_t dataType)
{
+ SET_BUT_NOT_USED(dataType);
+
if (!remoteEndpoint || !data)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Invalid parameter!");
OIC_LOG_V(DEBUG, RA_ADAPTER_TAG, "Sending unicast data to %s", remoteEndpoint->addr);
uint32_t code = CA_NOT_FOUND;
- coap_pdu_t *pdu = (coap_pdu_t *) CAParsePDU(data, dataLength, &code);
+ coap_pdu_t *pdu = (coap_pdu_t *) CAParsePDU(data, dataLength, &code, remoteEndpoint);
char *sid = CARAGetSIDFromPDU(pdu);
- int obsopt = CARAGetReqObsOption(pdu);
+ int obsopt = CARAGetReqObsOption(pdu, remoteEndpoint);
coap_delete_pdu(pdu);
- ca_mutex_lock (g_raadapterMutex);
- if (CA_INTERFACE_UP != g_xmppData.connection_status)
+ oc_mutex_lock (g_raadapterMutex);
+ if (CA_INTERFACE_UP != g_xmppData.connectionStatus)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Unable to send XMPP message, RA not connected");
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
return -1;
}
xmpp_ibb_session_t *sess = xmpp_ibb_get_session_by_sid(sid);
if (sess == NULL)
{
- sess = xmpp_ibb_open(xmpphelper_get_conn(g_xmppData.xmpp), remoteEndpoint->addr, sid);
+ sess = xmpp_ibb_open(xmpphelper_get_conn(g_xmppData.xmpp), (char * const) remoteEndpoint->addr, sid);
if (sess == NULL)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "IBB session establish failed!");
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
return -1;
}
}
CARAUpdateObsList(obsopt, sid);
}
}
- xmppdata_t xdata = {.data = data, .size = dataLength};
+ xmppdata_t xdata = {.data = (char *) data, .size = dataLength};
int rc = xmpp_ibb_send_data(sess, &xdata);
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
if (rc < 0)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "IBB send data failed!");
}
int32_t CASendRAMulticastData(const CAEndpoint_t *endpoint,
- const void *data, uint32_t dataLength)
+ const void *data, uint32_t dataLength,
+ CADataType_t dataType)
{
OIC_LOG(INFO, RA_ADAPTER_TAG, "RA adapter does not support sending multicast data");
+ SET_BUT_NOT_USED(endpoint);
+ SET_BUT_NOT_USED(data);
+ SET_BUT_NOT_USED(dataLength);
+ SET_BUT_NOT_USED(dataType);
return 0;
}
/**
* Network Changed Callback to CA.
*/
-static CANetworkChangeCallback g_networkChangeCallback = NULL;
+static CAAdapterChangeCallback g_networkChangeCallback = NULL;
/**
* Holds XMPP data information.
char jabberID[CA_RAJABBERID_SIZE];
} CARAXmppData_t;
-static ca_mutex g_raadapterMutex = NULL;
+static oc_mutex g_raadapterMutex = NULL;
static CARAXmppData_t g_xmppData = {};
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CARANotifyNetworkChange IN");
- CAEndpoint_t *localEndpoint = CACreateEndpointObject(CA_DEFAULT_FLAGS,
- CA_ADAPTER_REMOTE_ACCESS,
- address, 0);
- if (!localEndpoint)
- {
- OIC_LOG(ERROR, RA_ADAPTER_TAG, "localEndpoint creation failed!");
- return;
- }
- CANetworkChangeCallback networkChangeCallback = g_networkChangeCallback;
+ CAAdapterChangeCallback networkChangeCallback = g_networkChangeCallback;
if (networkChangeCallback)
{
- networkChangeCallback(localEndpoint, status);
+ networkChangeCallback(CA_ADAPTER_REMOTE_ACCESS, status);
}
else
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "g_networkChangeCallback is NULL");
}
- CAFreeEndpoint(localEndpoint);
-
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CARANotifyNetworkChange OUT");
}
{
printf("\n\n\t\t===>your jid: %s\n\n", bound_jid);
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
OICStrcpy (g_xmppData.jabberID, CA_RAJABBERID_SIZE, bound_jid);
g_xmppData.connection_status = CA_INTERFACE_UP;
OIC_LOG_V(ERROR, RA_ADAPTER_TAG, "XMPP connected callback status: %d", result);
}
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
// Notify network change to CA
CARANotifyNetworkChange(bound_jid, connection_status);
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CARAXmppDisonnectedCB IN");
char jabberID[CA_RAJABBERID_SIZE];
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
g_xmppData.connection_status = CA_INTERFACE_DOWN;
xmpp_message_context_destroy(g_xmppData.message_context);
OICStrcpy (jabberID, CA_RAJABBERID_SIZE, g_xmppData.jabberID);
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
// Notify network change to CA
CARANotifyNetworkChange(jabberID, CA_INTERFACE_DOWN);
}
CAResult_t CAInitializeRA(CARegisterConnectivityCallback registerCallback,
- CANetworkPacketReceivedCallback networkPacketCallback,
- CANetworkChangeCallback netCallback, ca_thread_pool_t handle)
+ CANetworkPacketReceivedCallback networkPacketCallback,
+ CAAdapterChangeCallback netCallback, ca_thread_pool_t handle)
{
OIC_LOG(DEBUG, RA_ADAPTER_TAG, "CAInitializeRA IN");
if (!registerCallback || !networkPacketCallback || !netCallback || !handle)
g_networkChangeCallback = netCallback;
g_networkPacketCallback = networkPacketCallback;
- CAConnectivityHandler_t raHandler = {};
- raHandler.startAdapter = CAStartRA;
- raHandler.startListenServer = CAStartRAListeningServer;
- raHandler.startDiscoveryServer = CAStartRADiscoveryServer;
- raHandler.sendData = CASendRAUnicastData;
- raHandler.sendDataToAll = CASendRAMulticastData;
- raHandler.GetnetInfo = CAGetRAInterfaceInformation;
- raHandler.readData = CAReadRAData;
- raHandler.stopAdapter = CAStopRA;
- raHandler.terminate = CATerminateRA;
- registerCallback(raHandler, CA_ADAPTER_REMOTE_ACCESS);
+ CAConnectivityHandler_t raHandler = {
+ .startAdapter = CAStartRA,
+ .stopAdapter = CAStopRA,
+ .startListenServer = CAStartRAListeningServer,
+ .stopListenServer = CAStopRAListeningServer,
+ .startDiscoveryServer = CAStartRADiscoveryServer,
+ .sendData = CASendRAUnicastData,
+ .sendDataToAll = CASendRAMulticastData,
+ .GetnetInfo = CAGetRAInterfaceInformation,
+ .readData = CAReadRAData,
+ .terminate = CATerminateRA,
+ .cType = CA_ADAPTER_REMOTE_ACCESS};
+ registerCallback(raHandler);
return CA_STATUS_OK;
}
OIC_LOG(DEBUG, RA_ADAPTER_TAG, PCF("Starting RA adapter"));
- g_raadapterMutex = ca_mutex_new ();
+ g_raadapterMutex = oc_mutex_new ();
if (!g_raadapterMutex)
{
OIC_LOG (ERROR, RA_ADAPTER_TAG, PCF("Memory allocation for mutex failed."));
return CA_MEMORY_ALLOC_FAILED;
}
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
xmpp_context_init(&g_xmppData.context);
g_xmppData.handle = xmpp_startup(&g_xmppData.context);
xmpp_identity_destroy(&g_xmppData.g_identity);
xmpp_host_destroy(&g_xmppData.g_host);
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
if (XMPP_ERR_OK != ret)
{
xmpp_shutdown_xmpp(g_xmppData.handle);
xmpp_context_destroy(&g_xmppData.context);
- ca_mutex_free (g_raadapterMutex);
+ oc_mutex_free (g_raadapterMutex);
g_raadapterMutex = NULL;
OIC_LOG(DEBUG, RA_ADAPTER_TAG, PCF("Stopped RA adapter successfully"));
}
int32_t CASendRAUnicastData(const CAEndpoint_t *remoteEndpoint, const void *data,
- uint32_t dataLength)
+ uint32_t dataLength, CADataType_t dataType)
{
+ (void)dataType;
if (!remoteEndpoint || !data)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Invalid parameter!");
}
OIC_LOG_V(ERROR, RA_ADAPTER_TAG, "Sending unicast data to %s", remoteEndpoint->addr);
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
if (CA_INTERFACE_UP != g_xmppData.connection_status)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Unable to send XMPP message, RA not connected");
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
return -1;
}
if (XMPP_ERR_OK != res)
{
OIC_LOG_V(ERROR, RA_ADAPTER_TAG, "Unable to send XMPP message, status: %d", res);
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
return -1;
}
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
OIC_LOG_V(INFO, RA_ADAPTER_TAG, "Successfully dispatched bytes[%d] to addr[%s]",
dataLength, remoteEndpoint->addr);
VERIFY_NON_NULL(info, RA_ADAPTER_TAG, "info is NULL");
VERIFY_NON_NULL(size, RA_ADAPTER_TAG, "size is NULL");
- ca_mutex_lock (g_raadapterMutex);
+ oc_mutex_lock (g_raadapterMutex);
if (CA_INTERFACE_UP != g_xmppData.connection_status)
{
OIC_LOG(ERROR, RA_ADAPTER_TAG, "Failed to get interface info, RA not Connected");
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
return CA_ADAPTER_NOT_ENABLED;
}
- ca_mutex_unlock (g_raadapterMutex);
+ oc_mutex_unlock (g_raadapterMutex);
CAEndpoint_t *localEndpoint = CACreateEndpointObject(CA_DEFAULT_FLAGS,
CA_ADAPTER_REMOTE_ACCESS,
}
int32_t CASendRAMulticastData(const CAEndpoint_t *endpoint,
- const void *data, uint32_t dataLength)
+ const void *data, uint32_t dataLength,
+ CADataType_t dataType)
{
OIC_LOG(INFO, RA_ADAPTER_TAG, "RA adapter does not support sending multicast data");
return 0;
return CA_NOT_SUPPORTED;
}
+CAResult_t CAStopRAListeningServer()
+{
+ OIC_LOG(INFO, RA_ADAPTER_TAG, "RA adapter does not support listening for multicast data");
+ return CA_NOT_SUPPORTED;
+}
+
CAResult_t CAStartRADiscoveryServer()
{
OIC_LOG(INFO, RA_ADAPTER_TAG, "RA adapter does not support discovery of multicast servers");