public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: edk2-devel-groups-io <devel@edk2.groups.io>
Cc: Chao Zhang <chao.b.zhang@intel.com>,
	Imran Desai <imran.desai@intel.com>,
	Jian Wang <jian.j.wang@intel.com>,
	Jiewen Yao <jiewen.yao@intel.com>,
	Leif Lindholm <leif.lindholm@linaro.org>
Subject: [PATCH 4/5] Revert "SecurityPkg: introduce the SM3 digest algorithm"
Date: Thu,  4 Jul 2019 11:46:23 +0200	[thread overview]
Message-ID: <20190704094624.21057-5-lersek@redhat.com> (raw)
In-Reply-To: <20190704094624.21057-1-lersek@redhat.com>

This reverts commit 06dd5863b66edd9908834371e07fb4e11383c172.

The reason is that said commit directly depends on commit 49c1e683c452
("MdePkg/Protocol/Hash: introduce GUID for SM3", 2019-07-03), and the
latter commit is going to be reverted, due to its review process not
having followed established edk2 norms.

Cc: Chao Zhang <chao.b.zhang@intel.com>
Cc: Imran Desai <imran.desai@intel.com>
Cc: Jian Wang <jian.j.wang@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1781
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.uni |  15 --
 SecurityPkg/SecurityPkg.dsc                                   |   3 -
 SecurityPkg/Include/Library/HashLib.h                         |   1 -
 SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf |  41 ------
 SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.c   | 150 --------------------
 5 files changed, 210 deletions(-)

diff --git a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.uni b/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.uni
deleted file mode 100644
index 07a5c53d9915..000000000000
--- a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.uni
+++ /dev/null
@@ -1,15 +0,0 @@
-// /** @file
-// Provides BaseCrypto SM3 hash service
-//
-// This library can be registered to BaseCrypto router, to serve as hash engine.
-//
-// Copyright (c) 2013 - 2019, Intel Corporation. All rights reserved.<BR>
-// SPDX-License-Identifier: BSD-2-Clause-Patent
-//
-// **/
-
-
-#string STR_MODULE_ABSTRACT             #language en-US "Provides BaseCrypto SM3 hash service"
-
-#string STR_MODULE_DESCRIPTION          #language en-US "This library can be registered to BaseCrypto router, to serve as hash engine."
-
diff --git a/SecurityPkg/SecurityPkg.dsc b/SecurityPkg/SecurityPkg.dsc
index aef2ac3a208d..60f3b0110eb7 100644
--- a/SecurityPkg/SecurityPkg.dsc
+++ b/SecurityPkg/SecurityPkg.dsc
@@ -226,7 +226,6 @@ [Components.IA32, Components.X64]
   SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
   SecurityPkg/Library/HashInstanceLibSha384/HashInstanceLibSha384.inf
   SecurityPkg/Library/HashInstanceLibSha512/HashInstanceLibSha512.inf
