[PATCH v2 0/3] tpm_pcr_extend() code split
From: roberto.sassu@huawei.com (Roberto Sassu)
Date: 2017-05-04 12:37:36
Also in:
lkml
On 5/4/2017 11:24 AM, Jarkko Sakkinen wrote:
On Wed, May 03, 2017 at 06:19:08PM +0200, Roberto Sassu wrote:quoted
This patch set moves TPM 1.2 specific code to a new function called tpm1_pcr_extend(). The purpose of splitting is to isolate TPM 2.0 code, so that it can be more easily modified to handle multiple digests. With TPM 2.0, a Platform Configuration Register (PCR) could have multiple values, stored in locations called banks. Each bank stores the values of PCRs extended with the same hash algorithm. Currently, the TPM kernel driver does not take advantage of stronger algorithms because PCRs are always extended with a SHA1 digest, padded with zeros to match the length of the input for the hash algorithm being used. Shortly after these patches, a new patch set will be provided to allow callers of tpm_pcr_extend() to pass a digest for each algorithm supported by the TPM. In this patch set, TPM 1.2 specific code will prepare the command buffer with tpm_buf_init() which, in respect to the previous method, offers protection against buffer overflow. Moreover, CPU native to big-endian conversion has been removed from tags and ordinals definitions, as it is already done by tpm_buf_init(). Changelog: v2 - restored TPM_TAG_RQU_COMMAND definition in drivers/char/tpm/tpm.h - removed endianness conversion in TPM_TAG_RQU_COMMAND definition - removed '#include <linux/tpm_command.h>' in tpm-interface.c and tpm-sysfs.c - restored TPM_ORD_ definitions in tpm-interface.c and tpm-sysfs.c Roberto Sassu (3): tpm: move endianness conversion of TPM_TAG_RQU_COMMAND to tpm_input_header tpm: move endianness conversion of ordinals to tpm_input_header tpm: move TPM 1.2 code of tpm_pcr_extend() to tpm1_pcr_extend() drivers/char/tpm/tpm-interface.c | 79 ++++++++++++++++++++++------------------ drivers/char/tpm/tpm-sysfs.c | 6 +-- drivers/char/tpm/tpm.h | 2 +- 3 files changed, 47 insertions(+), 40 deletions(-)Thanks for good quality patches! I'll test these but with quick skim no complains whatsoever :-)
Very good! We will see if it will be the same for the next patch set! Roberto -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo at vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html