Fapi_ExportKey(3)

πŸ’– Fapi_ExportKey(3) πŸ’–

okay so this is the Fapi_ExportKey(3) page from the Library Functions Manual, and bestie, it's literally all about Fapi_ExportKey. no cap. πŸ’…


✨ NAME ✨

Fapi_ExportKey β€” yep, the name is Fapi_ExportKey. iconic. πŸŽ€


🌸 SYNOPSIS 🌸

🫢 Functions 🫢

TSS2_RC Fapi_ExportKey (FAPI_CONTEXT *context, char const
    *pathOfKeyToDuplicate, char const *pathToPublicKeyOfNewParent, char
    **exportedData)
TSS2_RC Fapi_ExportKey_Async (FAPI_CONTEXT *context, char const
    *pathOfKeyToDuplicate, char const *pathToPublicKeyOfNewParent)
TSS2_RC Fapi_ExportKey_Finish (FAPI_CONTEXT *context, char
    **exportedData)

πŸ¦‹ Detailed Description πŸ¦‹

These are the FAPI functions that invoke ExportKey β€” either as a one-call situation or in an asynchronous manner. slay. ✨


πŸ’œ Function Documentation πŸ’œ

πŸ’– TSS2_RC Fapi_ExportKey β€” the one-call cutie πŸ’–

TSS2_RC Fapi_ExportKey (FAPI_CONTEXT * context, char const *
    pathOfKeyToDuplicate, char const * pathToPublicKeyOfNewParent, char **
    exportedData)

One-Call function for Fapi_ExportKey. okay so you give it a key, and β€” if the key is a storage key β€” it will duplicate the key and package up the duplicated key plus all the keys below it into a file that's ready to move to a new TPM. that's the whole vibe. 🫢

🌸 Parameters 🌸

  • context β€” The FAPI_CONTEXT.
  • pathOfKeyToDuplicate β€” The path to the root of the subtree to export.
  • pathToPublicKeyOfNewParent β€” The path to the public key of the new parent. May be NULL.
  • exportedData β€” The exported subtree.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success. πŸ’–
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context, pathOfKeyToDuplicate or exportedData is NULL.
  • TSS2_FAPI_RC_BAD_CONTEXT β€” if context corruption is detected.
  • TSS2_FAPI_RC_KEY_NOT_FOUND β€” if pathOfKeyToDuplicate or pathToPublicKeyOfNewParent does not map to a . FAPI object.
  • TSS2_FAPI_RC_BAD_KEY β€” if the key at pathToPublicKeyOfNewParent is not suitable for the requeste operation.
  • TSS2_FAPI_RC_KEY_NOT_DUPLICABLE β€” if the key is not a duplicable key.
  • TSS2_FAPI_RC_BAD_SEQUENCE β€” if the context has an asynchronous operation already pending.
  • TSS2_FAPI_RC_IO_ERROR β€” if the data cannot be saved.
  • TSS2_FAPI_RC_MEMORY β€” if the FAPI cannot allocate enough memory for internal operations or return parameters.
  • TSS2_FAPI_RC_NO_TPM β€” if FAPI was initialized in no-TPM-mode via its config file.
  • TSS2_FAPI_RC_PATH_NOT_FOUND β€” if a FAPI object path was not found during authorization.
  • TSS2_FAPI_RC_BAD_VALUE β€” if an invalid value was passed into the function.
  • TSS2_FAPI_RC_BAD_PATH β€” if a path is used in inappropriate context or contains illegal characters.
  • TSS2_FAPI_RC_TRY_AGAIN β€” if an I/O operation is not finished yet and this function needs to be called again.
  • TSS2_FAPI_RC_GENERAL_FAILURE β€” if an internal error occurred.
  • TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN β€” if a required authorization callback is not set.
  • TSS2_FAPI_RC_AUTHORIZATION_FAILED β€” if the authorization attempt fails.
  • TSS2_FAPI_RC_POLICY_UNKNOWN β€” if policy search for a certain policy digest was not successful.
  • TSS2_ESYS_RC_* β€” possible error codes of ESAPI.
  • TSS2_FAPI_RC_NOT_PROVISIONED β€” FAPI was not provisioned.

πŸ¦‹ TSS2_RC Fapi_ExportKey_Async β€” the async bestie πŸ¦‹

TSS2_RC Fapi_ExportKey_Async (FAPI_CONTEXT * context, char const *
    pathOfKeyToDuplicate, char const * pathToPublicKeyOfNewParent)

