Manages interactions with Trusted applications (TA) running under secure world.
|
| #define | TEEC_PARAM_TYPES(t0, t1, t2, t3) (((uint32_t)t0) | (((uint32_t)t1) << 4) | (((uint32_t)t2) << 8) | (((uint32_t)t3) << 12)) |
| | Helper macro to construct param type. More...
|
| |
| #define | TEEC_PARAM_TYPE_GET(t, i) (((t) >> (i*4)) & 0xF) |
| | Helper macro to get GP param based on index. More...
|
| |
|
| TEEC_Result | TEEC_InitializeContext (const char *name, TEEC_Context *context) |
| | Initilize TEEC context. More...
|
| |
| void | TEEC_FinalizeContext (TEEC_Context *context) |
| | Finalize TEEC context. More...
|
| |
| TEEC_Result | TEEC_OpenSession (TEEC_Context *context, TEEC_Session *session, const TEEC_UUID *destination, uint32_t connectionMethod, const void *connectionData, TEEC_Operation *operation, uint32_t *returnOrigin) |
| | This function opens a new Session between the Client Application and the specified Trusted Application. More...
|
| |
| void | TEEC_CloseSession (TEEC_Session *session) |
| | closes a Session which has been opened with a Trusted Application More...
|
| |
| TEEC_Result | TEEC_InvokeCommand (TEEC_Session *session, uint32_t commandID, TEEC_Operation *operation, uint32_t *returnOrigin) |
| | invokes a Command within the specified Session More...
|
| |
◆ TEEC_PARAM_TYPE_GET
| #define TEEC_PARAM_TYPE_GET |
( |
|
t, |
|
|
|
i |
|
) |
| (((t) >> (i*4)) & 0xF) |
◆ TEEC_PARAM_TYPES
| #define TEEC_PARAM_TYPES |
( |
|
t0, |
|
|
|
t1, |
|
|
|
t2, |
|
|
|
t3 |
|
) |
| (((uint32_t)t0) | (((uint32_t)t1) << 4) | (((uint32_t)t2) << 8) | (((uint32_t)t3) << 12)) |
◆ TEEC_CloseSession()
closes a Session which has been opened with a Trusted Application
- Parameters
-
| [in] | session | a pointer to a Session structure to close |
- Returns
- void
- Precondition
- Invocation of TEEC_OpenSession() must be successfull
- Note
- Allowed context for the API call
- Interrupt : No
- Signal handler: Yes
- Thread : Yes
- Is thread safe : Yes
- Required Privileges(QNX): None
- API Group
- Initialization : No
- Run time : No
- De-initialization: Yes
swud: QNXBSP-GPLIB-05
◆ TEEC_FinalizeContext()
Finalize TEEC context.
- Parameters
-
| [in] | context | an initialized TEEC_Context structure which is to be finalized |
- Returns
- void
- Precondition
- NA
- Note
- Allowed context for the API call
- Interrupt : Yes
- Signal handler: Yes
- Thread : Yes
- Is thread safe : Yes
- Required Privileges(QNX): None
- API Group
- Initialization : No
- Run time : No
- De-initialization: Yes
swud: QNXBSP-GPLIB-03
◆ TEEC_InitializeContext()
Initilize TEEC context.
- Parameters
-
| [in] | name | a zero-terminated string that describes the TEE to connect to |
| [in] | context | a TEEC_Context pointer to be initialized |
- Return values
-
| TEEC_SUCCESS | On successful initialization |
- Precondition
- NA
- Note
- Allowed context for the API call
- Interrupt : Yes
- Signal handler: Yes
- Thread : Yes
- Is thread safe : Yes
- Required Privileges(QNX): None
- API Group
- Initialization : Yes
- Run time : No
- De-initialization: No
swud: QNXBSP-GPLIB-02
◆ TEEC_InvokeCommand()
invokes a Command within the specified Session
- Parameters
-
| [in] | session | the open Session in which the command will be invoked |
| [in] | commandID | the identifier of the Command within the Trusted Application to invoke |
| [in] | operation | a pointer to a Client Application initialized TEEC_Operation structure, or NULL if there is no payload to send |
| [in] | returnOrigin | a pointer to a variable which will contain the return origin of return code |
- Return values
-
| TEEC_SUCCESS | On successful initialization |
| TEEC_ERROR_GENERIC | Unable to process command (local or remote failure) |
| TEEC_ERROR_BAD_PARAMETERS | In case of invalid parameters |
- Precondition
- Invocation of TEEC_OpenSession() must be successfull
- Note
- Allowed context for the API call
- Interrupt : No
- Signal handler: Yes
- Thread : Yes
- Is thread safe : Yes
- Required Privileges(QNX): None
- API Group
- Initialization : No
- Run time : Yes
- De-initialization: No
swud: QNXBSP-GPLIB-06
◆ TEEC_OpenSession()
This function opens a new Session between the Client Application and the specified Trusted Application.
The target Trusted Application is identified by a UUID passed in the parameter destination
- Parameters
-
| [in] | context | a pointer to an initialized TEE Context |
| [in] | session | a pointer to a Session structure to open |
| [in] | destination | a pointer to a structure containing the UUID of the destination Trusted Application |
| [in] | connectionMethod | the method of connection to use |
| [in] | connectionData | any necessary data required to support the connection method chosen |
| [in] | operation | a pointer to an Operation containing a set of Parameters to exchange with the Trusted Application, or NULL if no Parameters are to be exchanged |
| [in] | returnOrigin | a pointer to a variable which will contain the origin of return code |
- Return values
-
| TEEC_SUCCESS | On successful initialization |
| TEEC_ERROR_GENERIC | Unable to open session (local or remote failure) |
| TEEC_ERROR_BAD_PARAMETERS | In case of failure |
- Precondition
- NA
- Note
- Allowed context for the API call
- Interrupt : No
- Signal handler: Yes
- Thread : Yes
- Is thread safe : Yes
- Required Privileges(QNX): None
- API Group
- Initialization : Yes
- Run time : No
- De-initialization: No
swud: QNXBSP-GPLIB-04