Esys_NV_DefineSpace(3)

πŸ’– NAME πŸ’–

okay bestie, welcome to the Esys_NV_DefineSpace(3) page from the Library Functions Manual β€” this is all about Esys_NV_DefineSpace: the ESAPI function for the TPM2_NV_DefineSpace command. πŸ¦‹βœ¨


✨ SYNOPSIS ✨

πŸ“š Functions πŸ“š

the function squad is literally right here:

TSS2_RC Esys_NV_DefineSpace_Async (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo)
TSS2_RC Esys_NV_DefineSpace (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo, ESYS_TR *nvHandle)
TSS2_RC Esys_NV_DefineSpace_Finish (ESYS_CONTEXT *esysContext, ESYS_TR *nvHandle)

πŸ¦‹ Detailed Description πŸ¦‹

so this is the ESAPI function to invoke the TPM2_NV_DefineSpace command, either as a one-call or in an asynchronous manner. that's the whole vibe: one-call mode or async mode, pick your main character energy. πŸ’…


πŸ‘‘ Function Documentation πŸ‘‘

πŸ’… TSS2_RC Esys_NV_DefineSpace (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo, ESYS_TR *nvHandle) πŸ’…

✨ One-Call function for TPM2_NV_DefineSpace ✨

this function invokes the TPM2_NV_DefineSpace command in a one-call variant. meaning: 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. no cap, that's the tea. 🫢

🌸 Parameters 🌸

  • esysContext β€” the ESYS_CONTEXT.
  • authHandle β€” TPM2_RH_OWNER or TPM2_RH_PLATFORM+{PP}.
  • shandle1 β€” session handle for authorization of authHandle.
  • shandle2 β€” second session handle.
  • shandle3 β€” third session handle.
  • auth β€” the authorization value.
  • publicInfo β€” the public parameters of the NV area.
  • nvHandle β€” 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_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_DefineSpace_Async (ESYS_CONTEXT *esysContext, ESYS_TR authHandle, ESYS_TR shandle1, ESYS_TR shandle2, ESYS_TR shandle3, const TPM2B_AUTH *auth, const TPM2B_NV_PUBLIC *publicInfo) πŸ’…

✨ Asynchronous function for TPM2_NV_DefineSpace ✨

this one invokes the TPM2_NV_DefineSpace command in a asynchronous variant. meaning: it 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_DefineSpace_Finish. periodt. πŸ”₯

🌸 Parameters 🌸

  • esysContext β€” the ESYS_CONTEXT.
  • authHandle β€” TPM2_RH_OWNER or TPM2_RH_PLATFORM+{PP}.
  • shandle1 β€” session handle for authorization of authHandle.
  • shandle2 β€” second session handle.
  • shandle3 β€” third session handle.
  • auth β€” the authorization value.
  • publicInfo β€” the public parameters of the NV area.

πŸ’€ 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_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_DefineSpace_Finish (ESYS_CONTEXT *esysContext, ESYS_TR *nvHandle) πŸ’…

✨ Asynchronous finish function for TPM2_NV_DefineSpace ✨

this function returns the results of a TPM2_NV_DefineSpace command invoked via Esys_NV_DefineSpace_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. iconic behavior, honestly. 🌈

🌸 Parameters 🌸

  • esysContext β€” the ESYS_CONTEXT.
  • nvHandle β€” 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.


and that's the whole page, bestie πŸ’– the source/version footer energy is tpm2-tss, Version 4.1.5 β€” and there's no date in that footer, so I'm not inventing one, periodt. πŸŽ€βœ¨

πŸ“¦ where this page comes from