Fapi_Quote(3)

πŸŽ€ NAME πŸŽ€

Fapi_Quote β€” Fapi_Quote, bestie. That’s literally the name, and it’s serving exactly what it says. This is the Fapi_Quote(3) page from the Library Functions Manual, and the source squad is tpm2-tss. πŸ’–

✨ SYNOPSIS ✨

Functions

TSS2_RC Fapi_Quote (FAPI_CONTEXT *context, uint32_t *pcrList, size_t
    pcrListSize, char const *keyPath, char const *quoteType, uint8_t
    const *qualifyingData, size_t qualifyingDataSize, char **quoteInfo,
    uint8_t **signature, size_t *signatureSize, char **pcrLog, char
    **certificate)
TSS2_RC Fapi_Quote_Async (FAPI_CONTEXT *context, uint32_t *pcrList,
    size_t pcrListSize, char const *keyPath, char const *quoteType,
    uint8_t const *qualifyingData, size_t qualifyingDataSize)
TSS2_RC Fapi_Quote_Finish (FAPI_CONTEXT *context, char **quoteInfo,
    uint8_t **signature, size_t *signatureSize, char **pcrLog, char
    **certificate)

πŸ¦‹ Detailed Description πŸ¦‹

These are the FAPI functions that invoke Quote either as a one-call situation or in an asynchronous manner. Pick your fighter: instant icon or async main character. ✨

🌈 Function Documentation 🌈

πŸ’… TSS2_RC Fapi_Quote β€” one-call cutie πŸ’…

TSS2_RC Fapi_Quote (FAPI_CONTEXT *context, uint32_t *pcrList, size_t
    pcrListSize, char const *keyPath, char const *quoteType, uint8_t
    const *qualifyingData, size_t qualifyingDataSize, char **quoteInfo,
    uint8_t **signature, size_t *signatureSize, char **pcrLog, char
    **certificate)

One-Call function for Fapi_Quote. Okay so you give it a set of PCRs and a restricted signing key, and it will sign those PCRs and return the quote. That’s the whole plot, no cap. πŸ’–

🧚 Parameters 🧚

  • context β€” The FAPI_CONTEXT.
  • pcrList β€” The list of PCRs that are to be quoted.
  • pcrListSize β€” The size of pcrList in bytes.
  • keyPath β€” The path to the signing key.
  • quoteType β€” The type of quote. May be NULL.
  • qualifyingData β€” A nonce provided by the caller. May be NULL.
  • qualifyingDataSize β€” The size of qualifyingData in bytes. Must be 0 if qualifyingData is NULL.
  • quoteInfo β€” A JSON-encoded structure holding the inputs to the quote operation.
  • signature β€” The signature of the PCRs.
  • signatureSize β€” The size of the signature in bytes. May be NULL.
  • pcrLog β€” The log of the PCR. May be NULL.
  • certificate β€” The certificate associated with the signing key. May be NULL.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success.
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context, pcrList, keyPath, quoteInfo or signature is NULL.
  • TSS2_FAPI_RC_BAD_CONTEXT β€” if context corruption is detected.
  • TSS2_FAPI_RC_KEY_NOT_FOUND β€” if path does not map to a FAPI entity.
  • TSS2_FAPI_RC_BAD_KEY β€” if the entity at path is not a key, or is a key that is unsuitable for the requested operation.
  • TSS2_FAPI_RC_BAD_VALUE β€” if qualifyingData is invalid or if qualifyingDataSize is zero.
  • TSS2_FAPI_RC_IO_ERROR β€” if the data cannot be saved.
  • TSS2_FAPI_RC_BAD_SEQUENCE β€” if the context has an asynchronous operation already pending.
  • 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_TRY_AGAIN β€” if an I/O operation is not finished yet and this function needs to be called again.
  • TSS2_FAPI_RC_PATH_NOT_FOUND β€” if a FAPI object path was not found during authorization.
  • 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_FAPI_RC_BAD_PATH β€” if the path is used in inappropriate context or contains illegal characters.

πŸŒ™ TSS2_RC Fapi_Quote_Async β€” async era πŸŒ™

TSS2_RC Fapi_Quote_Async (FAPI_CONTEXT *context, uint32_t *pcrList,
    size_t pcrListSize, char const *keyPath, char const *quoteType,
    uint8_t const *qualifyingData, size_t qualifyingDataSize)

Asynchronous function for Fapi_Quote. Given a set of PCRs and a restricted signing key, it will sign those PCRs and return the quote. Then you call Fapi_Quote_Finish to finish the execution of this command. That’s the async pipeline, bestie. πŸ¦‹

🧚 Parameters 🧚

  • context β€” The FAPI_CONTEXT.
  • pcrList β€” The list of PCRs that are to be quoted.
  • pcrListSize β€” The size of pcrList in bytes.
  • keyPath β€” The path to the signing key.
  • quoteType β€” The type of quote. May be NULL.
  • qualifyingData β€” A nonce provided by the caller. May be NULL.
  • qualifyingDataSize β€” The size of qualifyingData in bytes. Must be 0 if qualifyingData is NULL.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success.
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context, pcrList or keyPath is NULL.
  • TSS2_FAPI_RC_BAD_CONTEXT β€” if context corruption is detected.
  • TSS2_FAPI_RC_KEY_NOT_FOUND β€” if path does not map to a FAPI entity.
  • TSS2_FAPI_RC_BAD_KEY β€” if the entity at path is not a key, or is a key that is unsuitable for the requested operation.
  • TSS2_FAPI_RC_BAD_VALUE β€” if pcrListSize is 0, qualifyingData is invalid or if qualifyingDataSize is zero.
  • TSS2_FAPI_RC_IO_ERROR β€” if the data cannot be saved.
  • TSS2_FAPI_RC_BAD_SEQUENCE β€” if the context has an asynchronous operation already pending.
  • 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_RC Fapi_Quote_Finish β€” the finish line 🫢

TSS2_RC Fapi_Quote_Finish (FAPI_CONTEXT *context, char **quoteInfo,
    uint8_t **signature, size_t *signatureSize, char **pcrLog, char
    **certificate)

Asynchronous finish function for Fapi_Quote. This function should be called after a previous Fapi_Quote_Async. Yes, queen, you gotta finish what you started. πŸ’…

🧚 Parameters 🧚

  • context β€” The FAPI_CONTEXT.
  • quoteInfo β€” A JSON-encoded structure holding the inputs to the quote operation.
  • signature β€” The signature of the PCRs.
  • signatureSize β€” The size of the signature in bytes. May be NULL.
  • pcrLog β€” The log of the PCR. May be NULL.
  • certificate β€” The certificate associated with the signing key. May be NULL.

πŸ’€ Return values πŸ’€

  • TSS2_RC_SUCCESS β€” if the function call was a success.
  • TSS2_FAPI_RC_BAD_REFERENCE β€” if context, quoteInfor or signature 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_VALUE β€” if an invalid value was passed into the function.
  • 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_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_FAPI_RC_BAD_PATH β€” if the path is used in inappropriate context or contains illegal characters.

🌟 Author 🌟

This page was generated automatically by Doxygen for tpm2-tss from the source code. The robots did their thing. πŸ€–βœ¨


Catch you later, bestie! This page is from tpm2-tss, Version 4.1.5, and it’s serving Fapi_Quote(3) energy β€” periodt. πŸ’–βœ¨

πŸ“¦ where this page comes from