From 1141b07761f59d4923e504154ed88052dc193e6b Mon Sep 17 00:00:00 2001 From: Andrii Shtompel Date: Mon, 26 Sep 2016 16:23:57 +0300 Subject: [PATCH] Print Acl Id & minor updates Change-Id: Ib6b48be6e9f5da3dafb27632b2b93a986b6da2ab Signed-off-by: Andrii Shtompel Reviewed-on: https://gerrit.iotivity.org/gerrit/12323 Tested-by: jenkins-iotivity Reviewed-by: Randeep Singh --- .../include/cloud/occloudprovisioning.h | 2 +- .../provisioning/sample/cloud/cloudWrapper.c | 2 +- .../csdk/security/provisioning/src/cloud/aclid.c | 37 +++++++++++++++++++--- resource/provisioning/src/OCCloudProvisioning.cpp | 2 +- 4 files changed, 36 insertions(+), 7 deletions(-) diff --git a/resource/csdk/security/provisioning/include/cloud/occloudprovisioning.h b/resource/csdk/security/provisioning/include/cloud/occloudprovisioning.h index 9b3f9b1..4c153f7 100644 --- a/resource/csdk/security/provisioning/include/cloud/occloudprovisioning.h +++ b/resource/csdk/security/provisioning/include/cloud/occloudprovisioning.h @@ -109,7 +109,7 @@ OCStackResult OCCloudPostCRL(void* ctx, * @param[in] callback result callback * @return OCStackResult application result */ -OCStackResult OCCloudAclIdGetByDevice(void* ctx, +OCStackResult OCCloudGetAclIdByDevice(void* ctx, const char *deviceId, const OCDevAddr *endPoint, OCCloudResponseCB callback); diff --git a/resource/csdk/security/provisioning/sample/cloud/cloudWrapper.c b/resource/csdk/security/provisioning/sample/cloud/cloudWrapper.c index 3aa0eed..a94713e 100644 --- a/resource/csdk/security/provisioning/sample/cloud/cloudWrapper.c +++ b/resource/csdk/security/provisioning/sample/cloud/cloudWrapper.c @@ -279,7 +279,7 @@ OCStackResult OCWrapperAclIdGetByDevice(const OCDevAddr *endPoint, OCCloudRespon readString(di, sizeof(di), "device id", UUID_EXAMPLE_1); - return OCCloudAclIdGetByDevice(NULL, di, endPoint, callback); + return OCCloudGetAclIdByDevice(NULL, di, endPoint, callback); } OCStackResult OCWrapperAclIdCreate(const OCDevAddr *endPoint, OCCloudResponseCB callback) diff --git a/resource/csdk/security/provisioning/src/cloud/aclid.c b/resource/csdk/security/provisioning/src/cloud/aclid.c index e698e34..562ca0f 100644 --- a/resource/csdk/security/provisioning/src/cloud/aclid.c +++ b/resource/csdk/security/provisioning/src/cloud/aclid.c @@ -13,14 +13,14 @@ #define TAG "CLOUD-ACL-ID" /** - * ACL Id create request received data handler + * ACL Id parse from received response * * @param[in] ctx context * @param[out] data data required to external application * @param[in] response peer response * @return OCStackResult application result */ -static OCStackResult handleAclIdCreateResponse(void *ctx, void **data, OCClientResponse *response) +static OCStackResult getAclIdFromResponse(void *ctx, void **data, OCClientResponse *response) { OC_UNUSED(ctx); if (NULL == response->payload) @@ -37,11 +37,40 @@ static OCStackResult handleAclIdCreateResponse(void *ctx, void **data, OCClientR return OC_STACK_MALFORMED_RESPONSE; } + OIC_LOG_V(INFO, TAG, "Received Acl id = %s", aclid); + *data = aclid; return OC_STACK_OK; } -OCStackResult OCCloudAclIdGetByDevice(void* ctx, +/** + * ACL Id by device request received data handler + * + * @param[in] ctx context + * @param[out] data data required to external application + * @param[in] response peer response + * @return OCStackResult application result + */ +static OCStackResult handleGetAclIdByDeviceResponse(void *ctx, void **data, + OCClientResponse *response) +{ + return getAclIdFromResponse(ctx, data, response); +} + +/** + * ACL Id create request received data handler + * + * @param[in] ctx context + * @param[out] data data required to external application + * @param[in] response peer response + * @return OCStackResult application result + */ +static OCStackResult handleAclIdCreateResponse(void *ctx, void **data, OCClientResponse *response) +{ + return getAclIdFromResponse(ctx, data, response); +} + +OCStackResult OCCloudGetAclIdByDevice(void* ctx, const char *deviceId, const OCDevAddr *endPoint, OCCloudResponseCB callback) @@ -54,7 +83,7 @@ OCStackResult OCCloudAclIdGetByDevice(void* ctx, endPoint->addr, endPoint->port, OC_RSRVD_ACL_ID_URL, OC_RSRVD_DEVICE_ID, deviceId); OCCallbackData cbData; - fillCallbackData(&cbData, ctx, callback, handleAclIdCreateResponse, NULL); + fillCallbackData(&cbData, ctx, callback, handleGetAclIdByDeviceResponse, NULL); return OCDoResource(NULL, OC_REST_GET, uri, NULL, NULL, CT_ADAPTER_TCP, OC_LOW_QOS, &cbData, NULL, 0); diff --git a/resource/provisioning/src/OCCloudProvisioning.cpp b/resource/provisioning/src/OCCloudProvisioning.cpp index 29b7ee8..1c422b9 100644 --- a/resource/provisioning/src/OCCloudProvisioning.cpp +++ b/resource/provisioning/src/OCCloudProvisioning.cpp @@ -137,7 +137,7 @@ namespace OC AclIdContext *context = new AclIdContext(callback); std::lock_guard lock(*cLock); - result = OCCloudAclIdGetByDevice(static_cast(context), deviceId.c_str(), + result = OCCloudGetAclIdByDevice(static_cast(context), deviceId.c_str(), &m_devAddr, &OCCloudProvisioning::aclIdResponseWrapper); } -- 2.7.4