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

Add the register batch item for an unwrapped PGP key (i.e., not encrypted nor signed).

A successful startRequestMsg function must be called first.

Register (Section 4.3 KMIP spec), this function supports the encoding of a PGP key. This method requires that the caller properly TTLV encode the contents of a Key Block structure (Section 2.1.3 KMIP spec). Note that this function will create the Key Block structure. The caller just provides the inside bytes of that structure.

Parameters
key[ in ] an opaque blob to be placed as the content of a key block structure in the current request being constructed
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::eRangeValue for key.keyBlock.length must be a multiple of 8 for proper TTLV encoding
P6R::eRangepExtension->encodedExtension.length must be a multiple of 8, since encoded as the Vendor Extension Structure