From c261053186c455abc63ca5ac7d56c0808a59c364 Mon Sep 17 00:00:00 2001 From: Jeroen Koekkoek Date: Thu, 30 Jul 2020 14:10:39 +0200 Subject: [PATCH] Workaround for stringop-overflow warning with GCC 10 Signed-off-by: Jeroen Koekkoek --- .../cryptographic/src/crypto_transform.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/security/builtin_plugins/cryptographic/src/crypto_transform.c b/src/security/builtin_plugins/cryptographic/src/crypto_transform.c index 58b1da3..0161e5c 100644 --- a/src/security/builtin_plugins/cryptographic/src/crypto_transform.c +++ b/src/security/builtin_plugins/cryptographic/src/crypto_transform.c @@ -930,8 +930,9 @@ add_reader_specific_mac( else { uint32_t key_id = ddsrt_toBE4u(key_material->receiver_specific_key_id); - memcpy(footer->receiver_specific_macs._buffer[index].receiver_mac.data, hmac.data, CRYPTO_HMAC_SIZE); - memcpy(footer->receiver_specific_macs._buffer[index].receiver_mac_key_id, &key_id, sizeof(key_id)); + struct receiver_specific_mac *rcvmac = footer->receiver_specific_macs._buffer + index; + memcpy(rcvmac->receiver_mac.data, hmac.data, CRYPTO_HMAC_SIZE); + memcpy(rcvmac->receiver_mac_key_id, &key_id, sizeof(key_id)); footer->receiver_specific_macs._length = ddsrt_toBE4u(++index); } } @@ -1014,8 +1015,9 @@ add_receiver_specific_mac( else { uint32_t key_id = ddsrt_toBE4u(pp_key_material->local_P2P_key_material->receiver_specific_key_id); - memcpy(footer->receiver_specific_macs._buffer[index].receiver_mac.data, hmac.data, CRYPTO_HMAC_SIZE); - memcpy(footer->receiver_specific_macs._buffer[index].receiver_mac_key_id, &key_id, sizeof(key_id)); + struct receiver_specific_mac *rcvmac = footer->receiver_specific_macs._buffer + index; + memcpy(rcvmac->receiver_mac.data, hmac.data, CRYPTO_HMAC_SIZE); + memcpy(rcvmac->receiver_mac_key_id, &key_id, sizeof(key_id)); footer->receiver_specific_macs._length = ddsrt_toBE4u(++index); } }