logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Tspi_TPM_GetCapability - get information on the capabilities of the TPM

Conforming To

Tspi_TPM_GetCapability conforms to the Trusted Computing Group Software Specification version 1.1 Golden

Description

Tspi_TPM_GetCapability  gets  information on various capabilities of the TPM. This command can be used to
       learn how many PCRs the TPM supports, etc.

Name

       Tspi_TPM_GetCapability - get information on the capabilities of the TPM

Notes

       The following Capability Areas and Sub-Capability Areas are supported by 1.1 TSS's:

       TSS_TPMCAP_ORD - query whether an ordinal is supported by the TPM.
               subCaps: TPM_ORD_* (see tcpa_literals.h)

       TSS_TPMCAP_FLAG - query for the volatile and non-volatile flags inside the TPM.  (Must  be  owner  autho‐
       rized). In this case, the 2 UINT32 values will be returned concatenated together in prgbRespData.
               subCaps: ignored.

       TSS_TPMCAP_ALG - query whether an algorithm is supported by the TPM.
               subCaps: TSS_ALG_RSA
                        TSS_ALG_DES
                        TSS_ALG_3DES
                        TSS_ALG_SHA
                        TSS_ALG_HMAC
                        TSS_ALG_AES

       TSS_TPMCAP_PROPERTY - query a property of the TPM.
               subCaps: TSS_TPMCAP_PROP_PCR
                        TSS_TPMCAP_PROP_DIR
                        TSS_TPMCAP_PROP_MANUFACTURER
                        TSS_TPMCAP_PROP_SLOTS

       TSS_TPMCAP_VERSION - get the TSS_VERSION structure tha identifies the TPM.
               subCaps: ignored.

Parameters

hTPM
       The hTPM parameter is used to specify the handle of the TPM object.

   capArea
       The capArea parameter is the flag indicating the attribute to query. Possible values are:

   ulSubCapLength
       The ulSubCapLength parameter is the length in bytes of the rgbSubCap parameter.

   rgbSubCap
       The rgbSubCap parameter is the data indicating the attribute to query. Possible values are:

   pulRespDataLength
       The pulRespDataLength parameter is the length in bytes of the prgbRespData parameter.

   prgbRespData
       The prgbRespData parameter receives a pointer to the actual data of the specified attribute.

Return Codes

Tspi_TPM_GetCapability 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.

See Also

Tspi_TPM_GetCapabilitySigned(3), Tspi_TPM_GetEvent(3).

TSS 1.1                                            2004-05-25                          Tspi_TPM_GetCapability(3)

Synopsis

#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_RESULTTspi_TPM_GetCapability(TSS_HTPMhTPM,TSS_FLAGcapArea,UINT32ulSubCapLength,BYTE*rgbSubCap,UINT32*pulRespDataLength,BYTE**prgbRespData);

See Also