All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tpm: Remove unused functions and structures
@ 2020-07-29 13:31 Tianjia Zhang
  2020-09-18 18:52 ` Daniel Kiper
  0 siblings, 1 reply; 2+ messages in thread
From: Tianjia Zhang @ 2020-07-29 13:31 UTC (permalink / raw)
  To: grub-devel; +Cc: tianjia.zhang

Although the tpm_execute() series of functions are defined, they
are not used anywhere, and several structures in the header file
`tpm.h` are also not used. Delete them here.

Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
---
 grub-core/commands/efi/tpm.c | 97 ------------------------------------
 include/grub/tpm.h           | 41 ---------------
 2 files changed, 138 deletions(-)

diff --git a/grub-core/commands/efi/tpm.c b/grub-core/commands/efi/tpm.c
index 3ea37a15e..b03b6b296 100644
--- a/grub-core/commands/efi/tpm.c
+++ b/grub-core/commands/efi/tpm.c
@@ -119,103 +119,6 @@ grub_tpm_handle_find (grub_efi_handle_t *tpm_handle,
   return 0;
 }
 
-static grub_err_t
-grub_tpm1_execute (grub_efi_handle_t tpm_handle,
-                   PassThroughToTPM_InputParamBlock *inbuf,
-                   PassThroughToTPM_OutputParamBlock *outbuf)
-{
-  grub_efi_status_t status;
-  grub_efi_tpm_protocol_t *tpm;
-  grub_uint32_t inhdrsize = sizeof (*inbuf) - sizeof (inbuf->TPMOperandIn);
-  grub_uint32_t outhdrsize =
-    sizeof (*outbuf) - sizeof (outbuf->TPMOperandOut);
-
-  tpm = grub_efi_open_protocol (tpm_handle, &tpm_guid,
-				GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL);
-
-  if (!grub_tpm1_present (tpm))
-    return 0;
-
-  /* UEFI TPM protocol takes the raw operand block, no param block header. */
-  status = efi_call_5 (tpm->pass_through_to_tpm, tpm,
-		       inbuf->IPBLength - inhdrsize, inbuf->TPMOperandIn,
-		       outbuf->OPBLength - outhdrsize, outbuf->TPMOperandOut);
-
-  switch (status)
-    {
-    case GRUB_EFI_SUCCESS:
-      return 0;
-    case GRUB_EFI_DEVICE_ERROR:
-      return grub_error (GRUB_ERR_IO, N_("Command failed"));
-    case GRUB_EFI_INVALID_PARAMETER:
-      return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter"));
-    case GRUB_EFI_BUFFER_TOO_SMALL:
-      return grub_error (GRUB_ERR_BAD_ARGUMENT,
-			 N_("Output buffer too small"));
-    case GRUB_EFI_NOT_FOUND:
-      return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable"));
-    default:
-      return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error"));
-    }
-}
-
-static grub_err_t
-grub_tpm2_execute (grub_efi_handle_t tpm_handle,
-                   PassThroughToTPM_InputParamBlock *inbuf,
-                   PassThroughToTPM_OutputParamBlock *outbuf)
-{
-  grub_efi_status_t status;
-  grub_efi_tpm2_protocol_t *tpm;
-  grub_uint32_t inhdrsize = sizeof (*inbuf) - sizeof (inbuf->TPMOperandIn);
-  grub_uint32_t outhdrsize =
-    sizeof (*outbuf) - sizeof (outbuf->TPMOperandOut);
-
-  tpm = grub_efi_open_protocol (tpm_handle, &tpm2_guid,
-				GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL);
-
-  if (!grub_tpm2_present (tpm))
-    return 0;
-
-  /* UEFI TPM protocol takes the raw operand block, no param block header. */
-  status = efi_call_5 (tpm->submit_command, tpm,
-		       inbuf->IPBLength - inhdrsize, inbuf->TPMOperandIn,
-		       outbuf->OPBLength - outhdrsize, outbuf->TPMOperandOut);
-
-  switch (status)
-    {
-    case GRUB_EFI_SUCCESS:
-      return 0;
-    case GRUB_EFI_DEVICE_ERROR:
-      return grub_error (GRUB_ERR_IO, N_("Command failed"));
-    case GRUB_EFI_INVALID_PARAMETER:
-      return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter"));
-    case GRUB_EFI_BUFFER_TOO_SMALL:
-      return grub_error (GRUB_ERR_BAD_ARGUMENT,
-			 N_("Output buffer too small"));
-    case GRUB_EFI_NOT_FOUND:
-      return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable"));
-    default:
-      return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error"));
-    }
-}
-
-grub_err_t
-grub_tpm_execute (PassThroughToTPM_InputParamBlock *inbuf,
-		  PassThroughToTPM_OutputParamBlock *outbuf)
-{
-  grub_efi_handle_t tpm_handle;
-  grub_uint8_t protocol_version;
-
-  /* Absence of a TPM isn't a failure. */
-  if (!grub_tpm_handle_find (&tpm_handle, &protocol_version))
-    return 0;
-
-  if (protocol_version == 1)
-    return grub_tpm1_execute (tpm_handle, inbuf, outbuf);
-  else
-    return grub_tpm2_execute (tpm_handle, inbuf, outbuf);
-}
-
 static grub_err_t
 grub_tpm1_log_event (grub_efi_handle_t tpm_handle, unsigned char *buf,
 		     grub_size_t size, grub_uint8_t pcr,
diff --git a/include/grub/tpm.h b/include/grub/tpm.h
index 304507957..5c285cbc5 100644
--- a/include/grub/tpm.h
+++ b/include/grub/tpm.h
@@ -34,47 +34,6 @@
 
 #define EV_IPL 0x0d
 
-/* TCG_PassThroughToTPM Input Parameter Block. */
-typedef struct
-{
-  grub_uint16_t IPBLength;
-  grub_uint16_t Reserved1;
-  grub_uint16_t OPBLength;
-  grub_uint16_t Reserved2;
-  grub_uint8_t  TPMOperandIn[1];
-} GRUB_PACKED PassThroughToTPM_InputParamBlock;
-
-/* TCG_PassThroughToTPM Output Parameter Block. */
-typedef struct
-{
-  grub_uint16_t OPBLength;
-  grub_uint16_t Reserved;
-  grub_uint8_t  TPMOperandOut[1];
-} GRUB_PACKED PassThroughToTPM_OutputParamBlock;
-
-typedef struct
-{
-  grub_uint16_t tag;
-  grub_uint32_t paramSize;
-  grub_uint32_t ordinal;
-  grub_uint32_t pcrNum;
-  /* The 160 bit value representing the event to be recorded. */
-  grub_uint8_t  inDigest[SHA1_DIGEST_SIZE];
-} GRUB_PACKED ExtendIncoming;
-
-/* TPM_Extend Outgoing Operand. */
-typedef struct
-{
-  grub_uint16_t tag;
-  grub_uint32_t paramSize;
-  grub_uint32_t returnCode;
-  /* The PCR value after execution of the command. */
-  grub_uint8_t  outDigest[SHA1_DIGEST_SIZE];
-} GRUB_PACKED ExtendOutgoing;
-
 grub_err_t grub_tpm_measure (unsigned char *buf, grub_size_t size,
 			     grub_uint8_t pcr, const char *description);
-grub_err_t grub_tpm_init (void);
-grub_err_t grub_tpm_execute (PassThroughToTPM_InputParamBlock *inbuf,
-			     PassThroughToTPM_OutputParamBlock *outbuf);
 #endif
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] tpm: Remove unused functions and structures
  2020-07-29 13:31 [PATCH] tpm: Remove unused functions and structures Tianjia Zhang
@ 2020-09-18 18:52 ` Daniel Kiper
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Kiper @ 2020-09-18 18:52 UTC (permalink / raw)
  To: Tianjia Zhang; +Cc: grub-devel

On Wed, Jul 29, 2020 at 09:31:14PM +0800, Tianjia Zhang wrote:
> Although the tpm_execute() series of functions are defined, they
> are not used anywhere, and several structures in the header file
> `tpm.h` are also not used. Delete them here.
>
> Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>

Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

Daniel


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-09-18 18:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-29 13:31 [PATCH] tpm: Remove unused functions and structures Tianjia Zhang
2020-09-18 18:52 ` Daniel Kiper

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.