Provided by: libtspi-dev_0.3.14+fixed1-1build1_amd64 bug

NAME

       Tspi_TPM_GetCapability - get information on the capabilities of the TPM

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_RESULT Tspi_TPM_GetCapability(TSS_HTPM hTPM,              TSS_FLAG capArea,
                                         UINT32   ulSubCapLength,    BYTE*    rgbSubCap,
                                         UINT32*  pulRespDataLength, BYTE**   prgbRespData);

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.

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.

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  authorized).  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.

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.

CONFORMING TO

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

SEE ALSO

       Tspi_TPM_GetCapabilitySigned(3), Tspi_TPM_GetEvent(3).