Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
virtual P6R::P6ERR P6R::p6IKeystore::replaceKey ( const P6WCHAR pNamespace,
const P6WCHAR pName,
p6ICryptoKey pKey,
p6ICert **  pCertChain,
P6UINT32  numChain 
)
pure virtual

Deletes an existing key matching the 'pNamespace pName' identifer, and then creates a new key (with the same identifer) and certificate chain in the keystore.

Replacing a key will also force the old key's certificate chain to be deleted.

Parameters
pNamespace[ in ] An identifier to separate the namespace of pName between applications
pName[ in ] An application defined, unique identifier for a key
pKey[ in ] A new key to save in the keystore
pCertChain[ in ] Pointer to an array of certificates that represent the pKey's certificate chain. If this parameter is NULL, then no chain is saved.
numChain[ in ] The number of entires in the pCertChain array. If this parameter is zero, then no chain is saved.
Returns
SuccessP6R::eOk 
FailureP6R::eInvalidArgOne of the parameters is NULL.
P6R::eNotInitializedA successful call to initialize was not made before this call.
P6R::eInvalidStateA successful call to open() was not made before this call.
P6R::eNotFoundThere is no keystore entry associated with the pNamespace pName identifer.
P6R::eTooBigpNamespace is larger than P6KSMAXNAMESPACE or pName is larger than P6KSMAXNAME.
P6R::eTooSmallpNamespace or pName have length of zero.