Esys_ClearControl(3)
okay so this is Esys_ClearControl(3) from the Library Functions Manual, and bestie, itβs giving βESAPI wrapper for TPM2_ClearControlβ with a whole ensemble cast of functions. Buckle up β every detail is staying, no cap. π
π NAME π
Esys_ClearControl β the ESAPI function for the TPM2_ClearControl command. Short, sweet, iconic.
π¦ SYNOPSIS π¦
π§ Functions π§
TSS2_RC Esys_ClearControl_Async (ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
TSS2_RC Esys_ClearControl (ESYS_CONTEXT *esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
TSS2_RC Esys_ClearControl_Finish (ESYS_CONTEXT *esysContext)
TSS2_RC Esys_Clear (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
TSS2_RC Esys_Clear_Finish (ESYS_CONTEXT *esysContext)
β¨ Detailed Description β¨
This is the ESAPI function for invoking the TPM2_ClearControl command either as a one-call or in an asynchronous manner. Both modes are here, bestie β pick your vibe. π
π Function Documentation π
π«Ά Esys_Clear
TSS2_RC Esys_Clear (ESYS_CONTEXT * esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
One-Call function for TPM2_Clear
Okay so this one invokes the TPM2_Clear command in a one-call variant. That means 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. π₯
Parameters
esysContextβ TheESYS_CONTEXT.authHandleβTPM2_RH_LOCKOUTorTPM2_RH_PLATFORM+{PP}.shandle1β Session handle for authorization ofauthHandle.shandle2β Second session handle.shandle3β Third session handle.
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.
π«Ά Esys_Clear_Finish
TSS2_RC Esys_Clear_Finish (ESYS_CONTEXT * esysContext)
Asynchronous finish function for TPM2_Clear
This one returns the results of a TPM2_Clear command invoked via Esys_Clear_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. Yes bestie, every output parameter β if you donβt need the value, NULL is fine. π
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.
π«Ά Esys_ClearControl
TSS2_RC Esys_ClearControl (ESYS_CONTEXT * esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
One-Call function for TPM2_ClearControl
This invokes the TPM2_ClearControl command in a one-call variant. 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. Periodt β blocking until the TPM answers is literally the whole one-call mood. π
Parameters
esysContextβ TheESYS_CONTEXT.authβTPM2_RH_LOCKOUTorTPM2_RH_PLATFORM+{PP}.shandle1β Session handle for authorization ofauth.shandle2β Second session handle.shandle3β Third session handle.disableβYESif thedisableOwnerClearflag is to be SET,NOif the flag is to be CLEAR.. (the double dot is part of the original vibe π)
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.
π«Ά Esys_ClearControl_Async
TSS2_RC Esys_ClearControl_Async (ESYS_CONTEXT * esysContext, ESYS_TR auth, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_YES_NO disable)
Asynchronous function for TPM2_ClearControl
This invokes the TPM2_ClearControl command in an asynchronous variant. That means 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_ClearControl_Finish. Async queen behavior: send it down the stack and dip β then finish later. β¨
Parameters
esysContextβ TheESYS_CONTEXT.authβTPM2_RH_LOCKOUTorTPM2_RH_PLATFORM+{PP}.shandle1β Session handle for authorization ofauth.shandle2β Second session handle.shandle3β Third session handle.disableβYESif thedisableOwnerClearflag is to be SET,NOif the flag is to be CLEAR..
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.
π«Ά Esys_ClearControl_Finish
TSS2_RC Esys_ClearControl_Finish (ESYS_CONTEXT * esysContext)
Asynchronous finish function for TPM2_ClearControl
This returns the results of a TPM2_ClearControl command invoked via Esys_ClearControl_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. Finish-line energy: collect the results, allocate what needs allocating, and keep it cute. π¦
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 β¨
okay so nobody actually wrote this by hand, bestie β it was generated automatically by Doxygen for tpm2-tss from the source code. so the real main characters here are the source code and the doc generator, and honestly? they ate. π
and that's the whole page, bestie, you made it all the way to the end π the docs you just read come from tpm2-tss, Version 4.1.5, and the page is dated Esys_ClearControl(3) β go forth and clear (or don't clear) those controls with confidence, ily, bye πβ¨
<!-- footnote-ish: original footer line read tpm2-tss Version 4.1.5 Esys_ClearControl(3) -->
π¦ 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