Esys_EvictControl(3)

✨ NAME ✨

okay so welcome to Esys_EvictControl(3) bestie β€” this is a page from the Library Functions Manual, and it's literally all about the ESAPI function for the TPM2_EvictControl command. that's the whole vibe. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions

TSS2_RC Esys_EvictControl_Async (ESYS_CONTEXT *esysContext, ESYS_TR
    auth, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2,
    ESYS_TR shandle3, TPMI_DH_PERSISTENT persistentHandle)
TSS2_RC Esys_EvictControl (ESYS_CONTEXT *esysContext, ESYS_TR auth,
    ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR
    shandle3, TPMI_DH_PERSISTENT persistentHandle, ESYS_TR
    *newObjectHandle)
TSS2_RC Esys_EvictControl_Finish (ESYS_CONTEXT *esysContext, ESYS_TR
    *newObjectHandle)

🌈 Detailed Description 🌈

so basically this is the ESAPI function that lets you invoke the TPM2_EvictControl command β€” and you get to pick your era: either as a one-call situation or in an asynchronous manner. choose your fighter, both are valid. ✨


πŸ’– Function Documentation πŸ’–

TSS2_RC Esys_EvictControl (ESYS_CONTEXT * esysContext, ESYS_TR auth, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_DH_PERSISTENT persistentHandle, ESYS_TR * newObjectHandle)

One-Call function for TPM2_EvictControl πŸ‘‘

this one invokes the TPM2_EvictControl command in a one-call variant. what that means for you, bestie: the function will literally block until the TPM response is available. yes, it's giving main character who waits for their answer. all input parameters are const. the memory for non-simple output parameters is allocated by the function implementation, so you don't gotta do it yourself. 🫢

Parameters

  • esysContext β€” The ESYS_CONTEXT.
  • auth β€” TPM2_RH_OWNER or TPM2_RH_PLATFORM+{PP}.
  • objectHandle β€” The handle of a loaded object.
  • shandle1 β€” Session handle for authorization of auth
  • shandle2 β€” Second session handle.
  • shandle3 β€” Third session handle.
  • persistentHandle β€” If objectHandle is a transient object handle, then this is the persistent handle for the object.
  • newObjectHandle β€” ESYS_TR handle of ESYS resource for TPM2_HANDLE.

Return values

  • TSS2_RC_SUCCESS if the function call was a success.
  • TSS2_ESYS_RC_BAD_REFERENCE if the esysContext or required input pointers or required output handle references are NULL.
  • TSS2_ESYS_RC_BAD_CONTEXT if esysContext corruption 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 the ESYS_TR objects are unknown to the ESYS_CONTEXT or are of the wrong type or if required ESYS_TR objects are ESYS_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_RCs produced by lower layers of the software stack may be returned to the caller unaltered unless handled internally.

TSS2_RC Esys_EvictControl_Async (ESYS_CONTEXT * esysContext, ESYS_TR auth, ESYS_TR objectHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, TPMI_DH_PERSISTENT persistentHandle)

Asynchronous function for TPM2_EvictControl 🧚

this one invokes the TPM2_EvictControl command in a asynchronous variant. translation: the function will return as soon as the command has been sent downwards the stack to the TPM β€” no waiting around, it's out the door the second it hits send. all input parameters are const. in order to retrieve the TPM's response call Esys_EvictControl_Finish. iykyk. ⭐

Parameters

  • esysContext β€” The ESYS_CONTEXT.
  • auth β€” TPM2_RH_OWNER or TPM2_RH_PLATFORM+{PP}.
  • objectHandle β€” The handle of a loaded object.
  • shandle1 β€” Session handle for authorization of auth
  • shandle2 β€” Second session handle.
  • shandle3 β€” Third session handle.
  • persistentHandle β€” If objectHandle is a transient object handle, then this is the persistent handle for the object.

Return values

  • ESYS_RC_SUCCESS if the function call was a success.
  • TSS2_ESYS_RC_BAD_REFERENCE if the esysContext or required input pointers or required output handle references are NULL.
  • TSS2_ESYS_RC_BAD_CONTEXT if esysContext corruption is detected.
  • TSS2_ESYS_RC_MEMORY if the ESAPI cannot allocate enough memory for internal operations or return parameters.
  • TSS2_RCs produced 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 the ESYS_TR objects are unknown to the ESYS_CONTEXT or are of the wrong type or if required ESYS_TR objects are ESYS_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_EvictControl_Finish (ESYS_CONTEXT * esysContext, ESYS_TR * newObjectHandle)

Asynchronous finish function for TPM2_EvictControl πŸŽ€

this is the one that comes back with the receipts. it returns the results of a TPM2_EvictControl command invoked via Esys_EvictControl_Finish. all non-simple output parameters are allocated by the function's implementation. and bestie, here's a little gift: NULL can be passed for every output parameter if the value is not required. lowkey generous of them. πŸ’–

Parameters

  • esysContext β€” The ESYS_CONTEXT.
  • newObjectHandle β€” ESYS_TR handle of ESYS resource for TPM2_HANDLE.

Return values

  • TSS2_RC_SUCCESS on success
  • ESYS_RC_SUCCESS if the function call was a success.
  • TSS2_ESYS_RC_BAD_REFERENCE if the esysContext or required input pointers or required output handle references are NULL.
  • TSS2_ESYS_RC_BAD_CONTEXT if esysContext corruption 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_RCs produced 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. not a human girlie writing this by hand, it's the bot doing the homework. πŸ€–βœ¨


ok that's the whole page bestie, go forth and evict some controls πŸ’…πŸ”₯

tpm2-tss Β· Version 4.1.5 Β· Esys_EvictControl(3) β€” mwah, that's the sign-off, ily, bye! πŸ«ΆπŸŽ€πŸ¦‹

πŸ“¦ where this page comes from