Tspi_DecodeBER_TssBlob(3) TCG Software Stack Developer's Reference Tspi_DecodeBER_TssBlob(3)

Tspi_DecodeBER_TssBlob - unwraps a BER-encoded TSS blob.

#include <tss/tspi.h>

TSS_RESULT Tspi_DecodeBER_TssBlob(UINT32  berBlobSize, BYTE*   berBlob,
                                  UINT32* blobType,    UINT32* rawBlobSize,
                                  BYTE*   rawBlob);

Tspi_DecodeBER_TssBlob is used to unwrap a BER-encoded blob in accordance with the ASN.1 data definitions in the Portable Data section of the Trusted Computing Group Software Stack Specification Version 1.2.

Size of the BER-encoded blob.

Pointer to the BER-encoded blob.

Pointer to the type of blob being unwrapped (refer to the TSS_BLOB_TYPE_* constants).

Pointer to the size of the rawBlob buffer. On input this parameter contains a pointer to the maximum size of the supplied rawBlob buffer. On output this parameter contains a pointer to the actual size of the unwrapped blob. On input, if this parameter points to a value of 0, then this function will return the size of the buffer required to hold the unwrapped blob without writing to the rawBlob buffer.

Note: The output data must be shorter than the BER-encoding, so berBlobSize is a useful upper limit on rawBlob buffer size.

Pointer to a buffer to hold the unwrapped blob.

Tspi_EncodeDER_TssBlob returns TSS_SUCCESS on success, otherwise one of the following values are returned:

TSS_E_BAD_PARAMETER
TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS.

Tspi_DecodeBER_TssBlob conforms to the Trusted Computing Group Software Specification Version 1.2

Tspi_DecodeBER_TssBlob(3).

2007-06-12 TSS 1.2