Re: [PATCH v2] tpm: return a TPM_RC_COMMAND_CODE response if a command isn't implemented
From: Jarkko Sakkinen
Date: Thu Nov 30 2017 - 11:39:16 EST
On Wed, Nov 29, 2017 at 07:24:48PM +0100, Javier Martinez Canillas wrote:
> Hello Jarkko,
>
> On 11/29/2017 06:57 PM, Jarkko Sakkinen wrote:
> > On Wed, Nov 29, 2017 at 12:08:46PM +0100, Javier Martinez Canillas
> > wrote:
> >> +#define TPM2_RC_LAYER_SHIFT 16 +#define TPM2_RESMGRTPM_RC_LAYER
> >> (11 << TPM2_RC_LAYER_SHIFT)
> >
> > I got this spec from Philip [1].
> >
> > Couple of remarks:
> >
> > * What is the difference between TSS2_RESMGR_RC_LAYER and
> > TSS2_RESMGR_TPM_RC_LAYER?
>
> The difference is the type of error returned in each case. TSS2_RESMGR_RC_LAYER
> means that's an error internal to the TAB/RM and so the response code is one of
> the TSS2_BASE_RC_* error values.
>
> But TSS2_RESMGR_TPM_RC_LAYER means that the resource manager is taking over some
> TPM functionality (i.e: validation) and so the response code is a TSS2_RC_* error
> value, liket is the case for this patch (TPM_RC_COMMAND_CODE).
>
> > * Should the driver code use TSS2 or TPM2 prefix?
> >
>
> That's a very good question. I used TPM2 as prefix instead of TSS2 to keep it
> consistent with the rest of the driver, but probably TSS2 should be used instead
> so people can search more easy the constant in the specification doc.
OK, I'll change the prefix.
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
I'll postpone testing to next week as I try to get v7 of the SGX patch
set done during this week.
I'll add test case or two for this to my smoke test suite (contributions
are of course welcome):
https://github.com/jsakkine-intel/tpm2-scripts
/Jarkko