Esys_ChangeEPS(3)

πŸ’… Esys_ChangeEPS(3) β€” like, the ESAPI glow-up for TPM2_ChangeEPS

okay bestie, so this page lives in the Library Functions Manual and honestly? it's giving "small but mighty." it's all about the ESAPI function that calls TPM2_ChangeEPS, and you can run it either as a one-call girlie or in an asynchronous way. pick your fighter. ✨


🌸 NAME 🌸

Esys_ChangeEPS β€” the ESAPI function for the TPM2_ChangeEPS command. that's it, that's the whole name section, we love a concise queen. πŸ‘‘


πŸŽ€ SYNOPSIS πŸŽ€

Functions

TSS2_RC Esys_ChangeEPS_Async (ESYS_CONTEXT *esysContext, ESYS_TR
    authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
TSS2_RC Esys_ChangeEPS (ESYS_CONTEXT *esysContext, ESYS_TR authHandle,
    ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
TSS2_RC Esys_ChangeEPS_Finish (ESYS_CONTEXT *esysContext)

πŸ¦‹ Detailed Description πŸ¦‹

it's an ESAPI function whose whole job is invoking the TPM2_ChangeEPS command β€” either as a one-call or in an asynchronous manner. two vibes, one command. no cap. πŸ’–


πŸ”₯ Function Documentation πŸ”₯

⭐ TSS2_RC Esys_ChangeEPS (ESYS_CONTEXT * esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)

One-Call function for TPM2_ChangeEPS

this one invokes the TPM2_ChangeEPS command in a one-call variant. meaning: the function will literally block until the TPM response is available. it's a "wait for your turn" icon. ⏳

all input parameters are const. and the memory for non-simple output parameters? allocated by the function implementation itself, so you don't gotta do it. 🫢

Parameters

  • esysContext β€” the ESYS_CONTEXT.
  • authHandle β€” TPM2_RH_PLATFORM+{PP}.
  • shandle1 β€” session handle for authorization of authHandle.
  • 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 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_ChangeEPS_Async (ESYS_CONTEXT * esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)

Asynchronous function for TPM2_ChangeEPS

this one invokes the TPM2_ChangeEPS command in a asynchronous variant. translation? the function dips out and returns as soon as the command has been sent downwards the stack to the TPM. no waiting around, she's busy. πŸ’…

all input parameters are const. and to actually retrieve the TPM's response, you call Esys_ChangeEPS_Finish. don't forget the finish, bestie, or you'll be left on read. 😭

Parameters

  • esysContext β€” the ESYS_CONTEXT.
  • authHandle β€” TPM2_RH_PLATFORM+{PP}.
  • shandle1 β€” session handle for authorization of authHandle.
  • shandle2 β€” second session handle.
  • shandle3 β€” third session handle.

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_ChangeEPS_Finish (ESYS_CONTEXT * esysContext)

Asynchronous finish function for TPM2_ChangeEPS

this function returns the results of a TPM2_ChangeEPS command invoked via Esys_ChangeEPS_Finish. yes, the docs literally say it was invoked via Esys_ChangeEPS_Finish β€” we're just relaying the lore, don't come for me. πŸ™ˆ

all non-simple output parameters are allocated by the function's implementation. and NULL can be passed for every output parameter if the value is not required β€” very "no thoughts, don't need it" of you. ✨

Parameters

  • esysContext β€” the ESYS_CONTEXT.

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. no human hand-wrote this, it just manifested. 🧚


and that's the whole page, babe πŸ’œ β€” this diva of a manpage came to you from tpm2-tss, proudly stamped Version 4.1.5. mwah. πŸ“

πŸ“¦ where this page comes from