diff options
Diffstat (limited to 'src/security/tpm/tspi/log-tpm2.c')
-rw-r--r-- | src/security/tpm/tspi/log-tpm2.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/security/tpm/tspi/log-tpm2.c b/src/security/tpm/tspi/log-tpm2.c index 897ccedbff37..c7bbc9e42bc1 100644 --- a/src/security/tpm/tspi/log-tpm2.c +++ b/src/security/tpm/tspi/log-tpm2.c @@ -213,6 +213,11 @@ void tpm2_log_copy_entries(const void *from, void *to) int i; for (i = 0; i < le16toh(from_log->vendor.num_entries); i++) { + if (le16toh(to_log->vendor.num_entries) >= le16toh(to_log->vendor.max_entries)) { + printk(BIOS_WARNING, "TPM LOG: log table is full\n"); + return; + } + struct tpm_2_log_entry *tce = &to_log->entries[le16toh(to_log->vendor.num_entries)]; to_log->vendor.num_entries = htole16(le16toh(to_log->vendor.num_entries) + 1); |