1 /*
2  * Copyright (c) 2023, Arm Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #include "psa/crypto_types.h"
8 #include "psa/initial_attestation.h"
9 #include "psa/internal_trusted_storage.h"
10 #include "psa/protected_storage.h"
11 
12 #ifndef LIBPSATS_H
13 #define LIBPSATS_H
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /*
20  * The functions may be exported as a public interface to
21  * a shared library.
22  */
23 #ifdef EXPORT_PUBLIC_INTERFACE_LIBPSATS
24 #define LIBPSATS_EXPORTED __attribute__((__visibility__("default")))
25 #else
26 #define LIBPSATS_EXPORTED
27 #endif
28 
29 LIBPSATS_EXPORTED psa_status_t libpsats_init_crypto_context(const char *service_name);
30 LIBPSATS_EXPORTED void libpsats_deinit_crypto_context(void);
31 
32 LIBPSATS_EXPORTED psa_status_t libpsats_init_attestation_context(const char *service_name);
33 LIBPSATS_EXPORTED void libpsats_deinit_attestation_context(void);
34 
35 LIBPSATS_EXPORTED psa_status_t libpsats_init_its_context(const char *service_name);
36 LIBPSATS_EXPORTED void libpsats_deinit_its_context(void);
37 
38 LIBPSATS_EXPORTED psa_status_t libpsats_init_ps_context(const char *service_name);
39 LIBPSATS_EXPORTED void libpsats_deinit_ps_context(void);
40 
41 #ifdef __cplusplus
42 }
43 #endif
44 
45 #endif /* LIBPSATS_H */
46