All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
To: Roberto Sassu <roberto.sassu@huawei.com>
Cc: zohar@linux.ibm.com, linux-integrity@vger.kernel.org,
	linux-security-module@vger.kernel.org,
	linux-kernel@vger.kernel.org, silviu.vlasceanu@huawei.com
Subject: Re: [PATCH v4 2/6] tpm: remove definition of TPM2_ACTIVE_PCR_BANKS
Date: Thu, 8 Nov 2018 16:03:18 +0200	[thread overview]
Message-ID: <20181108140318.GD8922@linux.intel.com> (raw)
In-Reply-To: <20181108140208.GC8922@linux.intel.com>

On Thu, Nov 08, 2018 at 04:02:08PM +0200, Jarkko Sakkinen wrote:
> On Tue, Nov 06, 2018 at 04:01:55PM +0100, Roberto Sassu wrote:
> > tcg_efi_specid_event and tcg_pcr_event2 declaration contains static arrays
> > for a list of hash algorithms used for event logs and event log digests.
> > However, according to TCG EFI Protocol Specification, these arrays have
> > variable sizes and are not suitable for parsing events with type casting.
> > 
> > Since declaring static arrays with hard-coded sizes does not help to parse
> > data after these arrays, this patch removes the declaration of
> > TPM2_ACTIVE_PCR_BANKS and sets the size of the arrays above to zero.
> > 
> > Fixes: 4d23cc323cdb ("tpm: add securityfs support for TPM 2.0 firmware
> > event log")
> > 
> > Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
> > ---
> >  include/linux/tpm_eventlog.h | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> > 
> > diff --git a/include/linux/tpm_eventlog.h b/include/linux/tpm_eventlog.h
> > index 20d9da77fc11..3d5d162f09cc 100644
> > --- a/include/linux/tpm_eventlog.h
> > +++ b/include/linux/tpm_eventlog.h
> > @@ -8,7 +8,6 @@
> >  #define TCG_EVENT_NAME_LEN_MAX	255
> >  #define MAX_TEXT_EVENT		1000	/* Max event string length */
> >  #define ACPI_TCPA_SIG		"TCPA"	/* 0x41504354 /'TCPA' */
> > -#define TPM2_ACTIVE_PCR_BANKS	3
> >  
> >  #define EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 0x1
> >  #define EFI_TCG2_EVENT_LOG_FORMAT_TCG_2   0x2
> > @@ -90,7 +89,7 @@ struct tcg_efi_specid_event {
> >  	u8 spec_errata;
> >  	u8 uintnsize;
> >  	u32 num_algs;
> > -	struct tcg_efi_specid_event_algs digest_sizes[TPM2_ACTIVE_PCR_BANKS];
> > +	struct tcg_efi_specid_event_algs digest_sizes[0];
> >  	u8 vendor_info_size;
> >  	u8 vendor_info[0];
> >  } __packed;
> > @@ -117,7 +116,7 @@ struct tcg_pcr_event2 {
> >  	u32 pcr_idx;
> >  	u32 event_type;
> >  	u32 count;
> > -	struct tpm2_digest digests[TPM2_ACTIVE_PCR_BANKS];
> > +	struct tpm2_digest digests[0];
> >  	struct tcg_event_field event;
> 
> Last two fields make sense at least without comment as they overlap.

i.e. would be semantically equal to

union {
	struct tpm2_digest digests[0];
	struct tcg_event_field event;
};

/Jarkko

  reply	other threads:[~2018-11-08 14:03 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-06 15:01 [PATCH v4 0/6] tpm: retrieve digest size of unknown algorithms from TPM Roberto Sassu
2018-11-06 15:01 ` [PATCH v4 1/6] tpm: dynamically allocate active_banks array Roberto Sassu
2018-11-07  6:14   ` Nayna Jain
2018-11-07  9:41     ` Roberto Sassu
2018-11-08 13:50       ` Nayna Jain
2018-11-08 14:40         ` Roberto Sassu
2018-11-08 15:21         ` Jarkko Sakkinen
2018-11-08 15:29           ` Mimi Zohar
2018-11-08 18:57             ` Jarkko Sakkinen
2018-11-08 15:54           ` Ken Goldman
2018-12-13 20:21       ` Ken Goldman
2018-11-07 11:10     ` Mimi Zohar
2018-11-08 13:46   ` Jarkko Sakkinen
2018-11-08 14:24     ` Roberto Sassu
2018-11-08 15:22       ` Jarkko Sakkinen
2018-11-13 13:34     ` Roberto Sassu
2018-11-13 17:04       ` Jarkko Sakkinen
2018-11-13 13:53     ` Roberto Sassu
2018-11-06 15:01 ` [PATCH v4 2/6] tpm: remove definition of TPM2_ACTIVE_PCR_BANKS Roberto Sassu
2018-11-08 14:02   ` Jarkko Sakkinen
2018-11-08 14:03     ` Jarkko Sakkinen [this message]
2018-11-08 14:52       ` Roberto Sassu
2018-11-08 19:05   ` Jarkko Sakkinen
2018-11-06 15:01 ` [PATCH v4 3/6] tpm: rename and export tpm2_digest and tpm2_algorithms Roberto Sassu
2018-11-06 15:01 ` [PATCH v4 4/6] tpm: modify tpm_pcr_read() definition to pass a TPM hash algorithm Roberto Sassu
2018-11-08 14:04   ` Jarkko Sakkinen
2018-11-08 14:16     ` Roberto Sassu
2018-11-08 15:15       ` Jarkko Sakkinen
2018-11-08 15:19         ` Peter Huewe
2018-11-08 19:08           ` Jarkko Sakkinen
2018-11-13 12:34             ` Jarkko Sakkinen
2018-11-13 12:39               ` Roberto Sassu
2018-11-13 16:56                 ` Jarkko Sakkinen
2018-11-06 15:01 ` [PATCH v4 5/6] tpm: retrieve digest size of unknown algorithms with PCR read Roberto Sassu
2018-11-06 15:01 ` [PATCH v4 6/6] tpm: ensure that the output of PCR read contains the correct digest size Roberto Sassu
2018-11-08 14:08   ` Jarkko Sakkinen
2018-11-08 14:47     ` Roberto Sassu
2018-11-08 18:52       ` Jarkko Sakkinen
2018-11-13 13:08     ` Roberto Sassu
2018-11-13 16:59       ` Jarkko Sakkinen
2018-11-08 13:51 ` [PATCH v4 0/6] tpm: retrieve digest size of unknown algorithms from TPM Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181108140318.GD8922@linux.intel.com \
    --to=jarkko.sakkinen@linux.intel.com \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=roberto.sassu@huawei.com \
    --cc=silviu.vlasceanu@huawei.com \
    --cc=zohar@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.