blob: e5a6fa03ad1f67158645bdba8553f9de9f5ff693 [file] [log] [blame]
Gabor Toth172659d2023-04-27 08:51:21 +02001/*
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 LIBPSA_H
13#define LIBPSA_H
14
15#ifdef __cplusplus
16extern "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_LIBPSA
24#define LIBPSA_EXPORTED __attribute__((__visibility__("default")))
25#else
26#define LIBPSA_EXPORTED
27#endif
28
29LIBPSA_EXPORTED psa_status_t libpsa_init_crypto_context(const char *service_name);
30LIBPSA_EXPORTED void libpsa_deinit_crypto_context(void);
31
32LIBPSA_EXPORTED psa_status_t libpsa_init_attestation_context(const char *service_name);
33LIBPSA_EXPORTED void libpsa_deinit_attestation_context(void);
34
35LIBPSA_EXPORTED psa_status_t libpsa_init_its_context(const char *service_name);
36LIBPSA_EXPORTED void libpsa_deinit_its_context(void);
37
38LIBPSA_EXPORTED psa_status_t libpsa_init_ps_context(const char *service_name);
39LIBPSA_EXPORTED void libpsa_deinit_ps_context(void);
40
41#ifdef __cplusplus
42}
43#endif
44
45#endif /* LIBPSA_H */