| .\" Process this file with |
| .\" groff -man -Tascii foo.1 |
| .\" |
| .TH Tss2_TctiLdr_GetInfo 3 "JUNE 2019" "TPM2 Software Stack" |
| .SH NAME |
| Tss2_TctiLdr_GetInfo \- Query TctiLdr library for the TSS2_TCTI_INFO |
| structure associated with a TCTI library. |
| .SH SYNOPSIS |
| .B #include <tss2/tss2_tctildr.h> |
| .sp |
| .sp |
| .BI "TSS2_RC Tss2_TctiLdr_GetInfo ("const char " "*name" ", TSS2_TCTI_INFO " "**info" ");" |
| .sp |
| .SH DESCRIPTION |
| The |
| .BR Tss2_TctiLdr_GetInfo () |
| function attempts to instantiate a TSS2_TCTI_INFO structure appropriate |
| for the TCTI library associated with the provided |
| .I name. |
| The TSS2_TCTI_INFO* reference returned by this function must be freed by |
| the |
| .I Tss2_TctiLdr_FreeInfo () |
| function. |
| .sp |
| The |
| .I name |
| parameter is a C string. If this string is |
| .BR NULL |
| then the library will select a default TCTI for the caller. This is the same |
| TCTI library that will be used to initialize the context returned by |
| .B Tss2_TctiLdr_Initialize |
| when passed a NULL |
| .I name. |
| If non-NULL, |
| the |
| .B Tss2_TctiLdr_GetInfo () |
| uses the same algorithm to map the string to the name of an installed TCTI |
| library as the |
| .B Tss2_TctiLdr_Initialize () |
| function. |
| .sp |
| The |
| .I info |
| parameter is a reference to a |
| .I TSS2_TCTI_INFO*. |
| The reference returned will be allocated by the function and must be freed |
| by the caller. |
| .SH RETURN VALUE |
| A successful call to this function will return TSS2_RC_SUCCESS. An |
| unsuccessful call to this function will return a response code described |
| below in section |
| .B ERRORS. |
| .SH ERRORS |
| .B TSS2_TCTI_RC_MEMORY |
| is returned if memory allocation fails |
| .sp |
| .B TSS2_TCTI_RC_NOT_SUPPORTED |
| is returned when the loader is unable to locate a TCTI library with the |
| provided |
| .I name |
| .sp |
| .B TSS2_TCTI_RC_IO_ERROR |
| is returned if a failure occurs in the underlying library loading mechanism |
| .sp |
| .B TSS2_TCTI_RC_BAD_REFERENCE |
| is returned if the |
| .I info |
| parameter is NULL |
| .sp |
| .SH EXAMPLE |
| Example code. |
| .sp |
| .nf |
| #include <inttypes.h> |
| #include <stdlib.h> |
| #include <stdio.h> |
| |
| #include <tss2/tss2_tctildr.h> |
| |
| TSS2_TCTI_INFO *info = NULL; |
| TSS2_RC rc = Tss2_TctiLdr_GetInfo (NULL, &info); |
| if (rc != TSS2_RC_SUCCESS) { |
| fprintf (stderr, "Initialization of default TCTI context failed with " |
| "response code: 0x%" PRIx32 "\n", rc); |
| exit (EXIT_FAILURE); |
| } |
| |
| if (info != NULL) { |
| Tss2_TctiLdr_FreeInfo (info); |
| info = NULL; |
| } |
| |
| exit (EXIT_SUCCESS); |
| .fi |