Patch "tpm: fix RC value check in tpm2_seal_trusted" has been added to the 4.9-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
tpm: fix RC value check in tpm2_seal_trusted
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
tpm-fix-rc-value-check-in-tpm2_seal_trusted.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
7d761119a914ec0ac05ec2a5378d1f86e680967dMon Sep 17 00:00:00 2001
From: Jarkko Sakkinen <[email protected]>
Date: Wed, 25 Jan 2017 23:00:22 +0200
Subject: tpm: fix RC value check in tpm2_seal_trusted
From: Jarkko Sakkinen <[email protected]>
commit 7d761119a914ec0ac05ec2a5378d1f86e680967d upstream.
The error code handling is broken as any error code that has the same bits set as TPM_RC_HASH passes. Implemented tpm2_rc_value() helper to parse the error value from FMT0 and FMT1 error codes so that these types of mistakes are prevented in the future.
--- drivers/char/tpm/tpm.h | 5 +++++ drivers/char/tpm/tpm2-cmd.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-)
drivers/char/tpm/tpm.h +5 -0
@@ -518,6 +518,11 @@ static inline void tpm_add_ppi(struct tp }#endif +static inline inline u32 tpm2_rc_value (u32 rc) +{ +return (rc &BIT (7 )) ? rc &0xff : rc; +} +int tpm2_pcr_read (struct tpm_chip *chip,int pcr_idx,u8 *res_buf);int tpm2_pcr_extend (struct tpm_chip *chip,int pcr_idx,const u8 *hash);int tpm2_get_random (struct tpm_chip *chip,u8 *out,size_t max);
drivers/char/tpm/tpm2-cmd.c +1 -1
@@ -529,7 +529,7 @@ out:tpm_buf_destroy (&buf);if (rc >0 ) { -if ((rc &TPM2_RC_HASH ) ==TPM2_RC_HASH ) +if (tpm2_rc_value (rc) ==TPM2_RC_HASH ) rc = -EINVAL ;else rc = -EPERM ;
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/tpm-fix-rc-value-check-in-tpm2_seal_trusted.patch queue-4.9/tmp-use-pdev-for-parent-device-in-tpm_chip_alloc.patch