TCG Software Stack Developer's Reference
Tspi_TPM_PcrExtend - extend a PCR register and optionally write the PCR event
log.
#include <tss/platform.h>
#include <tss/tcpa_defines.h>
#include <tss/tcpa_typedef.h>
#include <tss/tcpa_struct.h>
#include <tss/tss_typedef.h>
#include <tss/tss_structs.h>
#include <tss/tspi.h>
TSS_RESULT Tspi_TPM_PcrExtend(TSS_HTPM hTPM, UINT32 ulPcrIndex,
UINT32 ulPcrDataLength, BYTE* pbPcrData,
TSS_PCR_EVENT* pPcrEvent,
UINT32* pulPcrValueLength, BYTE** prgbPcrValue);
Tspi_TPM_PcrExtend extends a PCR register and writes the PCR event log if
one is supplied by the user.
The hTPM parameter is used to specify the handle of the TPM object. The
command to get the TPM to test itself will be sent here.
The ulPcrIndex parameter is the index of the PCR to extend.
The ulPcrDataLength parameter is the length in bytes of the
pbPcrData parameter.
The pbPcrData parameter is a pointer to data which will be used in the
extend operation.
The pPcrEvent parameter is the TSS_PCR_EVENT structure to be passed to
the TCS to record the extend event. If pPcrEvent is not NULL, the
application should fill out the members of the structure that it cares about.
The pulPcrValueLength parameter receives the length in bytes of the
prgbPcrValue parameter.
The prgbPcrValue receives a pointer to the memory block containing the
PCR data after the extend operation.
Tspi_TPM_PcrExtend returns TSS_SUCCESS on success, otherwise one of the
following values is returned:
- TSS_E_INVALID_HANDLE
- hTPM is not a valid handle.
- TSS_E_INTERNAL_ERROR
- An internal SW error has been detected.
- TSS_E_BAD_PARAMETER
- One or more parameters is bad.
Tspi_TPM_PcrExtend conforms to the Trusted Computing Group Software
Specification version 1.1 Golden