tpm2-tss 4.1.0
TPM Software stack 2.0 TCG spec compliant implementation
ifapi_json_eventlog_serialize.h
1/* SPDX-License-Identifier: BSD-2-Clause */
2/*******************************************************************************
3 * Copyright 2018-2019, Fraunhofer SIT sponsored by Infineon Technologies AG
4 * All rights reserved.
5 ******************************************************************************/
6#ifndef IFAPI_JSON_EVENTLOG_SERIALIZE_H
7#define IFAPI_JSON_EVENTLOG_SERIALIZE_H
8
9#include <stdbool.h>
10#include <json-c/json.h>
11#include <json-c/json_util.h>
12
13#include "tss2_tpm2_types.h"
14#include "fapi_int.h"
15#include "ifapi_keystore.h"
16
17typedef struct {
18 json_object *jso_event_list;
19 const uint32_t *pcr_list;
20 size_t pcr_list_size;
21 bool skip_event;
22 size_t recnum_tab[TPM2_MAX_PCRS];
24
25bool ifapi_pcr_used(
26 uint32_t pcr,
27 const uint32_t *pcr_list,
28 size_t pcr_list_size);
29
30TSS2_RC ifapi_tcg_eventlog_serialize(
31 UINT8 const *eventlog,
32 size_t size,
33 const uint32_t *pcr_list,
34 size_t pcr_list_size,
35 json_object **eventlog_json);
36
37TSS2_RC ifapi_get_tcg_firmware_event_list(
38 char const *filename,
39 const uint32_t *pcr_list,
40 size_t pcr_list_size,
41 json_object **json_eventlog);
42
43#endif /* IFAPI_JSON_EVENTLOG_SERIALIZE_H */
Definition ifapi_json_eventlog_serialize.h:17