Write down the bounds for the sha*_block_data_order functions

May as well.

Change-Id: I0d15f0f6f703129f08df4a105a34c8ff06cb06b5
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/65871
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Bob Beck <bbe@google.com>
diff --git a/crypto/fipsmodule/sha/internal.h b/crypto/fipsmodule/sha/internal.h
index 0c05d73..4a2f081 100644
--- a/crypto/fipsmodule/sha/internal.h
+++ b/crypto/fipsmodule/sha/internal.h
@@ -32,11 +32,11 @@
 #define SHA256_ASM
 #define SHA512_ASM
 
-void sha1_block_data_order(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order(uint32_t state[5], const uint8_t *data,
                            size_t num_blocks);
-void sha256_block_data_order(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order(uint32_t state[8], const uint8_t *data,
                              size_t num_blocks);
-void sha512_block_data_order(uint64_t *state, const uint8_t *data,
+void sha512_block_data_order(uint64_t state[8], const uint8_t *data,
                              size_t num_blocks);
 
 #elif !defined(OPENSSL_NO_ASM) && defined(OPENSSL_ARM)
@@ -51,7 +51,7 @@
 }
 
 #define SHA1_ASM_NEON
-void sha1_block_data_order_neon(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order_neon(uint32_t state[5], const uint8_t *data,
                                 size_t num);
 
 #define SHA256_ASM_HW
@@ -60,12 +60,12 @@
 }
 
 #define SHA256_ASM_NEON
-void sha256_block_data_order_neon(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order_neon(uint32_t state[8], const uint8_t *data,
                                   size_t num);
 
 // Armv8.2 SHA-512 instructions are not available in 32-bit.
 #define SHA512_ASM_NEON
-void sha512_block_data_order_neon(uint64_t *state, const uint8_t *data,
+void sha512_block_data_order_neon(uint64_t state[8], const uint8_t *data,
                                   size_t num);
 
 #elif !defined(OPENSSL_NO_ASM) && defined(OPENSSL_AARCH64)
@@ -105,7 +105,7 @@
   return CRYPTO_is_AVX2_capable() && CRYPTO_is_BMI2_capable() &&
          CRYPTO_is_BMI1_capable();
 }
-void sha1_block_data_order_avx2(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order_avx2(uint32_t state[5], const uint8_t *data,
                                 size_t num);
 
 #define SHA1_ASM_AVX
@@ -114,14 +114,14 @@
   // discussion in sha1-586.pl.
   return CRYPTO_is_AVX_capable() && CRYPTO_is_intel_cpu();
 }
-void sha1_block_data_order_avx(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order_avx(uint32_t state[5], const uint8_t *data,
                                size_t num);
 
 #define SHA1_ASM_SSSE3
 OPENSSL_INLINE int sha1_ssse3_capable(void) {
   return CRYPTO_is_SSSE3_capable();
 }
-void sha1_block_data_order_ssse3(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order_ssse3(uint32_t state[5], const uint8_t *data,
                                  size_t num);
 
 #define SHA256_ASM_HW
@@ -136,14 +136,14 @@
   // discussion in sha1-586.pl.
   return CRYPTO_is_AVX_capable() && CRYPTO_is_intel_cpu();
 }
-void sha256_block_data_order_avx(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order_avx(uint32_t state[8], const uint8_t *data,
                                  size_t num);
 
 #define SHA256_ASM_SSSE3
 OPENSSL_INLINE int sha256_ssse3_capable(void) {
   return CRYPTO_is_SSSE3_capable();
 }
-void sha256_block_data_order_ssse3(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order_ssse3(uint32_t state[8], const uint8_t *data,
                                    size_t num);
 
 #define SHA512_ASM_AVX
@@ -152,35 +152,36 @@
   // discussion in sha1-586.pl.
   return CRYPTO_is_AVX_capable() && CRYPTO_is_intel_cpu();
 }
-void sha512_block_data_order_avx(uint64_t *state, const uint8_t *data,
+void sha512_block_data_order_avx(uint64_t state[8], const uint8_t *data,
                                  size_t num);
 
 #endif
 
 #if defined(SHA1_ASM_HW)
-void sha1_block_data_order_hw(uint32_t *state, const uint8_t *data, size_t num);
+void sha1_block_data_order_hw(uint32_t state[5], const uint8_t *data,
+                              size_t num);
 #endif
 #if defined(SHA1_ASM_NOHW)
-void sha1_block_data_order_nohw(uint32_t *state, const uint8_t *data,
+void sha1_block_data_order_nohw(uint32_t state[5], const uint8_t *data,
                                 size_t num);
 #endif
 
 #if defined(SHA256_ASM_HW)
-void sha256_block_data_order_hw(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order_hw(uint32_t state[8], const uint8_t *data,
                                 size_t num);
 #endif
 #if defined(SHA256_ASM_NOHW)
-void sha256_block_data_order_nohw(uint32_t *state, const uint8_t *data,
+void sha256_block_data_order_nohw(uint32_t state[8], const uint8_t *data,
                                   size_t num);
 #endif
 
 #if defined(SHA512_ASM_HW)
-void sha512_block_data_order_hw(uint64_t *state, const uint8_t *data,
+void sha512_block_data_order_hw(uint64_t state[8], const uint8_t *data,
                                 size_t num);
 #endif
 
 #if defined(SHA512_ASM_NOHW)
-void sha512_block_data_order_nohw(uint64_t *state, const uint8_t *data,
+void sha512_block_data_order_nohw(uint64_t state[8], const uint8_t *data,
                                   size_t num);
 #endif
 
diff --git a/crypto/fipsmodule/sha/sha1.c b/crypto/fipsmodule/sha/sha1.c
index 7a97266..060baa4 100644
--- a/crypto/fipsmodule/sha/sha1.c
+++ b/crypto/fipsmodule/sha/sha1.c
@@ -86,7 +86,7 @@
 }
 
 #if !defined(SHA1_ASM)
-static void sha1_block_data_order(uint32_t *state, const uint8_t *data,
+static void sha1_block_data_order(uint32_t state[5], const uint8_t *data,
                                   size_t num);
 #endif
 
@@ -234,7 +234,7 @@
 #if !defined(SHA1_ASM)
 
 #if !defined(SHA1_ASM_NOHW)
-static void sha1_block_data_order_nohw(uint32_t *state, const uint8_t *data,
+static void sha1_block_data_order_nohw(uint32_t state[5], const uint8_t *data,
                                        size_t num) {
   register uint32_t A, B, C, D, E, T;
   uint32_t XX0, XX1, XX2, XX3, XX4, XX5, XX6, XX7, XX8, XX9, XX10,
@@ -384,7 +384,7 @@
 }
 #endif  // !SHA1_ASM_NOHW
 
-static void sha1_block_data_order(uint32_t *state, const uint8_t *data,
+static void sha1_block_data_order(uint32_t state[5], const uint8_t *data,
                                   size_t num) {
 #if defined(SHA1_ASM_HW)
   if (sha1_hw_capable()) {
diff --git a/crypto/fipsmodule/sha/sha256.c b/crypto/fipsmodule/sha/sha256.c
index 8cedc5f..b7c616b 100644
--- a/crypto/fipsmodule/sha/sha256.c
+++ b/crypto/fipsmodule/sha/sha256.c
@@ -115,7 +115,7 @@
 }
 
 #if !defined(SHA256_ASM)
-static void sha256_block_data_order(uint32_t *state, const uint8_t *in,
+static void sha256_block_data_order(uint32_t state[8], const uint8_t *in,
                                     size_t num);
 #endif
 
@@ -223,7 +223,7 @@
     ROUND_00_15(i, a, b, c, d, e, f, g, h);            \
   } while (0)
 
-static void sha256_block_data_order_nohw(uint32_t *state, const uint8_t *data,
+static void sha256_block_data_order_nohw(uint32_t state[8], const uint8_t *data,
                                          size_t num) {
   uint32_t a, b, c, d, e, f, g, h, s0, s1, T1;
   uint32_t X[16];
@@ -312,7 +312,7 @@
 
 #endif  // !defined(SHA256_ASM_NOHW)
 
-static void sha256_block_data_order(uint32_t *state, const uint8_t *data,
+static void sha256_block_data_order(uint32_t state[8], const uint8_t *data,
                                     size_t num) {
 #if defined(SHA256_ASM_HW)
   if (sha256_hw_capable()) {
diff --git a/crypto/fipsmodule/sha/sha512.c b/crypto/fipsmodule/sha/sha512.c
index d31ab71..ba9d42d 100644
--- a/crypto/fipsmodule/sha/sha512.c
+++ b/crypto/fipsmodule/sha/sha512.c
@@ -156,7 +156,7 @@
 }
 
 #if !defined(SHA512_ASM)
-static void sha512_block_data_order(uint64_t *state, const uint8_t *in,
+static void sha512_block_data_order(uint64_t state[8], const uint8_t *in,
                                     size_t num_blocks);
 #endif
 
@@ -343,7 +343,7 @@
 #if defined(__i386) || defined(__i386__) || defined(_M_IX86)
 // This code should give better results on 32-bit CPU with less than
 // ~24 registers, both size and performance wise...
-static void sha512_block_data_order_nohw(uint64_t *state, const uint8_t *in,
+static void sha512_block_data_order_nohw(uint64_t state[8], const uint8_t *in,
                                          size_t num) {
   uint64_t A, E, T;
   uint64_t X[9 + 80], *F;
@@ -416,7 +416,7 @@
     ROUND_00_15(i + j, a, b, c, d, e, f, g, h);        \
   } while (0)
 
-static void sha512_block_data_order_nohw(uint64_t *state, const uint8_t *in,
+static void sha512_block_data_order_nohw(uint64_t state[8], const uint8_t *in,
                                          size_t num) {
   uint64_t a, b, c, d, e, f, g, h, s0, s1, T1;
   uint64_t X[16];
@@ -502,7 +502,7 @@
 
 #endif  // !SHA512_ASM_NOHW
 
-static void sha512_block_data_order(uint64_t *state, const uint8_t *data,
+static void sha512_block_data_order(uint64_t state[8], const uint8_t *data,
                                     size_t num) {
 #if defined(SHA512_ASM_HW)
   if (sha512_hw_capable()) {