This function sends the combination of a check operation followed by a get usage allocation operation to a KMIP server.
The check operation is used to verify if the results of a previous operation that placed a value in the ID placeholder on the KMIP server. The get usage allocation operation will only return the requested allocation if the check operation was successful.
Request from the KMIP server a usage allocation for a managed object that can provide cryptographic protection (e.g., symmetric key).
- Parameters
-
check | [ in ] the group of parameters specific to the check operation |
uniqueId | [ in ] optional uniqueId.pString can be NULL, the managed object to change the state. If NULL the server determines the object to query. |
usageLimitsCount | [ in ] an allocation amount from the current Usage Limits value to allow the client to use the managed cryptographic object (specified by the unique identifier parameter) for applying cryptographic protection |
pExtension | [ in ] optional can be NULL, vendor defined extension to the operation |
ppUniqueId | [ out ] An enumerator returning the unique identifier of the activated managed object |
pCheck | [ out ] Server returned status of the check operation |
pResult | [ out ] Server returned status indicators |
- Returns
Failure | P6R::eNotInitialized | A successful call to initialize() is required. |
P6R::eNotConn | A successful call to open() is required before this function is called. |
P6R::eInvalidArg | One of the pointers is NULL. |
P6R::eFormatError | Parsing error occurred while parsing a KMIP server response. |
P6R::eTooBig | Message returned by server is too big to fit in configured buffers. |
P6R::eTooSmall | The configured buffer size in P6KMIP_PREF.maxBufferSize is too small to hold the request message. |