TF-M Reference Manual  1.2.0
TrustedFirmware-M
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
tfm_ss_core_test_2.c File Reference
#include <stddef.h>
#include "core_test_defs.h"
#include "tfm_ss_core_test_2.h"
#include "tfm_api.h"
#include "tfm_secure_api.h"
#include "psa/service.h"
#include "psa_manifest/pid.h"
#include "psa_manifest/tfm_ss_core_test_2.h"
Include dependency graph for tfm_ss_core_test_2.c:

Go to the source code of this file.

Macros

#define INVALID_NS_CLIENT_ID   0x49abcdef
 
#define INVERT_BUFFER_SIZE   (16*4)
 
#define SFN_INVERT_MAX_LEN   128
 

Functions

psa_status_t spm_core_test_2_slave_service (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_len)
 A minimal test service to be called from another service. More...
 
psa_status_t spm_core_test_2_check_caller_client_id (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_len)
 A minimal test secure function to be called from another partition. More...
 
psa_status_t spm_core_test_2_get_every_second_byte_internal (const uint8_t *inbuf, uint8_t *outbuf, size_t in_size, size_t *out_size)
 
psa_status_t spm_core_test_2_get_every_second_byte (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_len)
 
psa_status_t spm_core_test_2_sfn_invert (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_len)
 Bitwise inverts the buffer received as input. More...
 
psa_status_t spm_core_test_2_prepare_test_scenario (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_size)
 
psa_status_t spm_core_test_2_execute_test_scenario (struct psa_invec *in_vec, size_t in_len, struct psa_outvec *out_vec, size_t out_size)
 
psa_status_t core_test_2_init (void)
 

Macro Definition Documentation

#define INVALID_NS_CLIENT_ID   0x49abcdef

Definition at line 17 of file tfm_ss_core_test_2.c.

#define INVERT_BUFFER_SIZE   (16*4)

Definition at line 18 of file tfm_ss_core_test_2.c.

#define SFN_INVERT_MAX_LEN   128

Definition at line 135 of file tfm_ss_core_test_2.c.

Function Documentation

psa_status_t core_test_2_init ( void  )

Definition at line 442 of file tfm_ss_core_test_2.c.

Here is the call graph for this function:

psa_status_t spm_core_test_2_check_caller_client_id ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_len 
)

A minimal test secure function to be called from another partition.

Checks the functionality of querying the client ID of the caller service.

Parameters
[in]in_vecArray of psa_invec objects
[in]in_lenNumber psa_invec objects in in_vec
[in]out_vecArray of psa_outvec objects
[in]out_lenNumber psa_outvec objects in out_vec

The function expects 0 in_vec objects. The function expects 0 out_vec objects.

Returns
Returns TFM_SUCCESS on success, CORE_TEST_ERRNO_TEST_FAULT othervise.

Definition at line 53 of file tfm_ss_core_test_2.c.

Here is the call graph for this function:

psa_status_t spm_core_test_2_execute_test_scenario ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_size 
)

Definition at line 270 of file tfm_ss_core_test_2.c.

psa_status_t spm_core_test_2_get_every_second_byte ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_len 
)

Definition at line 113 of file tfm_ss_core_test_2.c.

Here is the call graph for this function:

psa_status_t spm_core_test_2_get_every_second_byte_internal ( const uint8_t *  inbuf,
uint8_t *  outbuf,
size_t  in_size,
size_t *  out_size 
)

Definition at line 94 of file tfm_ss_core_test_2.c.

Here is the caller graph for this function:

psa_status_t spm_core_test_2_prepare_test_scenario ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_size 
)

Definition at line 214 of file tfm_ss_core_test_2.c.

psa_status_t spm_core_test_2_sfn_invert ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_len 
)

Bitwise inverts the buffer received as input.

Parameters
[in]in_vecArray of psa_invec objects
[in]in_lenNumber psa_invec objects in in_vec
[in]out_vecArray of psa_outvec objects
[in]out_lenNumber psa_outvec objects in out_vec

The function expects 2 in_vec objects: in_vec[0].base: A pointer to the buffer containing the data to be inverted in_vec[0].len: The length of the buffer in_vec[1].base: A pointer to an int32_t object in_vec[1].len: The size of int32_t object

The function expects 1 out_vec object: out_vec[0].base: A pointer to the buffer to put the result to out_vec[0].len: The length of the buffer

Returns
Returns TFM_SUCCESS on success, TFM_PARTITION_BUSY otherwise.

Definition at line 164 of file tfm_ss_core_test_2.c.

psa_status_t spm_core_test_2_slave_service ( struct psa_invec in_vec,
size_t  in_len,
struct psa_outvec out_vec,
size_t  out_len 
)

A minimal test service to be called from another service.

Parameters
[in]in_vecArray of psa_invec objects
[in]in_lenNumber psa_invec objects in in_vec
[in]out_vecArray of psa_outvec objects
[in]out_lenNumber psa_outvec objects in out_vec

The function expects 0 in_vec objects. The function expects 0 out_vec objects.

Returns
Returns TFM_SUCCESS.

Definition at line 37 of file tfm_ss_core_test_2.c.