Fix compilation warning with GCC11.
authorJuergen Christ <jchrist@linux.ibm.com>
Tue, 25 May 2021 16:03:06 +0000 (18:03 +0200)
committerPauli <pauli@openssl.org>
Thu, 27 May 2021 10:31:13 +0000 (20:31 +1000)
Parameter "header" of ssl3_cbc_digest_record was fixed to a 13 bytes header
but used as a pointer.  This caused a warning about out-of-bounds array access
with GCC 11.

Fixes #15462.

Signed-off-by: Juergen Christ <jchrist@linux.ibm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15463)

ssl/s3_cbc.c
ssl/ssl_local.h

index f5db247e92b485b02f18d322f426df6c0b0a9423..8e1c779ddb53049d46b80a2e65926c546e526b18 100644 (file)
@@ -34,7 +34,7 @@ char ssl3_cbc_record_digest_supported(const EVP_MD_CTX *ctx);
 int ssl3_cbc_digest_record(const EVP_MD *md,
                            unsigned char *md_out,
                            size_t *md_out_size,
-                           const unsigned char header[13],
+                           const unsigned char *header,
                            const unsigned char *data,
                            size_t data_size,
                            size_t data_plus_mac_plus_padding_size,
@@ -156,7 +156,7 @@ static void tls1_sha512_final_raw(void *ctx, unsigned char *md_out)
 int ssl3_cbc_digest_record(const EVP_MD *md,
                            unsigned char *md_out,
                            size_t *md_out_size,
-                           const unsigned char header[13],
+                           const unsigned char *header,
                            const unsigned char *data,
                            size_t data_size,
                            size_t data_plus_mac_plus_padding_size,
index 8f3a2f93d6d4fd2767d02482d3b61090d0924325..28603a81adb1affad4afc4a43bd5755e88982e82 100644 (file)
@@ -2770,7 +2770,7 @@ __owur char ssl3_cbc_record_digest_supported(const EVP_MD_CTX *ctx);
 __owur int ssl3_cbc_digest_record(const EVP_MD *md,
                                   unsigned char *md_out,
                                   size_t *md_out_size,
-                                  const unsigned char header[13],
+                                  const unsigned char *header,
                                   const unsigned char *data,
                                   size_t data_size,
                                   size_t data_plus_mac_plus_padding_size,