Messages in this thread | | | Date | Mon, 11 May 2015 09:02:05 -0400 | From | Stefan Berger <> | Subject | Re: [tpmdd-devel] [PATCH 1/3] vTPM: fixed the limit checking |
| |
On 05/05/2015 08:51 PM, Hon Ching(Vicky) Lo wrote: > Do not skip the last entry of the event log. > > Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com> > Signed-off-by: Joy Latten <jmlatten@linux.vnet.ibm.com> > > Changelog: > - remove redundant code > --- > drivers/char/tpm/tpm_eventlog.c | 5 +---- > 1 files changed, 1 insertions(+), 4 deletions(-) > > diff --git a/drivers/char/tpm/tpm_eventlog.c b/drivers/char/tpm/tpm_eventlog.c > index 3a56a13..e77d8c1 100644 > --- a/drivers/char/tpm/tpm_eventlog.c > +++ b/drivers/char/tpm/tpm_eventlog.c > @@ -116,11 +116,8 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v, > > event = v; > > - if (event->event_type == 0 && event->event_size == 0) > - return NULL; > - > if ((event->event_type == 0 && event->event_size == 0) || > - ((v + sizeof(struct tcpa_event) + event->event_size) >= limit)) > + ((v + sizeof(struct tcpa_event) + event->event_size) > limit)) > return NULL; > > (*pos)++;
The limit stems from log->bios_event_log_end and is calculated as follows:
log->bios_event_log_end = log->bios_event_log + len;
The '>=' above is correct since the limit address itself is not part of the log anymore.
The log is the following sequence of addresses:
[log->bios_event_log ... log->bios_event_log + len - 1 ]
or
[log->bios_event_log ... log->bios_event_log + len [
with ']' meaning inclusive and '[' meaning exclusive.
Stefan
| |