]> git.proxmox.com Git - mirror_edk2.git/blobdiff - CryptoPkg/Library/BaseCryptLib/Rand/CryptRand.c
Fix several issues in BaseCryptLib:
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / Rand / CryptRand.c
index 4b275951e83e70988a545b2062f6da282954ca66..4a056e89d81baa5d10e69b1af9fa9192d0432725 100644 (file)
@@ -43,6 +43,10 @@ RandomSeed (
   IN  UINTN         SeedSize\r
   )\r
 {\r
   IN  UINTN         SeedSize\r
   )\r
 {\r
+  if (SeedSize > INT_MAX) {\r
+    return FALSE;\r
+  }\r
+\r
   //\r
   // Seed the pseudorandom number generator with user-supplied value.\r
   // NOTE: A cryptographic PRNG must be seeded with unpredictable data.\r
   //\r
   // Seed the pseudorandom number generator with user-supplied value.\r
   // NOTE: A cryptographic PRNG must be seeded with unpredictable data.\r
@@ -78,7 +82,7 @@ RandomBytes (
   //\r
   // Check input parameters.\r
   //\r
   //\r
   // Check input parameters.\r
   //\r
-  if (Output == NULL) {\r
+  if (Output == NULL || Size > INT_MAX) {\r
     return FALSE;\r
   }\r
 \r
     return FALSE;\r
   }\r
 \r