|
|
|
|
@@ -1107,7 +1107,7 @@ miCASAReadSecret
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(rc = sscs_CacheReadSecret(storeContext->ssHandle, ssFlags, keyChainID, &secretID, &secBuf,
|
|
|
|
|
epPassword, &bytesRequired, readData))
|
|
|
|
|
epPassword, &bytesRequired, ext))
|
|
|
|
|
{
|
|
|
|
|
goto errorLevel1;
|
|
|
|
|
}
|
|
|
|
|
@@ -1285,7 +1285,7 @@ miCASARemoveSecret
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rc = sscs_CacheRemoveSecret(storeContext->ssHandle, ssFlags, keyChainID,
|
|
|
|
|
&secretID, epPassword, NULL);
|
|
|
|
|
&secretID, epPassword, ext);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* ############################### CODE EXITS HERE ############################# */
|
|
|
|
|
@@ -3207,7 +3207,7 @@ miCASAGetCredential
|
|
|
|
|
|
|
|
|
|
// read credset for this app
|
|
|
|
|
secID.type = SSCS_CREDENTIAL_TYPE_F;
|
|
|
|
|
rcode = miCASAReadSecret(context, &kc, ssFlags, secretHandle, &secID, NULL, &readData, NULL);
|
|
|
|
|
rcode = miCASAReadSecret(context, &kc, ssFlags, secretHandle, &secID, NULL, &readData, ext);
|
|
|
|
|
|
|
|
|
|
if(rcode == NSSCS_SUCCESS)
|
|
|
|
|
{
|
|
|
|
|
@@ -3231,7 +3231,7 @@ miCASAGetCredential
|
|
|
|
|
secID.type = SSCS_CREDENTIAL_TYPE_F;
|
|
|
|
|
secID.len = appSecretID->len;
|
|
|
|
|
sscs_Utf8Strncpy(secID.name, appSecretID->id, secID.len);
|
|
|
|
|
rcode = miCASAReadSecret(context, &kc, ssFlags, secretHandle, &secID, NULL, &readData, NULL);
|
|
|
|
|
rcode = miCASAReadSecret(context, &kc, ssFlags, secretHandle, &secID, NULL, &readData, ext);
|
|
|
|
|
if(rcode == NSSCS_SUCCESS)
|
|
|
|
|
{
|
|
|
|
|
// read the username and password
|
|
|
|
|
@@ -3605,7 +3605,7 @@ miCASADeleteCredential
|
|
|
|
|
secID.len = appSecretID->len;
|
|
|
|
|
sscs_Utf8Strncpy(secID.name, appSecretID->id, secID.len);
|
|
|
|
|
|
|
|
|
|
rcode = miCASARemoveSecret (context, &kc, ssFlags, &secID, NULL, NULL);
|
|
|
|
|
rcode = miCASARemoveSecret (context, &kc, ssFlags, &secID, NULL, ext);
|
|
|
|
|
|
|
|
|
|
// close the secretstore
|
|
|
|
|
miCASACloseSecretStoreCache(context, ssFlags, NULL);
|
|
|
|
|
@@ -3750,3 +3750,46 @@ miCASAIsSecretPersistent
|
|
|
|
|
/* ############################### CODE ENDS HERE ############################# */
|
|
|
|
|
} // end of miCASAIsSecretPersistent
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* NAME - miCASAMergeCache
|
|
|
|
|
*
|
|
|
|
|
* DESCRIPTION
|
|
|
|
|
* This call merges the src cache with the destination cache
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
SSCS_GLOBAL_LIBCALL(int32_t)
|
|
|
|
|
miCASAMergeCache
|
|
|
|
|
(
|
|
|
|
|
SSCS_EXT_T *srcExt,
|
|
|
|
|
SSCS_EXT_T *targetExt,
|
|
|
|
|
uint32_t bDestroySrcCache
|
|
|
|
|
)
|
|
|
|
|
{ /* beginning of the call */
|
|
|
|
|
/* ########################## DECLARATIONS START HERE ######################### */
|
|
|
|
|
|
|
|
|
|
void *context = NULL;
|
|
|
|
|
int32_t rcode = 0;
|
|
|
|
|
SSCS_SECRETSTORE_T store = {0};
|
|
|
|
|
SSCS_CONTEXT_T *storeContext;
|
|
|
|
|
|
|
|
|
|
/* ############################## CODE STARTS HERE ############################ */
|
|
|
|
|
|
|
|
|
|
// open secretStore
|
|
|
|
|
sscs_Utf8Strncpy(store.ssName, SSCS_DEFAULT_SECRETSTORE_ID, SSCS_DEFAULT_SECRETSTORE_ID_LEN);
|
|
|
|
|
store.version = 1;
|
|
|
|
|
context = miCASAOpenSecretStoreCache(&store, 0, NULL);
|
|
|
|
|
|
|
|
|
|
storeContext = (SSCS_CONTEXT_T *)context;
|
|
|
|
|
|
|
|
|
|
if(context == NULL)
|
|
|
|
|
{
|
|
|
|
|
return NSSCS_E_SYSTEM_FAILURE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rcode = sscs_MergeCache(storeContext->ssHandle, srcExt, targetExt, bDestroySrcCache);
|
|
|
|
|
miCASACloseSecretStoreCache(context, 0, NULL);
|
|
|
|
|
|
|
|
|
|
return rcode;
|
|
|
|
|
|
|
|
|
|
/* ############################### CODE ENDS HERE ############################# */
|
|
|
|
|
} // end of miCASAIsSecretPersistent
|