Esys_PCR_Extend(3)
π Esys_PCR_Extend(3) β TPM2_PCR_Extend but make it ESAPI β¨
okay bestie, this is the Esys_PCR_Extend(3) page from the tpm2-tss Library Functions Manual, and itβs literally all about wrapping the TPM2_PCR_Extend command in ESAPI π. No cap, itβs giving βPCR extend, but make it function-call friendly.β
β¨ NAME β¨
Esys_PCR_Extend β the ESAPI function for the TPM2_PCR_Extend command, periodt.
πΈ SYNOPSIS πΈ
π Functions π
TSS2_RC Esys_PCR_Extend_Async (ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES *digests)
TSS2_RC Esys_PCR_Extend (ESYS_CONTEXT *esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES *digests)
TSS2_RC Esys_PCR_Extend_Finish (ESYS_CONTEXT *esysContext)
π Detailed Description π
ESAPI function to invoke the TPM2_PCR_Extend command either as a one-call or in an asynchronous manner. Thatβs the whole vibe: one-and-done, or send-it-and-finish-later π¦.
π₯ Function Documentation π₯
π
TSS2_RC Esys_PCR_Extend (...) β one-call, block-until-the-TPM-answers energy
TSS2_RC Esys_PCR_Extend (ESYS_CONTEXT * esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES * digests)
One-Call function for TPM2_PCR_Extend
This function invokes the TPM2_PCR_Extend command in a one-call variant. Translation: it will block until the TPM response is available. All input parameters are const. The memory for non-simple output parameters is allocated by the function implementation. Slay, but synchronously π
.
π Parameters π
esysContextβ TheESYS_CONTEXT.pcrHandleβ Handle of the PCR.shandle1β Session handle for authorization ofpcrHandle.shandle2β Second session handle.shandle3β Third session handle.digestsβ List of tagged digest values to be extended.
π Return values π
TSS2_RC_SUCCESSβ if the function call was a success.TSS2_ESYS_RC_BAD_REFERENCEβ if theesysContextor required input pointers or required output handle references areNULL.TSS2_ESYS_RC_BAD_CONTEXTβ ifesysContextcorruption is detected.TSS2_ESYS_RC_MEMORYβ if the ESAPI cannot allocate enough memory for internal operations or return parameters.TSS2_ESYS_RC_BAD_SEQUENCEβ if the context has an asynchronous operation already pending.TSS2_ESYS_RC_INSUFFICIENT_RESPONSEβ if the TPMβs response does not at least contain the tag, response length, and response code.TSS2_ESYS_RC_MALFORMED_RESPONSEβ if the TPMβs response is corrupted.TSS2_ESYS_RC_RSP_AUTH_FAILEDβ if the response HMAC from the TPM did not verify.TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONSβ if more than one session has the'decrypt'attribute bit set.TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONSβ if more than one session has the'encrypt'attribute bit set.TSS2_ESYS_RC_BAD_TRβ if any of theESYS_TRobjects are unknown to theESYS_CONTEXTor are of the wrong type or if requiredESYS_TRobjects areESYS_TR_NONE.TSS2_ESYS_RC_NO_DECRYPT_PARAMβ if one of the sessions has the'decrypt'attribute set and the command does not support encryption of the first command parameter.TSS2_ESYS_RC_NO_ENCRYPT_PARAMβ if one of the sessions has the'encrypt'attribute set and the command does not support encryption of the first response parameter.TSS2_RCsproduced by lower layers of the software stack may be returned to the caller unaltered unless handled internally.
π¦ TSS2_RC Esys_PCR_Extend_Async (...) β send it and come back later
TSS2_RC Esys_PCR_Extend_Async (ESYS_CONTEXT * esysContext, ESYS_TR pcrHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPML_DIGEST_VALUES * digests)
Asynchronous function for TPM2_PCR_Extend
This function invokes the TPM2_PCR_Extend command in a asynchronous variant. The way that this works: it will return as soon as the command has been sent downwards the stack to the TPM. All input parameters are const. In order to retrieve the TPMβs response call Esys_PCR_Extend_Finish. Itβs giving βdrop the message, then check the notificationsβ π±β¨.
π Parameters π
esysContextβ TheESYS_CONTEXT.pcrHandleβ Handle of the PCR.shandle1β Session handle for authorization ofpcrHandle.shandle2β Second session handle.shandle3β Third session handle.digestsβ List of tagged digest values to be extended.
π Return values π
ESYS_RC_SUCCESSβ if the function call was a success.TSS2_ESYS_RC_BAD_REFERENCEβ if theesysContextor required input pointers or required output handle references areNULL.TSS2_ESYS_RC_BAD_CONTEXTβ ifesysContextcorruption is detected.TSS2_ESYS_RC_MEMORYβ if the ESAPI cannot allocate enough memory for internal operations or return parameters.TSS2_RCsproduced by lower layers of the software stack may be returned to the caller unaltered unless handled internally.TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONSβ if more than one session has the'decrypt'attribute bit set.TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONSβ if more than one session has the'encrypt'attribute bit set.TSS2_ESYS_RC_BAD_TRβ if any of theESYS_TRobjects are unknown to theESYS_CONTEXTor are of the wrong type or if requiredESYS_TRobjects areESYS_TR_NONE.TSS2_ESYS_RC_NO_DECRYPT_PARAMβ if one of the sessions has the'decrypt'attribute set and the command does not support encryption of the first command parameter.TSS2_ESYS_RC_NO_ENCRYPT_PARAMβ if one of the sessions has the'encrypt'attribute set and the command does not support encryption of the first response parameter.
π§ TSS2_RC Esys_PCR_Extend_Finish (...) β the callback, the closure, the final boss
TSS2_RC Esys_PCR_Extend_Finish (ESYS_CONTEXT * esysContext)
Asynchronous finish function for TPM2_PCR_Extend
This function returns the results of a TPM2_PCR_Extend command invoked via Esys_PCR_Extend_Finish. All non-simple output parameters are allocated by the functionβs implementation. NULL can be passed for every output parameter if the value is not required. Lowkey iconic: you can skip the output if you donβt need it π«Ά.
π Parameters π
esysContextβ TheESYS_CONTEXT.
π Return values π
TSS2_RC_SUCCESSβ on success.ESYS_RC_SUCCESSβ if the function call was a success.TSS2_ESYS_RC_BAD_REFERENCEβ if theesysContextor required input pointers or required output handle references areNULL.TSS2_ESYS_RC_BAD_CONTEXTβ ifesysContextcorruption is detected.TSS2_ESYS_RC_MEMORYβ if the ESAPI cannot allocate enough memory for internal operations or return parameters.TSS2_ESYS_RC_BAD_SEQUENCEβ if the context has an asynchronous operation already pending.TSS2_ESYS_RC_TRY_AGAINβ if the timeout counter expires before the TPM response is received.TSS2_ESYS_RC_INSUFFICIENT_RESPONSEβ if the TPMβs response does not at least contain the tag, response length, and response code.TSS2_ESYS_RC_RSP_AUTH_FAILEDβ if the response HMAC from the TPM did not verify.TSS2_ESYS_RC_MALFORMED_RESPONSEβ if the TPMβs response is corrupted.TSS2_RCsproduced by lower layers of the software stack may be returned to the caller unaltered unless handled internally.
π«Ά Author π«Ά
Generated automatically by Doxygen for tpm2-tss from the source code.
and thatβs the whole page, bestie π this little sign-off is brought to you by tpm2-tss, Version 4.1.5 β thatβs the footer flex, and thatβs the tea πβ¨
π¦ where this page comes from
- fedora 44: tpm2-tss-devel 4.1.5-1.fc44 Β· BSD-2-Clause
- fedora 44: tpm2-tss-devel 4.1.5-1.fc44 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms