sal/rtl/cipher.cxx | 13 ++++++++----- sal/rtl/digest.cxx | 16 ++++++++-------- 2 files changed, 16 insertions(+), 13 deletions(-)
New commits: commit b893e3a63f899e276ebb5c88c9458ebed2eb08a0 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Oct 19 13:26:12 2018 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Sat Oct 20 13:50:00 2018 +0200 use rtl_secureZeroMemory when we're zeroing temporaries before returning Change-Id: I0c3efa394511e479d925f5320977d071e8301f8d Reviewed-on: https://gerrit.libreoffice.org/62002 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/sal/rtl/cipher.cxx b/sal/rtl/cipher.cxx index df0631b928d7..70a26cd3fe62 100644 --- a/sal/rtl/cipher.cxx +++ b/sal/rtl/cipher.cxx @@ -659,8 +659,8 @@ static rtlCipherError BF_init( key->m_P[i] ^= D; } - DL = 0; - DR = 0; + rtl_secureZeroMemory(&DL, sizeof(DL)); + rtl_secureZeroMemory(&DR, sizeof(DR)); for (i = 0; i < CIPHER_ROUNDS_BF + 2; i += 2) { @@ -808,7 +808,8 @@ static void BF_updateECB( RTL_CIPHER_HTONL64(DL, DR, pBuffer, nLength); } - DL = DR = 0; + rtl_secureZeroMemory(&DL, sizeof(DL)); + rtl_secureZeroMemory(&DR, sizeof(DR)); } static void BF_updateCBC( @@ -857,7 +858,8 @@ static void BF_updateCBC( RTL_CIPHER_HTONL64(DL, DR, pBuffer, nLength); } - DL = DR = 0; + rtl_secureZeroMemory(&DL, sizeof(DL)); + rtl_secureZeroMemory(&DR, sizeof(DR)); } static void BF_updateCFB( @@ -880,7 +882,8 @@ static void BF_updateCFB( BF_encode(&(ctx->m_key), &IVL, &IVR); RTL_CIPHER_HTONL64(IVL, IVR, iv, 8); - IVL = IVR = 0; + rtl_secureZeroMemory(&IVL, sizeof(IVL)); + rtl_secureZeroMemory(&IVR, sizeof(IVR)); } if (direction == rtl_Cipher_DirectionEncode) diff --git a/sal/rtl/digest.cxx b/sal/rtl/digest.cxx index 3bd2dfa214dd..706d1ffc5c67 100644 --- a/sal/rtl/digest.cxx +++ b/sal/rtl/digest.cxx @@ -283,7 +283,7 @@ static void updateMD2(DigestContextMD2 *ctx) } memcpy(sp1, state, 16 * sizeof(sal_uInt32)); - memset(state, 0, 48 * sizeof(sal_uInt32)); + rtl_secureZeroMemory(state, 48 * sizeof(sal_uInt32)); } static void endMD2(DigestContextMD2 *ctx) @@ -320,7 +320,7 @@ rtlDigestError SAL_CALL rtl_digest_MD2( if (result == rtl_Digest_E_None) result = rtl_digest_getMD2(&digest, pBuffer, nBufLen); - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -658,7 +658,7 @@ rtlDigestError SAL_CALL rtl_digest_MD5( if (result == rtl_Digest_E_None) result = rtl_digest_getMD5(&digest, pBuffer, nBufLen); - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -1101,7 +1101,7 @@ rtlDigestError SAL_CALL rtl_digest_SHA( if (result == rtl_Digest_E_None) result = rtl_digest_getSHA(&digest, pBuffer, nBufLen); - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -1261,7 +1261,7 @@ rtlDigestError SAL_CALL rtl_digest_SHA1( if (result == rtl_Digest_E_None) result = rtl_digest_getSHA1(&digest, pBuffer, nBufLen); - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -1476,7 +1476,7 @@ rtlDigestError SAL_CALL rtl_digest_HMAC_MD5( result = rtl_digest_getHMAC_MD5(&digest, pBuffer, nBufLen); } - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -1672,7 +1672,7 @@ rtlDigestError SAL_CALL rtl_digest_HMAC_SHA1( result = rtl_digest_getHMAC_SHA1(&digest, pBuffer, nBufLen); } - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return result; } @@ -1872,7 +1872,7 @@ rtlDigestError SAL_CALL rtl_digest_PBKDF2( rtl_secureZeroMemory(T, DIGEST_CBLOCK_PBKDF2); } - memset(&digest, 0, sizeof(digest)); + rtl_secureZeroMemory(&digest, sizeof(digest)); return rtl_Digest_E_None; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits