Commit 254ea955 authored by Kyungsun Cho's avatar Kyungsun Cho Committed by Sachin Agrawal

[IOT-830] Added remove API for all credentials on |credresource|

added all credentials remove API for iotivity client with provisioning
feature. considering commercialization, iotivity client needs not only to
reset SVR data, e.g. doxm, acl and cred resources, but also to remove only
all credential data for its owned servers. for the former case legacy API(s)
could be supported but for the latter case additional API is needed.
the added API for this supports to remove all credentials and update
persistent storage in running iotivity client.
Jira-issue: https://jira.iotivity.org/browse/IOT-830

Change-Id: Icb41023f9acb6498c96e2b089a73daf4f39dd354
Signed-off-by: default avatarKyungsun Cho <goodsun.cho@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/4147Tested-by: default avatarjenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: default avatardongik Lee <dongik.lee@samsung.com>
Reviewed-by: default avatarSachin Agrawal <sachin.agrawal@intel.com>
parent fa3b625e
......@@ -110,6 +110,15 @@ OCStackResult AddCredential(OicSecCred_t * cred);
*/
OCStackResult RemoveCredential(const OicUuid_t* credId);
/**
* Remove all credential data on credential resource and persistent storage
*
* @retval
* OC_STACK_OK - no errors
* OC_STACK_ERROR - stack process error
*/
OCStackResult RemoveAllCredentials(void);
#if defined(__WITH_DTLS__)
/**
* This internal callback is used by lower stack (i.e. CA layer) to
......
......@@ -570,6 +570,14 @@ exit:
return 0;
}
/**
* Get the default value
* @retval NULL for now. Update it when we finalize the default info.
*/
static OicSecCred_t* GetCredDefault()
{
return NULL;
}
/**
* This function adds the new cred to the credential list.
......@@ -631,6 +639,25 @@ OCStackResult RemoveCredential(const OicUuid_t *subject)
}
/**
* Remove all credential data on credential resource and persistent storage
*
* @retval
* OC_STACK_OK - no errors
* OC_STACK_ERROR - stack process error
*/
OCStackResult RemoveAllCredentials(void)
{
DeleteCredList(gCred);
gCred = GetCredDefault();
if(!UpdatePersistentStorage(gCred))
{
return OC_STACK_ERROR;
}
return OC_STACK_OK;
}
static OCEntityHandlerResult HandlePostRequest(const OCEntityHandlerRequest * ehRequest)
{
OCEntityHandlerResult ret = OC_EH_ERROR;
......@@ -757,15 +784,6 @@ OCStackResult CreateCredResource()
return ret;
}
/**
* Get the default value
* @retval NULL for now. Update it when we finalize the default info.
*/
static OicSecCred_t* GetCredDefault()
{
return NULL;
}
/**
* Initialize Cred resource by loading data from persistent storage.
*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment