tpm2-tss 4.2.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 <json.h> // for json_object
10#include <stdbool.h> // for bool
11#include <stddef.h> // for size_t
12#include <stdint.h> // for uint32_t
13
14#include "tss2_common.h" // for TSS2_RC, UINT8
15#include "tss2_tpm2_types.h" // for TPM2_MAX_PCRS
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(uint32_t pcr, const uint32_t *pcr_list, size_t pcr_list_size);
26
27TSS2_RC ifapi_tcg_eventlog_serialize(UINT8 const *eventlog,
28 size_t size,
29 const uint32_t *pcr_list,
30 size_t pcr_list_size,
31 json_object **eventlog_json);
32
33TSS2_RC ifapi_get_tcg_firmware_event_list(char const *filename,
34 const uint32_t *pcr_list,
35 size_t pcr_list_size,
36 json_object **json_eventlog);
37
38#endif /* IFAPI_JSON_EVENTLOG_SERIALIZE_H */
Definition ifapi_json_eventlog_serialize.h:17