1 /*
2  * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef IMPLENTATION_ID_CLAIM_SOURCE_H
8 #define IMPLENTATION_ID_CLAIM_SOURCE_H
9 
10 #include <service/attestation/claims/claim_source.h>
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 /**
17  * A claim_source that provides an identifier for the
18  * root of trust implementation.
19  */
20 struct implementation_id_claim_source
21 {
22 	struct claim_source base;
23 	const char *id_string;
24 };
25 
26 /**
27  * \brief Initializes a struct implementation_id_claim_source
28  *
29  * \param[in] instance      The instance to initialze
30  * \param[in] id_string		The id string
31  *
32  * \return The initialize base claim_source structure
33  */
34 struct claim_source *implementation_id_claim_source_init(
35 	struct implementation_id_claim_source *instance,
36 	const char *id_string);
37 
38 #ifdef __cplusplus
39 } /* extern "C" */
40 #endif
41 
42 #endif /* IMPLENTATION_ID_CLAIM_SOURCE_H */
43