Creates the settings required for generating delegation licenses and end-user licenses.
Get the user associated with this collection of licenses.
Gets the end-user license that can be accessed with the key associated with the end-user's identity.
Gets the delegation license in XRML format. For encryption operations, the delegation license uses the key that is associated with the identity that retrieved the delegation license.
Gets the delegation license in JSON format. For encryption operations, the delegation license uses the key that is associated with the identity that retrieved the delegation license.
Gets the dynamic watermark from the delegation license object.
Gets an array of delegation license objects from a mip_cc_delegation_licenses object.
- Parameters
-
mipContext | Global context shared across all profiles |
serializedPublishingLicense | Buffer containing raw publishing license |
publishingLicenseBufferSize | Size of publishing license buffer |
users | List of users to obtain licenses on behalf of |
acquireEndUserLicenses | Set to 'true' to obtain end-user licenses that are encrypted using end-user keys |
delegationLicenseSettings | [Output] Handle to the new delegation license settings object |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- To avoid memory leaks,
delegationLicenseSettings
must be released using MIP_CC_ReleaseDelegationLicenseSettings.
- Parameters
-
licenses | Handle to a collection of mip_cc_delegation_license objects |
delegationLicenseArray | [Input/Output] Caller allocated array of mip_cc_delegation_license objects. Set this value to nullptr to determine the number of items in licenses . |
count | [Input/Output] Upon input, the size of delegationLicenseArray in items. Upon output, the number of items written to delegationLicenseArray . Each item is sizeof(mip_cc_delegation_license) . If delegationLicenseArray is nullptr , count returns the size required (in items) to store the array of mip_cc_delegation_license objects. |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- If the input array is too small, the input is truncated and MIP_RESULT_ERROR_INSUFFICIENT_BUFFER is returned. The caller is responsible for releasing each returned mip_cc_delegation_license by calling MIP_CC_ReleaseDelegationLicense.
- Parameters
-
license | Handle to a mip_cc_delegation_license object |
dynamicWatermark | [Output] Handle to the dynamic watermark (null if not present) |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- The returned
dynamicWatermark
(mip_cc_dynamic_watermark*) must be freed by calling MIP_CC_ReleaseDynamicWatermark
- Parameters
-
license | Handle to the mip_cc_delegation_license object |
serializedLicense | [Input/Output] Caller allocated buffer in bytes for the JSON delegation license. Set this value to nullptr to determine the number of bytes in serializedLicense . |
serializedLicenseSize | [Input/Output] Upon input, the size of serializedLicense in bytes. Upon output, the number of bytes written to serializedLicense . If serializedLicense is nullptr , serializedLicenseSize returns the size required (in bytes) to store the serializedLicense . |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- If the input buffer is too small, the input is truncated and MIP_RESULT_ERROR_INSUFFICIENT_BUFFER is returned. The input buffer is NOT guaranteed to be null terminated.
- Parameters
-
license | Handle to the mip_cc_delegation_license object |
serializedLicense | [Input/Output] Caller allocated buffer in bytes for the XRML delegation license. Set this value to nullptr to determine the number of bytes in serializedLicense . |
serializedLicenseSize | [Input/Output] Upon input, the size of serializedLicense in bytes. Upon output, the number of bytes written to serializedLicense . If serializedLicense is nullptr , serializedLicenseSize returns the size required (in bytes) to store the serializedLicense . |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- If the input buffer is too small, the input is truncated and MIP_RESULT_ERROR_INSUFFICIENT_BUFFER is returned. The input buffer is NOT guaranteed to be null terminated.
- Parameters
-
license | Handle to the mip_cc_delegation_license object |
format | The mip_cc_pre_license_format to use when retrieving the end-user license |
serializedLicense | [Input/Output] Caller allocated buffer in bytes for the XRML delegation license. Set this value to nullptr to determine the number of bytes in serializedLicense . |
serializedLicenseSize | [Input/Output] Upon input, the size of serializedLicense in bytes. Upon output, the number of bytes written to serializedLicense . If serializedLicense is nullptr , serializedLicenseSize returns the size required (in bytes) to store the serializedLicense . |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- If the input buffer is too small, the input is truncated and MIP_RESULT_ERROR_INSUFFICIENT_BUFFER is returned. The input buffer is NOT guaranteed to be null terminated.
- Parameters
-
license | Handle to the mip_cc_delegation_license object |
user | [Output] Address of a null terminated character array that defines the user that is associated with this license collection. |
errorInfo | [Output] (Optional) Failure info if operation result is error |
- Returns
- Result code indicating success or failure
- Note
- The memory associated with
user
is temporary and may not be accessible once other MIP_CC_DelegationLicense
calls are executed.