Fix several issues in BaseCryptLib:
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / Rand / CryptRand.c
index 4b27595..4a056e8 100644 (file)
@@ -43,6 +43,10 @@ RandomSeed (
   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
@@ -78,7 +82,7 @@ RandomBytes (
   //\r
   // Check input parameters.\r
   //\r
-  if (Output == NULL) {\r
+  if (Output == NULL || Size > INT_MAX) {\r
     return FALSE;\r
   }\r
 \r