Asynchronous function for Fapi_ExportKey. same energy as above: given a key, it will β€” if the key is a storage key β€” duplicate the key and package up the duplicated key and all keys below it into a file ready to move to a new TPM. then you call Fapi_ExportKey_Finish to finish the execution of this command. periodt. ✨

🌸 Parameters 🌸

  • context β€” The FAPI_CONTEXT.
  • pathOfKeyToDuplicate β€” The path to the root of the subtree to export.
  • pathToPublicKeyOfNewParent β€” The path to the public key of the new parent.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success. πŸ’–
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context or pathOfKeyToDuplicate is NULL.
  • TSS2_FAPI_RC_BAD_CONTEXT β€” if context corruption is detected.
  • TSS2_FAPI_RC_KEY_NOT_FOUND β€” if pathOfKeyToDuplicate or pathToPublicKeyOfNewParent does not map to a . FAPI object.
  • TSS2_FAPI_RC_BAD_KEY β€” if the key at pathToPublicKeyOfNewParent is not suitable for the requeste operation.
  • TSS2_FAPI_RC_KEY_NOT_DUPLICABLE β€” if the key is not a duplicable key.
  • TSS2_FAPI_RC_BAD_SEQUENCE β€” if the context has an asynchronous operation already pending.
  • TSS2_FAPI_RC_IO_ERROR β€” if the data cannot be saved.
  • TSS2_FAPI_RC_MEMORY β€” if the FAPI cannot allocate enough memory for internal operations or return parameters.
  • TSS2_FAPI_RC_NO_TPM β€” if FAPI was initialized in no-TPM-mode via its config file.
  • TSS2_FAPI_RC_PATH_NOT_FOUND β€” if a FAPI object path was not found during authorization.
  • TSS2_FAPI_RC_BAD_VALUE β€” if an invalid value was passed into the function.
  • TSS2_FAPI_RC_NOT_PROVISIONED β€” FAPI was not provisioned.
  • TSS2_FAPI_RC_BAD_PATH β€” if the path is used in inappropriate context or contains illegal characters.

πŸŽ€ TSS2_RC Fapi_ExportKey_Finish β€” the finish-line fairy πŸŽ€

TSS2_RC Fapi_ExportKey_Finish (FAPI_CONTEXT * context, char ** exportedData)

Asynchronous finish function for Fapi_ExportKey. this one should be called after a previous Fapi_ExportKey_Async. like, don't skip it, bestie. 😭

🌸 Parameters 🌸

  • context β€” The FAPI_CONTEXT.
  • exportedData β€” The exported subtree.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success. πŸ’–
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context or exportedData is NULL.
  • TSS2_FAPI_RC_BAD_CONTEXT β€” if context corruption is detected.
  • TSS2_FAPI_RC_BAD_SEQUENCE β€” if the context has an asynchronous operation already pending.
  • TSS2_FAPI_RC_IO_ERROR β€” if the data cannot be saved.
  • TSS2_FAPI_RC_MEMORY β€” if the FAPI cannot allocate enough memory for internal operations or return parameters.
  • TSS2_FAPI_RC_TRY_AGAIN β€” if the asynchronous operation is not yet complete. Call this function again later.
  • TSS2_FAPI_RC_BAD_PATH β€” if a path is used in inappropriate context or contains illegal characters.
  • TSS2_FAPI_RC_BAD_VALUE β€” if an invalid value was passed into the function.
  • TSS2_FAPI_RC_GENERAL_FAILURE β€” if an internal error occurred.
  • TSS2_FAPI_RC_PATH_NOT_FOUND β€” if a FAPI object path was not found during authorization.
  • TSS2_FAPI_RC_KEY_NOT_FOUND β€” if a key was not found.
  • TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN β€” if a required authorization callback is not set.
  • TSS2_FAPI_RC_AUTHORIZATION_FAILED β€” if the authorization attempt fails.
  • TSS2_FAPI_RC_POLICY_UNKNOWN β€” if policy search for a certain policy digest was not successful.
  • TSS2_FAPI_RC_NO_TPM β€” if FAPI was initialized in no-TPM-mode via its config file.
  • TSS2_ESYS_RC_* β€” possible error codes of ESAPI.
  • TSS2_FAPI_RC_NOT_PROVISIONED β€” FAPI was not provisioned.

πŸ‘‘ Author πŸ‘‘

This page was generated automatically by Doxygen for tpm2-tss from the source code. no cap, that's the author situation. 🫢


okay bye bestie πŸ’… this page is from tpm2-tss Version 4.1.5, and the footer is literally Fapi_ExportKey(3) β€” no date in sight, just vibes. 🌈

πŸ“¦ where this page comes from