From 64a45882c70e29a725c57894e7f80a6161f457bc Mon Sep 17 00:00:00 2001 From: Pauli Date: Fri, 29 Mar 2019 18:17:38 +1000 Subject: [PATCH] Ensure that the struct msghdr is properly zeroed. This is probably harmless but best to properly initialise things. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/8611) --- engines/e_afalg.c | 3 ++- include/internal/ktls.h | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/engines/e_afalg.c b/engines/e_afalg.c index 19d98d897b..c3f622e752 100644 --- a/engines/e_afalg.c +++ b/engines/e_afalg.c @@ -412,7 +412,7 @@ static int afalg_start_cipher_sk(afalg_ctx *actx, const unsigned char *in, size_t inl, const unsigned char *iv, unsigned int enc) { - struct msghdr msg = { 0 }; + struct msghdr msg; struct cmsghdr *cmsg; struct iovec iov; ssize_t sbytes; @@ -421,6 +421,7 @@ static int afalg_start_cipher_sk(afalg_ctx *actx, const unsigned char *in, # endif char cbuf[CMSG_SPACE(ALG_IV_LEN(ALG_AES_IV_LEN)) + CMSG_SPACE(ALG_OP_LEN)]; + memset(&msg, 0, sizeof(msg)); memset(cbuf, 0, sizeof(cbuf)); msg.msg_control = cbuf; msg.msg_controllen = sizeof(cbuf); diff --git a/include/internal/ktls.h b/include/internal/ktls.h index 542acf3785..23a0397a0a 100644 --- a/include/internal/ktls.h +++ b/include/internal/ktls.h @@ -118,12 +118,13 @@ static ossl_inline int ktls_start(int fd, static ossl_inline int ktls_send_ctrl_message(int fd, unsigned char record_type, const void *data, size_t length) { - struct msghdr msg = { 0 }; + struct msghdr msg; int cmsg_len = sizeof(record_type); struct cmsghdr *cmsg; char buf[CMSG_SPACE(cmsg_len)]; struct iovec msg_iov; /* Vector of data to send/receive into */ + memset(&msg, 0, sizeof(msg)); msg.msg_control = buf; msg.msg_controllen = sizeof(buf); cmsg = CMSG_FIRSTHDR(&msg); -- 2.25.1