---
name: "Fapi_GetTpmBlobs"
section: "3"
platform: "linux"
package: "tpm2-tss"
version: "4.2.0-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Fapi_GetTpmBlobs"
---

# Fapi\_GetTpmBlobs(3)

Fapi\_GetTpmBlobs

## NAME

Fapi\_GetTpmBlobs - Fapi\_GetTpmBlobs

## SYNOPSIS

### Functions

TSS2\_RC **Fapi\_GetTpmBlobs** (**FAPI\_CONTEXT** \*context, char const \*path, uint8\_t \*\*tpm2bPublic, size\_t \*tpm2bPublicSize, uint8\_t \*\*tpm2bPrivate, size\_t \*tpm2bPrivateSize, char \*\*policy)\
 TSS2\_RC **Fapi\_GetTpmBlobs\_Async** (**FAPI\_CONTEXT** \*context, char const \*path)\
 TSS2\_RC **Fapi\_GetTpmBlobs\_Finish** (**FAPI\_CONTEXT** \*context, uint8\_t \*\*tpm2bPublic, size\_t \*tpm2bPublicSize, uint8\_t \*\*tpm2bPrivate, size\_t \*tpm2bPrivateSize, char \*\*policy)\

## Detailed Description

FAPI functions to invoke GetTPMBlobs either as one-call or in an asynchronous manner.

## Function Documentation

### TSS2\_RC Fapi\_GetTpmBlobs (FAPI\_CONTEXT \* context, char const \* path, uint8\_t \*\* tpm2bPublic, size\_t \* tpm2bPublicSize, uint8\_t \*\* tpm2bPrivate, size\_t \* tpm2bPrivateSize, char \*\* policy)

One-Call function for Fapi\_GetTpmBlobs

Get the public and private blobs of a TPM object. They can be loaded with a lower-level API such as the SAPI or the ESAPI.

**Parameters**

*context* The **FAPI\_CONTEXT** \
 *path* The path to the key for which the blobs will be returned \
 *tpm2bPublic* The returned public area of the object. May be NULL \
 *tpm2bPublicSize* The size of tpm2bPublic in bytes. May be NULL \
 *tpm2bPrivate* The returned private area of the object. May be NULL \
 *tpm2bPrivateSize* The size of tpm2bPrivate in bytes. May be NULL \
 *policy* The policy that is associated with the object encoded in JSON. May be NULL

**Return values**

*TSS2\_RC\_SUCCESS* if the function call was a success. \
 *TSS2\_FAPI\_RC\_BAD\_REFERENCE* if context or path is NULL. \
 *TSS2\_FAPI\_RC\_BAD\_CONTEXT* if context corruption is detected. \
 *TSS2\_FAPI\_RC\_BAD\_PATH* if path does not map to a FAPI entity. \
 *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\_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\_BAD\_VALUE* if an invalid value was passed into the function. \
 *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\_NOT\_PROVISIONED* FAPI was not provisioned.

### TSS2\_RC Fapi\_GetTpmBlobs\_Async (FAPI\_CONTEXT \* context, char const \* path)

Asynchronous function for Fapi\_GetTpmBlobs

Get the public and private blobs of a TPM object. They can be loaded with a lower-level API such as the SAPI or the ESAPI.

Call Fapi\_GetTpmBlobs\_Finish to finish the execution of this command.

**Parameters**

*context* The **FAPI\_CONTEXT** \
 *path* The path to the key for which the blobs will be returned

**Return values**

*TSS2\_RC\_SUCCESS* if the function call was a success. \
 *TSS2\_FAPI\_RC\_BAD\_REFERENCE* if context or path is NULL. \
 *TSS2\_FAPI\_RC\_BAD\_CONTEXT* if context corruption is detected. \
 *TSS2\_FAPI\_RC\_BAD\_PATH* if path does not map to a FAPI entity. \
 *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\_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\_BAD\_VALUE* if an invalid value was passed into the function. \
 *TSS2\_FAPI\_RC\_NOT\_PROVISIONED* FAPI was not provisioned.

### TSS2\_RC Fapi\_GetTpmBlobs\_Finish (FAPI\_CONTEXT \* context, uint8\_t \*\* tpm2bPublic, size\_t \* tpm2bPublicSize, uint8\_t \*\* tpm2bPrivate, size\_t \* tpm2bPrivateSize, char \*\* policy)

Asynchronous finish function for Fapi\_GetTpmBlobs

This function should be called after a previous Fapi\_GetTpmBlobs\_Async.

**Parameters**

*context* The **FAPI\_CONTEXT** \
 *tpm2bPublic* The returned public area of the object. May be NULL \
 *tpm2bPublicSize* The size of tpm2bPublic in bytes. May be NULL \
 *tpm2bPrivate* The returned private area of the object. May be NULL \
 *tpm2bPrivateSize* The size of tpm2bPrivate in bytes. May be NULL \
 *policy* The policy that is associated with the object encoded in JSON. May be NULL

**Return values**

*TSS2\_RC\_SUCCESS* if the function call was a success. \
 *TSS2\_FAPI\_RC\_BAD\_REFERENCE* if context 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\_GENERAL\_FAILURE* if an internal error occurred. \
 *TSS2\_FAPI\_RC\_BAD\_VALUE* if an invalid value was passed into the function.

## Author

Generated automatically by Doxygen for tpm2-tss from the source code.
