[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-keyrings
Subject: Re: [PATCH 06/12] tpm: export the context save and load commands
From: Jarkko Sakkinen <jarkko () kernel ! org>
Date: 2023-02-27 8:37:59
Message-ID: Y/xr53SmY3aDZV2D () kernel ! org
[Download RAW message or body]
On Thu, Feb 16, 2023 at 03:14:04PM -0500, James Bottomley wrote:
> The TPM2 session HMAC and encryption handling code needs to save and
> restore a single volatile context for the elliptic curve version of
> the NULL seed, so export the APIs which do this for internal use.
>
> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
These did not need EXPORT_SYMBOL_GPL()?
> ---
> drivers/char/tpm/tpm.h | 4 ++++
> drivers/char/tpm/tpm2-space.c | 8 ++++----
> 2 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h
> index 24ee4e1cc452..a5fe37977103 100644
> --- a/drivers/char/tpm/tpm.h
> +++ b/drivers/char/tpm/tpm.h
> @@ -237,6 +237,10 @@ int tpm2_commit_space(struct tpm_chip *chip, struct tpm_space *space, void *buf,
> size_t *bufsiz);
> int tpm_devs_add(struct tpm_chip *chip);
> void tpm_devs_remove(struct tpm_chip *chip);
> +int tpm2_save_context(struct tpm_chip *chip, u32 handle, u8 *buf,
> + unsigned int buf_size, unsigned int *offset);
> +int tpm2_load_context(struct tpm_chip *chip, u8 *buf,
> + unsigned int *offset, u32 *handle);
>
> void tpm_bios_log_setup(struct tpm_chip *chip);
> void tpm_bios_log_teardown(struct tpm_chip *chip);
> diff --git a/drivers/char/tpm/tpm2-space.c b/drivers/char/tpm/tpm2-space.c
> index ffb35f0154c1..d77ee4af9d65 100644
> --- a/drivers/char/tpm/tpm2-space.c
> +++ b/drivers/char/tpm/tpm2-space.c
> @@ -68,8 +68,8 @@ void tpm2_del_space(struct tpm_chip *chip, struct tpm_space *space)
> kfree(space->session_buf);
> }
>
> -static int tpm2_load_context(struct tpm_chip *chip, u8 *buf,
> - unsigned int *offset, u32 *handle)
> +int tpm2_load_context(struct tpm_chip *chip, u8 *buf,
> + unsigned int *offset, u32 *handle)
> {
> struct tpm_buf tbuf;
> struct tpm2_context *ctx;
> @@ -119,8 +119,8 @@ static int tpm2_load_context(struct tpm_chip *chip, u8 *buf,
> return 0;
> }
>
> -static int tpm2_save_context(struct tpm_chip *chip, u32 handle, u8 *buf,
> - unsigned int buf_size, unsigned int *offset)
> +int tpm2_save_context(struct tpm_chip *chip, u32 handle, u8 *buf,
> + unsigned int buf_size, unsigned int *offset)
> {
> struct tpm_buf tbuf;
> unsigned int body_size;
> --
> 2.35.3
>
BR, Jarkko
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic