--- embedaddon/strongswan/src/libtpmtss/tpm_tss.h 2020/06/03 09:46:44 1.1.1.1 +++ embedaddon/strongswan/src/libtpmtss/tpm_tss.h 2021/03/17 00:20:08 1.1.1.2 @@ -1,6 +1,6 @@ /* * Copyright (C) 2018 Tobias Brunner - * Copyright (C) 2016-2018 Andreas Steffen + * Copyright (C) 2016-2020 Andreas Steffen * HSR Hochschule fuer Technik Rapperswil * * This program is free software; you can redistribute it and/or modify it @@ -90,6 +90,14 @@ struct tpm_tss_t { uint32_t handle); /** + * Check if there is an assigned PCR bank for the given hash algorithm + * + * @param alg hash algorithm + * @return TRUE if a PCR bank for this algorithm exists + */ + bool (*has_pcr_bank)(tpm_tss_t *this, hash_algorithm_t alg); + + /** * Retrieve the current value of a PCR register in a given PCR bank * * @param pcr_num PCR number @@ -165,6 +173,17 @@ struct tpm_tss_t { */ bool (*get_data)(tpm_tss_t *this, uint32_t hierarchy, uint32_t handle, chunk_t pin, chunk_t *data); + + /** + * Get an event digest from a TPM measurement log + * + * @param fd file descriptor of the measurement log + * @param hash hash algorithm of the digest to be extracted + * @param digest allocated chunk_t containing event digest + * @return TRUE if event digest was successfully extracted + */ + bool (*get_event_digest)(tpm_tss_t *this, int fd, hash_algorithm_t alg, + chunk_t *digest); /** * Destroy a tpm_tss_t.