mirror of
https://git.proxmox.com/git/efi-boot-shim
synced 2025-08-04 09:48:28 +00:00
shim/tpm: Remove magic numbers
When measuring data into the TPM and generating events logs, the event type is set to EV_IPL (0xd), and for TPM1.2 the algorithm will always be set to SHA-1 (0x4). So, add some macro-defined constants for these instead of having them as magic numbers to make the code more readable. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
This commit is contained in:
parent
6d4498fb3b
commit
9c40fb7c05
9
tpm.c
9
tpm.c
@ -110,7 +110,7 @@ EFI_STATUS tpm_log_event(EFI_PHYSICAL_ADDRESS buf, UINTN size, UINT8 pcr,
|
||||
event->Header.HeaderSize = sizeof(EFI_TCG2_EVENT_HEADER);
|
||||
event->Header.HeaderVersion = 1;
|
||||
event->Header.PCRIndex = pcr;
|
||||
event->Header.EventType = 0x0d;
|
||||
event->Header.EventType = EV_IPL;
|
||||
event->Size = sizeof(*event) - sizeof(event->Event) + strlen(description) + 1;
|
||||
memcpy(event->Event, description, strlen(description) + 1);
|
||||
status = uefi_call_wrapper(tpm2->hash_log_extend_event, 5, tpm2,
|
||||
@ -119,7 +119,7 @@ EFI_STATUS tpm_log_event(EFI_PHYSICAL_ADDRESS buf, UINTN size, UINT8 pcr,
|
||||
return status;
|
||||
} else {
|
||||
TCG_PCR_EVENT *event;
|
||||
UINT32 algorithm, eventnum = 0;
|
||||
UINT32 eventnum = 0;
|
||||
EFI_PHYSICAL_ADDRESS lastevent;
|
||||
|
||||
status = LibLocateProtocol(&tpm_guid, (VOID **)&tpm);
|
||||
@ -138,11 +138,10 @@ EFI_STATUS tpm_log_event(EFI_PHYSICAL_ADDRESS buf, UINTN size, UINT8 pcr,
|
||||
}
|
||||
|
||||
event->PCRIndex = pcr;
|
||||
event->EventType = 0x0d;
|
||||
event->EventType = EV_IPL;
|
||||
event->EventSize = strlen(description) + 1;
|
||||
algorithm = 0x00000004;
|
||||
status = uefi_call_wrapper(tpm->log_extend_event, 7, tpm, buf,
|
||||
(UINT64)size, algorithm, event,
|
||||
(UINT64)size, TPM_ALG_SHA, event,
|
||||
&eventnum, &lastevent);
|
||||
FreePool(event);
|
||||
return status;
|
||||
|
3
tpm.h
3
tpm.h
@ -1,6 +1,9 @@
|
||||
#define EFI_TPM_GUID {0xf541796d, 0xa62e, 0x4954, {0xa7, 0x75, 0x95, 0x84, 0xf6, 0x1b, 0x9c, 0xdd }};
|
||||
#define EFI_TPM2_GUID {0x607f766c, 0x7455, 0x42be, {0x93, 0x0b, 0xe4, 0xd7, 0x6d, 0xb2, 0x72, 0x0f }};
|
||||
|
||||
#define TPM_ALG_SHA 0x00000004
|
||||
#define EV_IPL 0x0000000d
|
||||
|
||||
EFI_STATUS tpm_log_event(EFI_PHYSICAL_ADDRESS buf, UINTN size, UINT8 pcr,
|
||||
const CHAR8 *description);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user