summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorMichael Stahl <michael.stahl@allotropia.de>2024-02-01 11:20:18 +0100
committerAndras Timar <andras.timar@collabora.com>2024-02-07 22:57:27 +0100
commit4beb8f34b18d80a2f4b42ebed9ed08b4eaf11403 (patch)
treec0f5c7d4f67222b05a88ff76286f0ceb48ffe043 /oox
parenta77fa2be1e0d8c22198a3a45153bb25ecf3135dd (diff)
check that rtl_random_getBytes() was successful
... everywhere it is used to generate material for encryption. Change-Id: Id3390376bb2f3a5fa1bbfd735850fce886ef7db2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162873 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> (cherry picked from commit b85c2459ced6a41915dbaf567613fb5e244a0ada) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162890 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'oox')
-rw-r--r--oox/source/crypto/Standard2007Engine.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/oox/source/crypto/Standard2007Engine.cxx b/oox/source/crypto/Standard2007Engine.cxx
index b588fc5c8fd0..9fe18ad17e0c 100644
--- a/oox/source/crypto/Standard2007Engine.cxx
+++ b/oox/source/crypto/Standard2007Engine.cxx
@@ -28,7 +28,10 @@ namespace
void lclRandomGenerateValues(sal_uInt8* aArray, sal_uInt32 aSize)
{
rtlRandomPool aRandomPool = rtl_random_createPool();
- rtl_random_getBytes(aRandomPool, aArray, aSize);
+ if (rtl_random_getBytes(aRandomPool, aArray, aSize) != rtl_Random_E_None)
+ {
+ throw css::uno::RuntimeException("rtl_random_getBytes failed");
+ }
rtl_random_destroyPool(aRandomPool);
}