\r
mEnrolleeDeviceList.add(enrolledevice);\r
\r
+\r
// Starts the provisioning directly if the device is already on boarded on the network.\r
if (enrolledevice.onBoarded()) {\r
enrolledevice.startProvisioning(mProvisioningCallback);\r
\r
@Override\r
public void onFinished(EnrolleeDevice enrolledevice) {\r
- if (mEnrolleeDeviceList.contains(enrolledevice)) {\r
- Log.i(TAG, "onFinished() is received " + enrolledevice.isSetupSuccessful());\r
- mCallback.onFinished(enrolledevice);\r
- mEnrolleeDeviceList.remove(enrolledevice);\r
+ synchronized (EasySetupService.this) {\r
+ if (mEnrolleeDeviceList.contains(enrolledevice)) {\r
+ Log.i(TAG, "onFinished() is received " + enrolledevice.isSetupSuccessful());\r
+ mCallback.onFinished(enrolledevice);\r
+ mEnrolleeDeviceList.remove(enrolledevice);\r
+ }\r
}\r
}\r
\r
/**\r
* ***************************************************************\r
- * <p/>\r
+ * <p>\r
* Copyright 2015 Samsung Electronics All Rights Reserved.\r
- * <p/>\r
- * <p/>\r
- * <p/>\r
+ * <p>\r
+ * <p>\r
+ * <p>\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
* You may obtain a copy of the License at\r
- * <p/>\r
+ * <p>\r
* http://www.apache.org/licenses/LICENSE-2.0\r
- * <p/>\r
+ * <p>\r
* Unless required by applicable law or agreed to in writing, software\r
* distributed under the License is distributed on an "AS IS" BASIS,\r
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
* See the License for the specific language governing permissions and\r
* limitations under the License.\r
- * <p/>\r
+ * <p>\r
* ****************************************************************\r
*/\r
\r
\r
public class ProvisionEnrollee {\r
private static final String TAG = "ProvisionEnrollee";\r
- private EasySetupManager easySetupManagerNativeInstance = null;\r
private IProvisioningListener provisioningListener;\r
\r
/**\r
* Constructor for ProvisionEnrollee. Constructs a new ProvisionEnrollee.\r
*/\r
public ProvisionEnrollee(Context context) {\r
- }\r
\r
- @Override\r
- protected void finalize() throws Throwable {\r
- super.finalize();\r
- easySetupManagerNativeInstance.terminateEasySetup();\r
}\r
\r
public void provisionEnrollee(String ipAddress, String netSSID,\r
String netPWD, int connectivityType) {\r
Log.i(TAG, "JNI start provisioning is called ");\r
- easySetupManagerNativeInstance.provisionEnrollee(ipAddress, netSSID,\r
- netPWD, connectivityType);\r
}\r
\r
public void stopEnrolleeProvisioning(int connectivityType) {\r
Log.i(TAG, "JNI stop provisioning is called ");\r
- easySetupManagerNativeInstance\r
- .stopEnrolleeProvisioning(connectivityType);\r
}\r
\r
public void ProvisioningStatusCallBack(int statuscode) {\r
public class BLEManager {
private BluetoothAdapter mBluetoothAdapter;
- private boolean is_scanning;
private Context mcontext;
private Handler mHandler;
private static final long SCAN_PERIOD = 10000;
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
- is_scanning = false;
mBluetoothAdapter.stopLeScan(mLeScanCallback);
}
}, SCAN_PERIOD);
- is_scanning = true;
UUID[] uuids = {bleOnBoardingConfig.getUuid()};
mBluetoothAdapter.startLeScan(uuids, mLeScanCallback);
finishlistener = listener;
Method method = mWifiManager.getClass().getMethod("getWifiApState");
int currentWiFiState = ((Integer) method.invoke(mWifiManager));
-
- return WIFI_AP_STATE.class.getEnumConstants()[currentWiFiState];
+ WIFI_AP_STATE wifi_ap_state_enum[] = WIFI_AP_STATE.class.getEnumConstants();
+ if (wifi_ap_state_enum != null)
+ return wifi_ap_state_enum[currentWiFiState];
+ else return WIFI_AP_STATE.WIFI_AP_STATE_FAILED;
} catch (Exception e) {
Log.e(this.getClass().toString(), "", e);
return WIFI_AP_STATE.WIFI_AP_STATE_FAILED;
*/
static OCProvisioningStatusCB cbData = NULL;
-void ErrorCallback(ProvStatus status) {
+void ErrorCallback(ProvStatus status)
+{
ProvisioningInfo *provInfo = GetCallbackObjectOnError(status);
cbData(provInfo);
}
-OCStackResult InitProvisioningHandler() {
+OCStackResult InitProvisioningHandler()
+{
OCStackResult ret = OC_STACK_ERROR;
/* Initialize OCStack*/
- if (OCInit(NULL, 0, OC_CLIENT) != OC_STACK_OK) {
+ if (OCInit(NULL, 0, OC_CLIENT) != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack init error");
return ret;
}
-
char *string = "listeningFunc invoked in a thread";
pthread_t thread_handle;
- if (pthread_create(&thread_handle, NULL, listeningFunc, (void *) string)) {
+ if (pthread_create(&thread_handle, NULL, listeningFunc, (void *) string))
+ {
OIC_LOG(DEBUG, TAG, "Thread creation failed");
return OC_STACK_ERROR;
}
return OC_STACK_OK;
}
-OCStackResult TerminateProvisioningHandler() {
+OCStackResult TerminateProvisioningHandler()
+{
OCStackResult ret = OC_STACK_ERROR;
- if (OCStop() != OC_STACK_OK) {
+ if (OCStop() != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
g_provisioningCondFlag = true;
-
ret = OC_STACK_OK;
return ret;
}
-void *listeningFunc(void *data) {
- while (!g_provisioningCondFlag) {
+void *listeningFunc(void *data)
+{
+ while (!g_provisioningCondFlag)
+ {
OCStackResult result;
result = OCProcess();
- if (result != OC_STACK_OK) {
+ if (result != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
// To minimize CPU utilization we may wish to do this with sleep
sleep(1);
}
+ return NULL;
}
OCStackApplicationResult ProvisionEnrolleeResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
OIC_LOG_V(DEBUG, TAG, "INSIDE ProvisionEnrolleeResponse");
ProvisioningInfo *provInfo;
- if (!ValidateEnrolleResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateEnrolleResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
char *tnn;
char *cd;
- OCRepPayload *input = (OCRepPayload * )(clientResponse->payload);
+ OCRepPayload *input = (OCRepPayload *) (clientResponse->payload);
- while (input) {
+ while (input)
+ {
int64_t ps;
- if (OCRepPayloadGetPropInt(input, OC_RSRVD_ES_PS, &ps)) {
+ if (OCRepPayloadGetPropInt(input, OC_RSRVD_ES_PS, &ps))
+ {
- if (ps == 1) {
+ if (ps == 1)
+ {
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "PS is NOT proper");
goto Error;
}
}
- if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_TNN, &tnn)) {
- if (!strcmp(tnn, netProvInfo->netAddressInfo.WIFI.ssid)) {
+ if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_TNN, &tnn))
+ {
+ if (!strcmp(tnn, netProvInfo->netAddressInfo.WIFI.ssid))
+ {
OIC_LOG_V(DEBUG, TAG, "SSID is proper");
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "SSID is NOT proper");
goto Error;
}
}
- if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_CD, &cd)) {
- if (!strcmp(cd, netProvInfo->netAddressInfo.WIFI.pwd)) {
+ if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_CD, &cd))
+ {
+ if (!strcmp(cd, netProvInfo->netAddressInfo.WIFI.pwd))
+ {
OIC_LOG_V(DEBUG, TAG, "Password is proper");
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "Password is NOT proper");
goto Error;
}
Error:
{
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
}
OCStackResult ProvisionEnrollee(OCQualityOfService qos, const char *query, const char *resUri,
- OCDevAddr *destination) {
+ OCDevAddr *destination)
+{
OIC_LOG_V(INFO, TAG, "Sleeping for 6 seconds");
sleep(6);//sleep added to avoid BLE packet drop
OIC_LOG_V(INFO, TAG, "\n\nExecuting ProvisionEnrollee%s", __func__);
OIC_LOG_V(DEBUG, TAG, "OCPayload ready for ProvisionEnrollee");
OCStackResult ret = InvokeOCDoResource(query, OC_REST_PUT, destination, OC_HIGH_QOS,
- ProvisionEnrolleeResponse, payload, NULL, 0);
+ ProvisionEnrolleeResponse, payload, NULL, 0);
return ret;
}
OCStackApplicationResult GetProvisioningStatusResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
if (sent_provision_request == true)
return OC_STACK_DELETE_TRANSACTION;
sent_provision_request = true;
ProvisioningInfo *provInfo;
- if (!ValidateEnrolleResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateEnrolleResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_DELETE_TRANSACTION;
}
- OCRepPayload *input = (OCRepPayload * )(clientResponse->payload);
+ OCRepPayload *input = (OCRepPayload *) (clientResponse->payload);
char query[OIC_STRING_MAX_VALUE] =
- {'\0'};
+ { '\0' };
char resURI[MAX_URI_LENGTH] =
- {'\0'};
+ { '\0' };
OIC_LOG_V(DEBUG, TAG, "resUri = %s", input->uri);
//OCPayloadLogRep(DEBUG,TAG,input);
- if (ProvisionEnrollee(OC_HIGH_QOS, query, OC_RSRVD_ES_URI_PROV, devaddress) != OC_STACK_OK) {
+ if (ProvisionEnrollee(OC_HIGH_QOS, query, OC_RSRVD_ES_URI_PROV, devaddress) != OC_STACK_OK)
+ {
OIC_LOG(INFO, TAG,
"GetProvisioningStatusResponse received NULL clientResponse.Invoking Provisioing Status Callback");
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_DELETE_TRANSACTION;
}
}
OCStackResult InvokeOCDoResource(const char *query, OCMethod method, const OCDevAddr *dest,
- OCQualityOfService qos, OCClientResponseHandler cb,
- OCRepPayload *payload,
- OCHeaderOption *options, uint8_t numOptions) {
+ OCQualityOfService qos, OCClientResponseHandler cb, OCRepPayload *payload,
+ OCHeaderOption *options, uint8_t numOptions)
+{
OCStackResult ret;
OCCallbackData cbData;
cbData.cd = NULL;
ret = OCDoResource(NULL, method, query, dest, (OCPayload *) payload, OC_CONNTYPE_BLE, qos,
- &cbData, options, numOptions);
+ &cbData, options, numOptions);
- if (ret != OC_STACK_OK) {
+ if (ret != OC_STACK_OK)
+ {
OIC_LOG_V(ERROR, TAG, "OCDoResource returns error %d with method %d", ret, method);
}
}
OCStackResult GetProvisioningStatus(OCQualityOfService qos, const char *query,
- const OCDevAddr *destination) {
+ const OCDevAddr *destination)
+{
OCStackResult ret = OC_STACK_ERROR;
OIC_LOG_V(INFO, TAG, "\n\nExecuting %s %d", __func__, destination->adapter);
ret = InvokeOCDoResource(query, OC_REST_GET, destination, OC_HIGH_QOS,
- GetProvisioningStatusResponse, NULL, NULL, 0);
+ GetProvisioningStatusResponse, NULL, NULL, 0);
return ret;
}
OCStackResult StartProvisioningProcess(const EnrolleeNWProvInfo_t *netInfo,
- OCProvisioningStatusCB provisioningStatusCallback) {
+ OCProvisioningStatusCB provisioningStatusCallback)
+{
OCStackResult result = OC_STACK_ERROR;
pthread_t thread_handle;
- if (!ValidateEasySetupParams(netInfo, provisioningStatusCallback)) {
+ if (!ValidateEasySetupParams(netInfo, provisioningStatusCallback))
+ {
goto Error;
}
//Only basis test is done for below API
- if (!SetProgress(provisioningStatusCallback)) {
+ if (!SetProgress(provisioningStatusCallback))
+ {
// Device provisioning session is running already.
OIC_LOG(INFO, TAG, PCF("Device provisioning session is running already"));
goto Error;
}
- if (!ConfigEnrolleeObject(netInfo)) {
+ if (!ConfigEnrolleeObject(netInfo))
+ {
goto Error;
}
- if (pthread_create(&thread_handle, NULL, FindProvisioningResource, (void *) string)) {
+ if (pthread_create(&thread_handle, NULL, FindProvisioningResource, (void *) string))
+ {
goto Error;
}
pthread_join(thread_handle, NULL);
-
return OC_STACK_OK;
Error:
{
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_ERROR;
}
}
-void StopProvisioningProcess() {
+void StopProvisioningProcess()
+{
//Only basis test is done for below API
ResetProgress();
}
// This is a function called back when a device is discovered
OCStackApplicationResult FindProvisioningResourceResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
OIC_LOG(INFO, TAG, PCF("Entering FindProvisioningResourceResponse"));
- if (!ValidateFinddResourceResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateFinddResourceResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
ProvisioningInfo *provInfo;
char szQueryUri[64] =
- {0};
+ { 0 };
- OCDiscoveryPayload *discoveryPayload = (OCDiscoveryPayload * )(clientResponse->payload);
+ OCDiscoveryPayload *discoveryPayload = (OCDiscoveryPayload *) (clientResponse->payload);
// Need to conform if below check is required or not. As Null check of clientResponse->payload is already performed above
- if (!discoveryPayload) {
+ if (!discoveryPayload)
+ {
OIC_LOG_V(DEBUG, TAG, "Failed To parse");
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
OIC_LOG_V(DEBUG, TAG, "resUri = %s", discoveryPayload->resources->uri);
snprintf(szQueryUri, sizeof(szQueryUri), UNICAST_PROVISIONING_QUERY_BLE,
- clientResponse->addr->addr);
+ clientResponse->addr->addr);
OCDevAddr *devaddress = &clientResponse->devAddr;
devaddress->adapter = OC_ADAPTER_GATT_BTLE;
if (strcmp(netProvInfo->netAddressInfo.WIFI.ipAddress, clientResponse->devAddr.addr))
OIC_LOG_V(INFO, TAG, "unequal %s %s", netProvInfo->netAddressInfo.WIFI.ipAddress,
- clientResponse->devAddr.addr);
+ clientResponse->devAddr.addr);
else
OIC_LOG_V(INFO, TAG, "unequal %s %s", netProvInfo->netAddressInfo.WIFI.ipAddress,
- clientResponse->devAddr.addr);
+ clientResponse->devAddr.addr);
OIC_LOG_V(DEBUG, TAG, "query before GetProvisioningStatus call = %s %d", szQueryUri,
- devaddress->adapter);
+ devaddress->adapter);
- if (GetProvisioningStatus(OC_HIGH_QOS, szQueryUri, devaddress) != OC_STACK_OK) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (GetProvisioningStatus(OC_HIGH_QOS, szQueryUri, devaddress) != OC_STACK_OK)
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
}
-void *FindProvisioningResource(void *data) {
+void *FindProvisioningResource(void *data)
+{
OCStackResult ret = OC_STACK_ERROR;
/* Start a discovery query*/
char szQueryUri[64] =
- {0};
+ { 0 };
snprintf(szQueryUri, sizeof(szQueryUri), MULTICAST_PROVISIONING_QUERY_BLE);
ocCBData.cd = NULL;
ret = OCDoResource(NULL, OC_REST_DISCOVER, szQueryUri, NULL, NULL, OC_CONNTYPE_BLE, OC_LOW_QOS,
- &ocCBData, NULL, 0);
+ &ocCBData, NULL, 0);
- if (ret != OC_STACK_OK) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (ret != OC_STACK_OK)
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
}
+ return NULL;
}
-OCStackApplicationResult SubscribeProvPresenceCallback(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
- OIC_LOG(INFO, TAG, PCF("Entering SubscribeProvPresenceCallback"));
-
- OCStackApplicationResult response = OC_STACK_DELETE_TRANSACTION;
-
- if (clientResponse == NULL) {
- // clientResponse is invalid
- OIC_LOG(ERROR, TAG, PCF("Client Response is NULL!"));
- return response;
- }
- else {
- if (clientResponse->result != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "OCStack stop error");
- return response;
- }
-
- if (clientResponse->payload &&
- clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION) {
- OIC_LOG_V(DEBUG, TAG, "Incoming payload not a representation");
- return response;
- }
-
- OCRepPayload *discoveryPayload = (OCRepPayload * )(clientResponse->payload);
- if (!discoveryPayload) {
- OIC_LOG_V(DEBUG, TAG, "invalid payload");
- return response;
- }
-
- char sourceIPAddr[OIC_STRING_MAX_VALUE] =
- {'\0'};
- snprintf(sourceIPAddr, sizeof(sourceIPAddr), "%s", clientResponse->addr->addr);
-
- OIC_LOG_V(DEBUG, TAG, "Discovered %s @ %s", discoveryPayload->uri, sourceIPAddr);
-
- /* Start a discovery query*/
- char szQueryUri[64] =
- {0};
-
- snprintf(szQueryUri, sizeof(szQueryUri), UNICAST_PROVISIONING_QUERY, sourceIPAddr, IP_PORT);
-
- /*if (FindProvisioningResource(qos, szQueryUri) != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "FindProvisioningResource failed");
- return OC_STACK_KEEP_TRANSACTION;
- }*/
- }
-
- return OC_STACK_KEEP_TRANSACTION;
-
-}
-
-OCStackResult SubscribeProvPresence(OCQualityOfService qos, const char *requestURI) {
+OCStackResult FindNetworkResource()
+{
OCStackResult ret = OC_STACK_ERROR;
-
- OCCallbackData cbData;
-
- cbData.cb = &SubscribeProvPresenceCallback;
- cbData.context = (void *) DEFAULT_CONTEXT_VALUE;
- cbData.cd = NULL;
-
- ret = OCDoResource(NULL, OC_REST_PRESENCE, requestURI, 0, 0, OC_CONNTYPE_BLE, OC_LOW_QOS,
- &cbData, NULL, 0);
-
- if (ret != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "OCStack resource error");
- }
-
- return ret;
-}
-
-OCStackResult FindNetworkResource() {
- OCStackResult ret = OC_STACK_ERROR;
- if (OCStop() != OC_STACK_OK) {
+ if (OCStop() != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
}
ProvisioningInfo *PrepareProvisioingStatusCB(OCClientResponse *clientResponse,
- ProvStatus provStatus) {
+ ProvStatus provStatus)
+{
ProvisioningInfo *provInfo = (ProvisioningInfo *) OICCalloc(1, sizeof(ProvisioningInfo));
- if (provInfo == NULL) {
+ if (provInfo == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
OCDevAddr *devAddr = (OCDevAddr *) OICCalloc(1, sizeof(OCDevAddr));
- if (devAddr == NULL) {
+ if (devAddr == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
}
bool ValidateEasySetupParams(const EnrolleeNWProvInfo_t *netInfo,
- OCProvisioningStatusCB provisioningStatusCallback) {
+ OCProvisioningStatusCB provisioningStatusCallback)
+{
- if (netInfo == NULL || netInfo->netAddressInfo.WIFI.ipAddress == NULL) {
+ if (netInfo == NULL || strlen(netInfo->netAddressInfo.LE.leMacAddress) == 0)
+ {
OIC_LOG(ERROR, TAG, "Request URI is NULL");
return false;
}
- if (provisioningStatusCallback == NULL) {
+ if (provisioningStatusCallback == NULL)
+ {
OIC_LOG(ERROR, TAG, "ProvisioningStatusCallback is NULL");
return false;
}
}
-bool InProgress() {
+bool InProgress()
+{
// It means already Easy Setup provisioning session is going on.
- if (NULL != cbData) {
+ if (NULL != cbData)
+ {
OIC_LOG(ERROR, TAG, "Easy setup session is already in progress");
return true;
}
return false;
}
-bool SetProgress(OCProvisioningStatusCB provisioningStatusCallback) {
-
+bool SetProgress(OCProvisioningStatusCB provisioningStatusCallback)
+{
if (InProgress())
return false;
cbData = provisioningStatusCallback;
-
return true;
}
-bool ResetProgress() {
-
+bool ResetProgress()
+{
cbData = NULL;
return true;
}
-ProvisioningInfo *CreateCallBackObject() {
+ProvisioningInfo *CreateCallBackObject()
+{
ProvisioningInfo *provInfo = (ProvisioningInfo *) OICCalloc(1, sizeof(ProvisioningInfo));
- if (provInfo == NULL) {
+ if (provInfo == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
OCDevAddr *devAddr = (OCDevAddr *) OICCalloc(1, sizeof(OCDevAddr));
- if (devAddr == NULL) {
+ if (devAddr == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
}
-ProvisioningInfo *GetCallbackObjectOnError(ProvStatus status) {
+ProvisioningInfo *GetCallbackObjectOnError(ProvStatus status)
+{
ProvisioningInfo *provInfo = CreateCallBackObject();
strncpy(provInfo->provDeviceInfo.addr->addr, netProvInfo->netAddressInfo.WIFI.ipAddress,
}
ProvisioningInfo *GetCallbackObjectOnSuccess(OCClientResponse *clientResponse,
- ProvStatus provStatus) {
+ ProvStatus provStatus)
+{
ProvisioningInfo *provInfo = CreateCallBackObject();
strncpy(provInfo->provDeviceInfo.addr->addr, clientResponse->addr->addr,
sizeof(provInfo->provDeviceInfo.addr->addr));
return provInfo;
}
-bool ValidateFinddResourceResponse(OCClientResponse * clientResponse) {
+bool ValidateFinddResourceResponse(OCClientResponse * clientResponse)
+{
- if (!(clientResponse) || !(clientResponse->payload)) {
+ if (!(clientResponse) || !(clientResponse->payload))
+ {
OIC_LOG_V(INFO, TAG, "ProvisionEnrolleeResponse received Null clientResponse");
return true;
}
-bool ValidateEnrolleResponse(OCClientResponse * clientResponse) {
+bool ValidateEnrolleResponse(OCClientResponse * clientResponse)
+{
- if (!(clientResponse) || !(clientResponse->payload)) {
+ if (!(clientResponse) || !(clientResponse->payload))
+ {
OIC_LOG_V(INFO, TAG, "ProvisionEnrolleeResponse received Null clientResponse");
}
- if (clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION) {
+ if (clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION)
+ {
OIC_LOG_V(DEBUG, TAG, "Incoming payload not a representation");
return false;
}
-void SuccessCallback(OCClientResponse * clientResponse) {
+void SuccessCallback(OCClientResponse * clientResponse)
+{
ProvisioningInfo *provInfo = GetCallbackObjectOnSuccess(clientResponse, DEVICE_PROVISIONED);
cbData(provInfo);
}
-bool ClearMemory() {
+bool ClearMemory()
+{
OIC_LOG(DEBUG, TAG, "thread_pool_add_task of FindProvisioningResource failed");
}
-bool ConfigEnrolleeObject(const EnrolleeNWProvInfo_t *netInfo) {
+bool ConfigEnrolleeObject(const EnrolleeNWProvInfo_t *netInfo)
+{
//Copy Network Provisioning Information
netProvInfo = (EnrolleeNWProvInfo_t *) OICCalloc(1, sizeof(EnrolleeNWProvInfo_t));
- if (netProvInfo == NULL) {
+ if (netProvInfo == NULL)
+ {
OIC_LOG(ERROR, TAG, "Invalid input..");
return false;
}
memcpy(netProvInfo, netInfo, sizeof(EnrolleeNWProvInfo_t));
OIC_LOG_V(DEBUG, TAG, "Network Provisioning Info. SSID = %s",
- netProvInfo->netAddressInfo.WIFI.ssid);
+ netProvInfo->netAddressInfo.WIFI.ssid);
OIC_LOG_V(DEBUG, TAG, "Network Provisioning Info. PWD = %s",
- netProvInfo->netAddressInfo.WIFI.pwd);
+ netProvInfo->netAddressInfo.WIFI.pwd);
OIC_LOG_V(DEBUG, TAG, "Network Provisioning Info. MAC ADDRESS = %s",
- netInfo->netAddressInfo.LE.leMacAddress);
+ netInfo->netAddressInfo.LE.leMacAddress);
return true;
}
-void LogProvisioningResponse(OCRepPayloadValue * val) {
+void LogProvisioningResponse(OCRepPayloadValue * val)
+{
- switch (val->type) {
+ switch (val->type)
+ {
case OCREP_PROP_NULL:
OIC_LOG_V(DEBUG, TAG, "\t\t%s: NULL", val->name);
break;
OIC_LOG_V(DEBUG, TAG, "\t\t%s(OCRep):%s", val->name, val->obj->uri);
break;
case OCREP_PROP_ARRAY:
- switch (val->arr.type) {
+ switch (val->arr.type)
+ {
case OCREP_PROP_INT:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(int array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_DOUBLE:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(double array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_BOOL:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(bool array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_STRING:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(string array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_OBJECT:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(OCRep array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
default:
//OIC_LOG_V(ERROR, TAG, "\t\t%s <-- Unknown/unsupported array type!",
*/
static OCProvisioningStatusCB cbData = NULL;
-void ErrorCallback(ProvStatus status) {
+void ErrorCallback(ProvStatus status)
+{
ProvisioningInfo *provInfo = GetCallbackObjectOnError(status);
cbData(provInfo);
ResetProgress();
}
-
-OCStackResult InitProvisioningHandler() {
+OCStackResult InitProvisioningHandler()
+{
OCStackResult ret = OC_STACK_ERROR;
/* Initialize OCStack*/
- if (OCInit(NULL, 0, OC_CLIENT) != OC_STACK_OK) {
+ if (OCInit(NULL, 0, OC_CLIENT) != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack init error");
return ret;
}
-
-// start
+ // start
char *string = "listeningFunc invoked in a thread";
pthread_t thread_handle;
- if (pthread_create(&thread_handle, NULL, listeningFunc, (void *) string)) {
+ if (pthread_create(&thread_handle, NULL, listeningFunc, (void *) string))
+ {
OIC_LOG(DEBUG, TAG, "Thread creation failed");
return OC_STACK_ERROR;
}
pthread_join(thread_handle, NULL);
-// end
+ // end
ResetProgress();
return OC_STACK_OK;
}
-OCStackResult TerminateProvisioningHandler() {
+OCStackResult TerminateProvisioningHandler()
+{
OCStackResult ret = OC_STACK_ERROR;
- if (OCStop() != OC_STACK_OK) {
+ if (OCStop() != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
return ret;
}
-void *listeningFunc(void *data) {
- while (!g_provisioningCondFlag) {
+void *listeningFunc(void *data)
+{
+ while (!g_provisioningCondFlag)
+ {
OCStackResult result;
result = OCProcess();
- if (result != OC_STACK_OK) {
+ if (result != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
// To minimize CPU utilization we may wish to do this with sleep
sleep(1);
}
+ return NULL;
}
OCStackApplicationResult ProvisionEnrolleeResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
ProvisioningInfo *provInfo;
- if (!ValidateEnrolleResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateEnrolleResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
char *tnn;
char *cd;
- OCRepPayload *input = (OCRepPayload * )(clientResponse->payload);
+ OCRepPayload *input = (OCRepPayload *) (clientResponse->payload);
- while (input) {
+ while (input)
+ {
int64_t ps;
- if (OCRepPayloadGetPropInt(input, OC_RSRVD_ES_PS, &ps)) {
+ if (OCRepPayloadGetPropInt(input, OC_RSRVD_ES_PS, &ps))
+ {
- if (ps == 1) {
+ if (ps == 1)
+ {
OIC_LOG_V(DEBUG, TAG, "PS is proper");
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "PS is NOT proper");
goto Error;
}
}
- if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_TNN, &tnn)) {
- if (!strcmp(tnn, netProvInfo->netAddressInfo.WIFI.ssid)) {
+ if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_TNN, &tnn))
+ {
+ if (!strcmp(tnn, netProvInfo->netAddressInfo.WIFI.ssid))
+ {
OIC_LOG_V(DEBUG, TAG, "SSID is proper");
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "SSID is NOT proper");
goto Error;
}
}
- if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_CD, &cd)) {
- if (!strcmp(cd, netProvInfo->netAddressInfo.WIFI.pwd)) {
+ if (OCRepPayloadGetPropString(input, OC_RSRVD_ES_CD, &cd))
+ {
+ if (!strcmp(cd, netProvInfo->netAddressInfo.WIFI.pwd))
+ {
OIC_LOG_V(DEBUG, TAG, "Password is proper");
input = input->next;
continue;
}
- else {
+ else
+ {
OIC_LOG_V(DEBUG, TAG, "Password is NOT proper");
goto Error;
}
Error:
{
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
}
OCStackResult ProvisionEnrollee(OCQualityOfService qos, const char *query, const char *resUri,
- OCDevAddr *destination) {
+ OCDevAddr *destination)
+{
OIC_LOG_V(INFO, TAG, "\n\nExecuting ProvisionEnrollee%s", __func__);
OCRepPayload *payload = OCRepPayloadCreate();
OIC_LOG_V(DEBUG, TAG, "OCPayload ready for ProvisionEnrollee");
OCStackResult ret = InvokeOCDoResource(query, OC_REST_PUT, destination, OC_HIGH_QOS,
- ProvisionEnrolleeResponse, payload, NULL, 0);
+ ProvisionEnrolleeResponse, payload, NULL, 0);
return ret;
}
OCStackApplicationResult GetProvisioningStatusResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
ProvisioningInfo *provInfo;
- if (!ValidateEnrolleResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateEnrolleResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_DELETE_TRANSACTION;
}
- OCRepPayload *input = (OCRepPayload * )(clientResponse->payload);
+ OCRepPayload *input = (OCRepPayload *) (clientResponse->payload);
char query[OIC_STRING_MAX_VALUE] =
- {'\0'};
+ { '\0' };
char resURI[MAX_URI_LENGTH] =
- {'\0'};
+ { '\0' };
OIC_LOG_V(DEBUG, TAG, "resUri = %s", input->uri);
strncpy(resURI, input->uri, sizeof(resURI) - 1);
snprintf(query, sizeof(query), UNICAST_PROV_STATUS_QUERY, clientResponse->addr->addr, IP_PORT,
- resURI);
+ resURI);
//OCPayloadLogRep(DEBUG,TAG,input);
if (ProvisionEnrollee(OC_HIGH_QOS, query, OC_RSRVD_ES_URI_PROV, clientResponse->addr)
- != OC_STACK_OK) {
+ != OC_STACK_OK)
+ {
OIC_LOG(INFO, TAG,
"GetProvisioningStatusResponse received NULL clientResponse.Invoking Provisioing Status Callback");
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_DELETE_TRANSACTION;
}
}
OCStackResult InvokeOCDoResource(const char *query, OCMethod method, const OCDevAddr *dest,
- OCQualityOfService qos, OCClientResponseHandler cb,
- OCRepPayload *payload,
- OCHeaderOption *options, uint8_t numOptions) {
+ OCQualityOfService qos, OCClientResponseHandler cb, OCRepPayload *payload,
+ OCHeaderOption *options, uint8_t numOptions)
+{
OCStackResult ret;
OCCallbackData cbData;
cbData.cd = NULL;
ret = OCDoResource(NULL, method, query, dest, (OCPayload *) payload, OC_CONNTYPE, qos, &cbData,
- options, numOptions);
+ options, numOptions);
- if (ret != OC_STACK_OK) {
+ if (ret != OC_STACK_OK)
+ {
OIC_LOG_V(ERROR, TAG, "OCDoResource returns error %d with method %d", ret, method);
}
}
OCStackResult GetProvisioningStatus(OCQualityOfService qos, const char *query,
- const OCDevAddr *destination) {
+ const OCDevAddr *destination)
+{
OCStackResult ret = OC_STACK_ERROR;
OCHeaderOption options[MAX_HEADER_OPTIONS];
OIC_LOG_V(INFO, TAG, "\n\nExecuting %s", __func__);
uint8_t option0[] =
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
+ { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
uint8_t option1[] =
- {11, 12, 13, 14, 15, 16, 17, 18, 19, 20};
+ { 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };
memset(options, 0, sizeof(OCHeaderOption) * MAX_HEADER_OPTIONS);
options[0].protocolID = OC_COAP_ID;
options[0].optionID = 2048;
options[1].optionLength = 10;
ret = InvokeOCDoResource(query, OC_REST_GET, destination, OC_HIGH_QOS,
- GetProvisioningStatusResponse, NULL, options, 2);
+ GetProvisioningStatusResponse, NULL, options, 2);
return ret;
}
OCStackResult StartProvisioningProcess(const EnrolleeNWProvInfo_t *netInfo,
- OCProvisioningStatusCB provisioningStatusCallback) {
+ OCProvisioningStatusCB provisioningStatusCallback)
+{
OCStackResult result = OC_STACK_ERROR;
pthread_t thread_handle;
- if (!ValidateEasySetupParams(netInfo, provisioningStatusCallback)) {
+ if (!ValidateEasySetupParams(netInfo, provisioningStatusCallback))
+ {
goto Error;
}
//Only basis test is done for below API
- if (!SetProgress(provisioningStatusCallback)) {
+ if (!SetProgress(provisioningStatusCallback))
+ {
// Device provisioning session is running already.
OIC_LOG(INFO, TAG, PCF("Device provisioning session is running already"));
goto Error;
}
- if (!ConfigEnrolleeObject(netInfo)) {
+ if (!ConfigEnrolleeObject(netInfo))
+ {
goto Error;
}
- if (pthread_create(&thread_handle, NULL, FindProvisioningResource, string)) {
+ if (pthread_create(&thread_handle, NULL, FindProvisioningResource, string))
+ {
OIC_LOG(DEBUG, TAG, "Thread creation failed");
goto Error;
}
Error:
{
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
return OC_STACK_ERROR;
}
}
-void StopProvisioningProcess() {
+void StopProvisioningProcess()
+{
//Only basis test is done for below API
ResetProgress();
}
// This is a function called back when a device is discovered
OCStackApplicationResult FindProvisioningResourceResponse(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
+ OCClientResponse *clientResponse)
+{
OIC_LOG(INFO, TAG, PCF("Entering FindProvisioningResourceResponse"));
- if (!ValidateFinddResourceResponse(clientResponse)) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (!ValidateFinddResourceResponse(clientResponse))
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
ProvisioningInfo *provInfo;
char szQueryUri[64] =
- {0};
+ { 0 };
- OCDiscoveryPayload *discoveryPayload = (OCDiscoveryPayload * )(clientResponse->payload);
+ OCDiscoveryPayload *discoveryPayload = (OCDiscoveryPayload *) (clientResponse->payload);
// Need to conform if below check is required or not. As Null check of clientResponse->payload is already performed above
- if (!discoveryPayload) {
+ if (!discoveryPayload)
+ {
OIC_LOG_V(DEBUG, TAG, "Failed To parse");
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
OIC_LOG_V(DEBUG, TAG, "resUri = %s", discoveryPayload->resources->uri);
snprintf(szQueryUri, sizeof(szQueryUri), UNICAST_PROV_STATUS_QUERY,
- clientResponse->devAddr.addr, IP_PORT, discoveryPayload->resources->uri);
+ clientResponse->devAddr.addr, IP_PORT, discoveryPayload->resources->uri);
OIC_LOG_V(DEBUG, TAG, "query before GetProvisioningStatus call = %s", szQueryUri);
- if (GetProvisioningStatus(OC_HIGH_QOS, szQueryUri, &clientResponse->devAddr) != OC_STACK_OK) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (GetProvisioningStatus(OC_HIGH_QOS, szQueryUri, &clientResponse->devAddr) != OC_STACK_OK)
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
return OC_STACK_DELETE_TRANSACTION;
}
}
-void *FindProvisioningResource(void *data) {
+void *FindProvisioningResource(void *data)
+{
OCStackResult ret = OC_STACK_ERROR;
/* Start a discovery query*/
char szQueryUri[64] =
- {0};
+ { 0 };
snprintf(szQueryUri, sizeof(szQueryUri), UNICAST_PROVISIONING_QUERY,
- netProvInfo->netAddressInfo.WIFI.ipAddress, IP_PORT);
+ netProvInfo->netAddressInfo.WIFI.ipAddress, IP_PORT);
OIC_LOG_V(DEBUG, TAG, "szQueryUri = %s", szQueryUri);
ocCBData.cd = NULL;
ret = OCDoResource(NULL, OC_REST_DISCOVER, szQueryUri, NULL, NULL, OC_CONNTYPE, OC_LOW_QOS,
- &ocCBData, NULL, 0);
+ &ocCBData, NULL, 0);
- if (ret != OC_STACK_OK) {
- ErrorCallback(DEVICE_NOT_PROVISIONED);
+ if (ret != OC_STACK_OK)
+ {
+ ErrorCallback( DEVICE_NOT_PROVISIONED);
ClearMemory();
}
+ return NULL;
}
-OCStackApplicationResult SubscribeProvPresenceCallback(void *ctx, OCDoHandle handle,
- OCClientResponse *clientResponse) {
- OIC_LOG(INFO, TAG, PCF("Entering SubscribeProvPresenceCallback"));
-
- OCStackApplicationResult response = OC_STACK_DELETE_TRANSACTION;
-
- if (clientResponse->result != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "OCStack stop error");
- return response;
- }
-
- if (clientResponse) {
- OIC_LOG(INFO, TAG, PCF("Client Response exists"));
-
- if (clientResponse->payload &&
- clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION) {
- OIC_LOG_V(DEBUG, TAG, "Incoming payload not a representation");
- return response;
- }
-
- OCRepPayload *discoveryPayload = (OCRepPayload * )(clientResponse->payload);
- if (!discoveryPayload) {
- OIC_LOG_V(DEBUG, TAG, "invalid payload");
- return response;
- }
-
- char sourceIPAddr[OIC_STRING_MAX_VALUE] =
- {'\0'};
- snprintf(sourceIPAddr, sizeof(sourceIPAddr), "%s", clientResponse->addr->addr);
-
- OIC_LOG_V(DEBUG, TAG, "Discovered %s @ %s", discoveryPayload->uri, sourceIPAddr);
-
- /* Start a discovery query*/
- char szQueryUri[64] =
- {0};
-
- snprintf(szQueryUri, sizeof(szQueryUri), UNICAST_PROVISIONING_QUERY, sourceIPAddr, IP_PORT);
-
- /*if (FindProvisioningResource(qos, szQueryUri) != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "FindProvisioningResource failed");
- return OC_STACK_KEEP_TRANSACTION;
- }*/
- }
- else {
- // clientResponse is invalid
- OIC_LOG(ERROR, TAG, PCF("Client Response is NULL!"));
- }
- return OC_STACK_KEEP_TRANSACTION;
-}
-
-OCStackResult SubscribeProvPresence(OCQualityOfService qos, const char *requestURI) {
+OCStackResult FindNetworkResource()
+{
OCStackResult ret = OC_STACK_ERROR;
-
- OCCallbackData cbData;
-
- cbData.cb = &SubscribeProvPresenceCallback;
- cbData.context = (void *) DEFAULT_CONTEXT_VALUE;
- cbData.cd = NULL;
-
- ret = OCDoResource(NULL, OC_REST_PRESENCE, requestURI, 0, 0, OC_CONNTYPE, OC_LOW_QOS, &cbData,
- NULL, 0);
-
- if (ret != OC_STACK_OK) {
- OIC_LOG(ERROR, TAG, "OCStack resource error");
- }
-
- return ret;
-}
-
-OCStackResult FindNetworkResource() {
- OCStackResult ret = OC_STACK_ERROR;
- if (OCStop() != OC_STACK_OK) {
+ if (OCStop() != OC_STACK_OK)
+ {
OIC_LOG(ERROR, TAG, "OCStack stop error");
}
}
ProvisioningInfo *PrepareProvisioingStatusCB(OCClientResponse *clientResponse,
- ProvStatus provStatus) {
+ ProvStatus provStatus)
+{
ProvisioningInfo *provInfo = (ProvisioningInfo *) OICCalloc(1, sizeof(ProvisioningInfo));
- if (provInfo == NULL) {
+ if (provInfo == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
OCDevAddr *devAddr = (OCDevAddr *) OICCalloc(1, sizeof(OCDevAddr));
- if (devAddr == NULL) {
+ if (devAddr == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
}
bool ValidateEasySetupParams(const EnrolleeNWProvInfo_t *netInfo,
- OCProvisioningStatusCB provisioningStatusCallback) {
+ OCProvisioningStatusCB provisioningStatusCallback)
+{
- if (netInfo == NULL || strlen(netInfo->netAddressInfo.WIFI.ipAddress) == 0) {
+ if (netInfo == NULL || strlen(netInfo->netAddressInfo.WIFI.ipAddress) == 0)
+ {
OIC_LOG(ERROR, TAG, "Request URI is NULL");
return false;
}
- if (provisioningStatusCallback == NULL) {
+ if (provisioningStatusCallback == NULL)
+ {
OIC_LOG(ERROR, TAG, "ProvisioningStatusCallback is NULL");
return false;
}
}
-bool InProgress() {
+bool InProgress()
+{
// It means already Easy Setup provisioning session is going on.
- if (NULL != cbData) {
+ if (NULL != cbData)
+ {
OIC_LOG(ERROR, TAG, "Easy setup session is already in progress");
return true;
}
return false;
}
-bool SetProgress(OCProvisioningStatusCB provisioningStatusCallback) {
+bool SetProgress(OCProvisioningStatusCB provisioningStatusCallback)
+{
if (InProgress())
return false;
cbData = provisioningStatusCallback;
-
return true;
}
-bool ResetProgress() {
+bool ResetProgress()
+{
cbData = NULL;
return true;
}
-ProvisioningInfo *CreateCallBackObject() {
+ProvisioningInfo *CreateCallBackObject()
+{
ProvisioningInfo *provInfo = (ProvisioningInfo *) OICCalloc(1, sizeof(ProvisioningInfo));
- if (provInfo == NULL) {
+ if (provInfo == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
OCDevAddr *devAddr = (OCDevAddr *) OICCalloc(1, sizeof(OCDevAddr));
- if (devAddr == NULL) {
+ if (devAddr == NULL)
+ {
OIC_LOG_V(ERROR, TAG, "Failed to allocate memory");
return NULL;
}
}
-ProvisioningInfo *GetCallbackObjectOnError(ProvStatus status) {
+ProvisioningInfo *GetCallbackObjectOnError(ProvStatus status)
+{
ProvisioningInfo *provInfo = CreateCallBackObject();
strncpy(provInfo->provDeviceInfo.addr->addr, netProvInfo->netAddressInfo.WIFI.ipAddress,
}
ProvisioningInfo *GetCallbackObjectOnSuccess(OCClientResponse *clientResponse,
- ProvStatus provStatus) {
+ ProvStatus provStatus)
+{
ProvisioningInfo *provInfo = CreateCallBackObject();
strncpy(provInfo->provDeviceInfo.addr->addr, clientResponse->addr->addr,
sizeof(provInfo->provDeviceInfo.addr->addr));
return provInfo;
}
-bool ValidateFinddResourceResponse(OCClientResponse * clientResponse) {
+bool ValidateFinddResourceResponse(OCClientResponse * clientResponse)
+{
- if (!(clientResponse) || !(clientResponse->payload)) {
+ if (!(clientResponse) || !(clientResponse->payload))
+ {
OIC_LOG_V(INFO, TAG, "ProvisionEnrolleeResponse received Null clientResponse");
return true;
}
-bool ValidateEnrolleResponse(OCClientResponse * clientResponse) {
+bool ValidateEnrolleResponse(OCClientResponse * clientResponse)
+{
- if (!(clientResponse) || !(clientResponse->payload)) {
+ if (!(clientResponse) || !(clientResponse->payload))
+ {
OIC_LOG_V(INFO, TAG, "ProvisionEnrolleeResponse received Null clientResponse");
}
- if (clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION) {
+ if (clientResponse->payload->type != PAYLOAD_TYPE_REPRESENTATION)
+ {
OIC_LOG_V(DEBUG, TAG, "Incoming payload not a representation");
return false;
}
-
-void SuccessCallback(OCClientResponse * clientResponse) {
+void SuccessCallback(OCClientResponse * clientResponse)
+{
ProvisioningInfo *provInfo = GetCallbackObjectOnSuccess(clientResponse, DEVICE_PROVISIONED);
cbData(provInfo);
ResetProgress();
}
-bool ClearMemory() {
+bool ClearMemory()
+{
OIC_LOG(DEBUG, TAG, "thread_pool_add_task of FindProvisioningResource failed");
return true;
}
-bool ConfigEnrolleeObject(const EnrolleeNWProvInfo_t *netInfo) {
+bool ConfigEnrolleeObject(const EnrolleeNWProvInfo_t *netInfo)
+{
//Copy Network Provisioning Information
netProvInfo = (EnrolleeNWProvInfo_t *) OICCalloc(1, sizeof(EnrolleeNWProvInfo_t));
- if (netProvInfo == NULL) {
+ if (netProvInfo == NULL)
+ {
OIC_LOG(ERROR, TAG, "Invalid input..");
return false;
}
memcpy(netProvInfo, netInfo, sizeof(EnrolleeNWProvInfo_t));
OIC_LOG_V(DEBUG, TAG, "Network Provisioning Info. SSID = %s",
- netProvInfo->netAddressInfo.WIFI.ssid);
+ netProvInfo->netAddressInfo.WIFI.ssid);
OIC_LOG_V(DEBUG, TAG, "Network Provisioning Info. PWD = %s",
- netProvInfo->netAddressInfo.WIFI.pwd);
+ netProvInfo->netAddressInfo.WIFI.pwd);
return true;
}
-void LogProvisioningResponse(OCRepPayloadValue * val) {
+void LogProvisioningResponse(OCRepPayloadValue * val)
+{
- switch (val->type) {
+ switch (val->type)
+ {
case OCREP_PROP_NULL:
OIC_LOG_V(DEBUG, TAG, "\t\t%s: NULL", val->name);
break;
OIC_LOG_V(DEBUG, TAG, "\t\t%s(OCRep):%s", val->name, val->obj->uri);
break;
case OCREP_PROP_ARRAY:
- switch (val->arr.type) {
+ switch (val->arr.type)
+ {
case OCREP_PROP_INT:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(int array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_DOUBLE:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(double array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_BOOL:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(bool array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_STRING:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(string array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
case OCREP_PROP_OBJECT:
OIC_LOG_V(DEBUG, TAG, "\t\t%s(OCRep array):%lld x %lld x %lld", val->name,
- val->arr.dimensions[0], val->arr.dimensions[1],
- val->arr.dimensions[2]);
+ val->arr.dimensions[0], val->arr.dimensions[1], val->arr.dimensions[2]);
break;
default:
//OIC_LOG_V(ERROR, TAG, "\t\t%s <-- Unknown/unsupported array type!",