Esys_NV_ReadLock(3)

πŸ’– Esys_NV_ReadLock(3) β€” Library Functions Manual tea πŸ’–

Okay bestie, welcome to the Esys_NV_ReadLock(3) page. This one lives in the Library Functions Manual, and it’s all about the ESAPI function for TPM2_NV_ReadLock. It’s giving docs realness, so let’s get into it. πŸ”₯


✨ NAME ✨

Esys_NV_ReadLock β€” the ESAPI function for the TPM2_NV_ReadLock command. That’s the name tea, no cap. πŸ’…


🌸 SYNOPSIS 🌸

🧚 Functions 🧚

Here are the three function besties, with the signatures kept exactly as they are:

TSS2_RC Esys_NV_ReadLock_Async (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
TSS2_RC Esys_NV_ReadLock (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)
TSS2_RC Esys_NV_ReadLock_Finish (ESYS_CONTEXT *esysContext)

πŸ¦‹ Detailed Description πŸ¦‹

This is the ESAPI function that invokes the TPM2_NV_ReadLock command. You can run it as a one-call or in an asynchronous manner β€” both modes are on the menu. ✨


πŸ‘‘ Function Documentation πŸ‘‘

πŸ’… TSS2_RC Esys_NV_ReadLock

TSS2_RC Esys_NV_ReadLock (ESYS_CONTEXT * esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)

✨ One-Call function for TPM2_NV_ReadLock ✨

Okay so this is the one-call variant. It invokes TPM2_NV_ReadLock and blocks until the TPM response is available β€” no sneaky early return. All input parameters are const. Memory for non-simple output parameters is allocated by the function implementation. πŸ’–

Parameters

  • esysContext β€” The ESYS_CONTEXT.
  • authHandle β€” The handle indicating the source of the authorization value.
  • nvIndex β€” The NV Index to be locked.
  • 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_NV_ReadLock_Async

TSS2_RC Esys_NV_ReadLock_Async (ESYS_CONTEXT * esysContext, ESYS_TR authHandle, ESYS_TR nvIndex, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3)

🌈 Asynchronous function for TPM2_NV_ReadLock 🌈

This is the async variant: it invokes TPM2_NV_ReadLock and returns as soon as the command has been sent downwards the stack to the TPM. All input parameters are const. To retrieve the TPM’s response, call Esys_NV_ReadLock_Finish. πŸ¦‹

Parameters

  • esysContext β€” The ESYS_CONTEXT.
  • authHandle β€” The handle indicating the source of the authorization value.
  • nvIndex β€” The NV Index to be locked.
  • 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_NV_ReadLock_Finish

TSS2_RC Esys_NV_ReadLock_Finish (ESYS_CONTEXT * esysContext)

πŸŽ€ Asynchronous finish function for TPM2_NV_ReadLock πŸŽ€

This function returns the results of a TPM2_NV_ReadLock command invoked via Esys_NV_ReadLock_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. πŸ’€

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. Yes, the docs have main character energy and were auto-generated. πŸ’…


Okay bye bestie β€” source/version/date footer tea: tpm2-tss, Version 4.1.5, and the page is Esys_NV_ReadLock(3). No extra date value in this footer, so I’m not inventing one πŸ™ˆ. Slay your TPM work. πŸ’œβœ¨

πŸ“¦ where this page comes from