-  SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
 
   SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf {
     <LibraryClasses>
@@ -241,7 +240,6 @@ [Components.IA32, Components.X64]
       NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
       NULL|SecurityPkg/Library/HashInstanceLibSha384/HashInstanceLibSha384.inf
       NULL|SecurityPkg/Library/HashInstanceLibSha512/HashInstanceLibSha512.inf
-      NULL|SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
   }
 
   SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf {
@@ -252,7 +250,6 @@ [Components.IA32, Components.X64]
       NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
       NULL|SecurityPkg/Library/HashInstanceLibSha384/HashInstanceLibSha384.inf
       NULL|SecurityPkg/Library/HashInstanceLibSha512/HashInstanceLibSha512.inf
-      NULL|SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
       PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
   }
   SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigDxe.inf {
diff --git a/SecurityPkg/Include/Library/HashLib.h b/SecurityPkg/Include/Library/HashLib.h
index a5b433d824a4..63f08398788b 100644
--- a/SecurityPkg/Include/Library/HashLib.h
+++ b/SecurityPkg/Include/Library/HashLib.h
@@ -137,7 +137,6 @@ EFI_STATUS
 #define HASH_ALGORITHM_SHA256_GUID  EFI_HASH_ALGORITHM_SHA256_GUID
 #define HASH_ALGORITHM_SHA384_GUID  EFI_HASH_ALGORITHM_SHA384_GUID
 #define HASH_ALGORITHM_SHA512_GUID  EFI_HASH_ALGORITHM_SHA512_GUID
-#define HASH_ALGORITHM_SM3_256_GUID EFI_HASH_ALGORITHM_SM3_256_GUID
 
 typedef struct {
   EFI_GUID                           HashGuid;
diff --git a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf b/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
deleted file mode 100644
index 781164d74ea0..000000000000
--- a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
+++ /dev/null
@@ -1,41 +0,0 @@
-## @file
-#  Provides BaseCrypto SM3 hash service
-#
-#  This library can be registered to BaseCrypto router, to serve as hash engine.
-#
-#  Copyright (c) 2013 - 2019, Intel Corporation. All rights reserved.<BR>
-#  SPDX-License-Identifier: BSD-2-Clause-Patent
-#
-##
-
-[Defines]
-  INF_VERSION                    = 0x00010005
-  BASE_NAME                      = HashInstanceLibSm3
-  MODULE_UNI_FILE                = HashInstanceLibSm3.uni
-  FILE_GUID                      = C5865D5D-9ACE-39FB-DC7C-0511891D40F9
-  MODULE_TYPE                    = BASE
-  VERSION_STRING                 = 1.0
-  LIBRARY_CLASS                  = NULL
-  CONSTRUCTOR                    = HashInstanceLibSm3Constructor
-
-#
-# The following information is for reference only and not required by the build tools.
-#
-#  VALID_ARCHITECTURES           = IA32 X64
-#
-
-[Sources]
-  HashInstanceLibSm3.c
-
-[Packages]
-  MdePkg/MdePkg.dec
-  SecurityPkg/SecurityPkg.dec
-  CryptoPkg/CryptoPkg.dec
-
-[LibraryClasses]
-  BaseLib
-  BaseMemoryLib
-  DebugLib
-  Tpm2CommandLib
-  MemoryAllocationLib
-  BaseCryptLib
diff --git a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.c b/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.c
deleted file mode 100644
index 8fd95162118a..000000000000
--- a/SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.c
+++ /dev/null
@@ -1,150 +0,0 @@
-/** @file
-  BaseCrypto SM3 hash instance library.
-  It can be registered to BaseCrypto router, to serve as hash engine.
-
-  Copyright (c) 2013 - 2019, Intel Corporation. All rights reserved.<BR>
-  SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#include <PiPei.h>
-#include <Library/BaseLib.h>
-#include <Library/BaseMemoryLib.h>
-#include <Library/Tpm2CommandLib.h>
-#include <Library/DebugLib.h>
-#include <Library/BaseCryptLib.h>
-#include <Library/MemoryAllocationLib.h>
-#include <Library/HashLib.h>
-
-/**
-  The function set SM3 to digest list.
-
-  @param DigestList   digest list
-  @param Sm3Digest    SM3 digest
-**/
-VOID
-Tpm2SetSm3ToDigestList (
-  IN TPML_DIGEST_VALUES *DigestList,
-  IN UINT8              *Sm3Digest
-  )
-{
-  DigestList->count = 1;
-  DigestList->digests[0].hashAlg = TPM_ALG_SM3_256;
-  CopyMem (
-    DigestList->digests[0].digest.sm3_256,
-    Sm3Digest,
-    SM3_256_DIGEST_SIZE
-    );
-}
-
-/**
-  Start hash sequence.
-
-  @param HashHandle Hash handle.
-
-  @retval EFI_SUCCESS          Hash sequence start and HandleHandle returned.
-  @retval EFI_OUT_OF_RESOURCES No enough resource to start hash.
-**/
-EFI_STATUS
-EFIAPI
-Sm3HashInit (
-  OUT HASH_HANDLE    *HashHandle
-  )
-{
-  VOID     *Sm3Ctx;
-  UINTN    CtxSize;
-
-  CtxSize = Sm3GetContextSize ();
-  Sm3Ctx = AllocatePool (CtxSize);
-  if (Sm3Ctx == NULL) {
-    return EFI_OUT_OF_RESOURCES;
-  }
-
-  Sm3Init (Sm3Ctx);
-
-  *HashHandle = (HASH_HANDLE)Sm3Ctx;
-
-  return EFI_SUCCESS;
-}
-
-/**
-  Update hash sequence data.
-
-  @param HashHandle    Hash handle.
-  @param DataToHash    Data to be hashed.
-  @param DataToHashLen Data size.
-
-  @retval EFI_SUCCESS     Hash sequence updated.
-**/
-EFI_STATUS
-EFIAPI
-Sm3HashUpdate (
-  IN HASH_HANDLE    HashHandle,
-  IN VOID           *DataToHash,
-  IN UINTN          DataToHashLen
-  )
-{
-  VOID     *Sm3Ctx;
-
-  Sm3Ctx = (VOID *)HashHandle;
-  Sm3Update (Sm3Ctx, DataToHash, DataToHashLen);
-
-  return EFI_SUCCESS;
-}
-
-/**
-  Complete hash sequence complete.
-
-  @param HashHandle    Hash handle.
-  @param DigestList    Digest list.
-
-  @retval EFI_SUCCESS     Hash sequence complete and DigestList is returned.
-**/
-EFI_STATUS
-EFIAPI
-Sm3HashFinal (
-  IN HASH_HANDLE         HashHandle,
-  OUT TPML_DIGEST_VALUES *DigestList
-  )
-{
-  UINT8         Digest[SM3_256_DIGEST_SIZE];
-  VOID          *Sm3Ctx;
-
-  Sm3Ctx = (VOID *)HashHandle;
-  Sm3Final (Sm3Ctx, Digest);
-
-  FreePool (Sm3Ctx);
-
-  Tpm2SetSm3ToDigestList (DigestList, Digest);
-
-  return EFI_SUCCESS;
-}
-
-HASH_INTERFACE  mSm3InternalHashInstance = {
-  HASH_ALGORITHM_SM3_256_GUID,
-  Sm3HashInit,
-  Sm3HashUpdate,
-  Sm3HashFinal,
-};
-
-/**
-  The function register SM3 instance.
-
-  @retval EFI_SUCCESS   SM3 instance is registered, or system dose not support register SM3 instance
-**/
-EFI_STATUS
-EFIAPI
-HashInstanceLibSm3Constructor (
-  VOID
-  )
-{
-  EFI_STATUS  Status;
-
-  Status = RegisterHashInterfaceLib (&mSm3InternalHashInstance);
-  if ((Status == EFI_SUCCESS) || (Status == EFI_UNSUPPORTED)) {
-    //
-    // Unsupported means platform policy does not need this instance enabled.
-    //
-    return EFI_SUCCESS;
-  }
-  return Status;
-}
-- 
2.19.1.3.g30247aa5d201



  parent reply	other threads:[~2019-07-04  9:46 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-04  9:46 [PATCH 0/5] MdePkg, SecurityPkg, OvmfPkg: revert unreviewed SM3 patches Laszlo Ersek
2019-07-04  9:46 ` [PATCH 1/5] Revert "OvmfPkg: link SM3 support into Tcg2Pei and Tcg2Dxe" Laszlo Ersek
2019-07-04  9:46 ` [PATCH 2/5] Revert "SecurityPkg: set SM3 bit in TPM 2.0 hash mask by default" Laszlo Ersek
2019-07-04  9:46 ` [PATCH 3/5] Revert "SecurityPkg/HashLibBaseCryptoRouter: recognize the SM3 digest algorithm" Laszlo Ersek
2019-07-04  9:46 ` Laszlo Ersek [this message]
2019-07-04  9:46 ` [PATCH 5/5] Revert "MdePkg/Protocol/Hash: introduce GUID for SM3" Laszlo Ersek
2019-07-04  9:59 ` [edk2-devel] [PATCH 0/5] MdePkg, SecurityPkg, OvmfPkg: revert unreviewed SM3 patches Leif Lindholm
2019-07-04 10:58 ` Philippe Mathieu-Daudé
2019-07-04 16:05 ` Laszlo Ersek
2019-07-04 18:13   ` Philippe Mathieu-Daudé
2019-07-05  3:08   ` Wang, Jian J

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190704094624.21057-5-lersek@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox