]> git.proxmox.com Git - mirror_edk2.git/blobdiff - CryptoPkg/Library/BaseHashApiLib/BaseHashApiLib.c
CryptoPkg/BaseHashApiLib: Align BaseHashApiLib with TPM 2.0 Implementation
[mirror_edk2.git] / CryptoPkg / Library / BaseHashApiLib / BaseHashApiLib.c
index 277ef9f0b4213b0a74e76cea8611574f846e378f..f9796b2158650fdf261124a53a630de345e2961f 100644 (file)
@@ -12,6 +12,7 @@
 **/\r
 \r
 #include <Base.h>\r
+#include <IndustryStandard/Tpm20.h>\r
 #include <Library/BaseLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
@@ -31,32 +32,24 @@ HashApiGetContextSize (
   VOID\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4GetContextSize ();\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5GetContextSize ();\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1GetContextSize ();\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256GetContextSize ();\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384GetContextSize ();\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512GetContextSize ();\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3GetContextSize ();\r
       break;\r
 \r
@@ -81,32 +74,24 @@ HashApiInit (
   OUT HASH_API_CONTEXT  HashContext\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4Init (HashContext);\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5Init (HashContext);\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1Init (HashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256Init (HashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384Init (HashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512Init (HashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3Init (HashContext);\r
       break;\r
 \r
@@ -133,32 +118,24 @@ HashApiDuplicate (
   OUT HASH_API_CONTEXT  NewHashContext\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4Duplicate (HashContext, NewHashContext);\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5Duplicate (HashContext, NewHashContext);\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1Duplicate (HashContext, NewHashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256Duplicate (HashContext, NewHashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384Duplicate (HashContext, NewHashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512Duplicate (HashContext, NewHashContext);\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3Duplicate (HashContext, NewHashContext);\r
       break;\r
 \r
@@ -187,32 +164,24 @@ HashApiUpdate (
   IN UINTN             DataToHashLen\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4Update (HashContext, DataToHash, DataToHashLen);\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5Update (HashContext, DataToHash, DataToHashLen);\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1Update (HashContext, DataToHash, DataToHashLen);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256Update (HashContext, DataToHash, DataToHashLen);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384Update (HashContext, DataToHash, DataToHashLen);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512Update (HashContext, DataToHash, DataToHashLen);\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3Update (HashContext, DataToHash, DataToHashLen);\r
       break;\r
 \r
@@ -239,32 +208,24 @@ HashApiFinal (
   OUT UINT8             *Digest\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4Final (HashContext, Digest);\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5Final (HashContext, Digest);\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1Final (HashContext, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256Final (HashContext, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384Final (HashContext, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512Final (HashContext, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3Final (HashContext, Digest);\r
       break;\r
 \r
@@ -293,32 +254,24 @@ HashApiHashAll (
   OUT UINT8       *Digest\r
   )\r
 {\r
-  switch (PcdGet8 (PcdHashApiLibPolicy)) {\r
-    case HASH_API_ALGO_MD4:\r
-      return Md4HashAll (DataToHash, DataToHashLen, Digest);\r
-      break;\r
-\r
-    case HASH_API_ALGO_MD5:\r
-      return Md5HashAll (DataToHash, DataToHashLen, Digest);\r
-      break;\r
-\r
-    case HASH_API_ALGO_SHA1:\r
+  switch (PcdGet32 (PcdHashApiLibPolicy)) {\r
+    case HASH_ALG_SHA1:\r
       return Sha1HashAll (DataToHash, DataToHashLen, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA256:\r
+    case HASH_ALG_SHA256:\r
       return Sha256HashAll (DataToHash, DataToHashLen, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA384:\r
+    case HASH_ALG_SHA384:\r
       return Sha384HashAll (DataToHash, DataToHashLen, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SHA512:\r
+    case HASH_ALG_SHA512:\r
       return Sha512HashAll (DataToHash, DataToHashLen, Digest);\r
       break;\r
 \r
-    case HASH_API_ALGO_SM3_256:\r
+    case HASH_ALG_SM3_256:\r
       return Sm3HashAll (DataToHash, DataToHashLen, Digest);\r
       break;\r
 \r