Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
virtual P6R::P6ERR P6R::p6IKMIPRequest::addRegisterSplitKeyRequest ( P6KMIP_SPLITKEY pKey,
P6KMIP_TEMPLATEATTRIBUTE  attributes,
P6KMIP_MSGEXTENSION pExtension 
)
pure virtual

Add the register batch item for a split key, which can be in the clear, encrypted and/or signed.

A successful startRequestMsg function must be called first. Note that a split key is typically a symmetric or private key.

Register (Section 4.3 KMIP spec), allows the KMIP client to send one of several objects to the server for storage. This call is used to send one of the following objects: {SplitKey}

Parameters
pKey[ in ] The bits that compose the part of the split key to be sent (e.g., key split into 5 parts and the caller is encoding the 3rd part)
attrbutes[ in ] The required attribues {Cryptographic Algorithm, Cryptographic Length, Cryptographic Usage}, and any other attributes to be associated with the new key object (e.g., Object Group)
pExtension[ in ] optional can be NULL, vendor defined extension to the operation
Returns
SuccessP6R::eOk 
FailureP6R::eNotInitializedA successful call to intialize() must be made before calling this funciton.
P6R::eTooSmallThe configured buffer size in pPool is too small to hold the generated message.
P6R::eInvalidStateA successful call to startRequestMsg() must be made before calling this function.
P6R::eFormatErrorOne or more required value is missing in the pKey parameter (e.g., objectType).
P6R::eRangepExtension->encodedExtension.length must be a multiple of 8, since encoded as the Vendor Extension Structure