* pcpes : Pointer to the event 'header' to be copied into the log
* event : Pointer to the event 'body' to be copied into the log
* event_length: Length of the event array
- * entry_count : optional pointer to get the current entry count
*
* Output:
* Returns an error code in case of faiure, 0 in case of success
*/
static u32
tpm_extend_acpi_log(struct pcpes *pcpes,
- const void *event, u32 event_length,
- u16 *entry_count)
+ const void *event, u32 event_length)
{
u32 size;
tpm_state.log_area_next_entry += size;
tpm_state.entry_count++;
- if (entry_count)
- *entry_count = tpm_state.entry_count;
-
return 0;
}
static u32
hash_log_event(const void *hashdata, u32 hashdata_length,
struct pcpes *pcpes,
- const void *event, u32 event_length,
- u16 *entry_count)
+ const void *event, u32 event_length)
{
u32 rc = 0;
if (!has_working_tpm())
return TCG_GENERAL_ERROR;
- rc = tpm_extend_acpi_log(pcpes, event, event_length, entry_count);
+ rc = tpm_extend_acpi_log(pcpes, event, event_length);
if (rc)
tpm_set_failure();
return rc;
hash_log_extend_event(const void *hashdata, u32 hashdata_length,
struct pcpes *pcpes,
const void *event, u32 event_length,
- u32 pcrindex, u16 *entry_count)
+ u32 pcrindex)
{
u32 rc;
rc = hash_log_event(hashdata, hashdata_length, pcpes,
- event, event_length, entry_count);
+ event, event_length);
if (rc)
return rc;
.pcrindex = pcrindex,
.eventtype = event_type,
};
- u16 entry_count;
-
return hash_log_extend_event(hashdata, hashdata_length, &pcpes,
- event, event_length, pcrindex,
- &entry_count);
+ event, event_length, pcrindex);
}
rc = hash_log_extend_event(hleei_s->hashdataptr, hleei_s->hashdatalen,
pcpes,
pcpes->event, pcpes->eventdatasize,
- pcrindex, NULL);
+ pcrindex);
if (rc)
goto err_exit;
u32 rc = 0;
u16 size;
struct pcpes *pcpes;
- u16 entry_count;
if (is_preboot_if_shutdown() != 0) {
rc = TCG_INTERFACE_SHUTDOWN;
}
rc = hash_log_event(hlei->hashdataptr, hlei->hashdatalen,
- pcpes, pcpes->event, pcpes->eventdatasize,
- &entry_count);
+ pcpes, pcpes->event, pcpes->eventdatasize);
if (rc)
goto err_exit;
/* updating the log was fine */
hleo->opblength = sizeof(struct hleo);
hleo->reserved = 0;
- hleo->eventnumber = entry_count;
+ hleo->eventnumber = tpm_state.entry_count;
err_exit:
if (rc != 0) {
.eventtype = EV_COMPACT_HASH,
.eventdatasize = sizeof(info),
};
- u16 entry_count;
if (is_preboot_if_shutdown() != 0)
return TCG_INTERFACE_SHUTDOWN;
rc = hash_log_extend_event(buffer, length,
&pcpes,
&info, pcpes.eventdatasize,
- pcpes.pcrindex, &entry_count);
+ pcpes.pcrindex);
if (rc == 0)
- *edx_ptr = entry_count;
+ *edx_ptr = tpm_state.entry_count;
return rc;
}