diff options
author | Dominik Stadler <centic@apache.org> | 2023-10-27 10:08:04 +0000 |
---|---|---|
committer | Dominik Stadler <centic@apache.org> | 2023-10-27 10:08:04 +0000 |
commit | 56eb1ccff6f271b63a2d91ff406e7d45ecb6c512 (patch) | |
tree | 2d8420a4561cd2ca4924cfbaecb8aab807a9c5ca | |
parent | 5cc8b9958cbe1d1ca0fc378eb10e3123ed71e4ad (diff) | |
download | poi-56eb1ccff6f271b63a2d91ff406e7d45ecb6c512.tar.gz poi-56eb1ccff6f271b63a2d91ff406e7d45ecb6c512.zip |
Bug 66425: Avoid exceptions found via poi-fuzz
Fix one expected exception-text which is different
on newer Java versions
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=63143
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1913384 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java | 1 | ||||
-rw-r--r-- | poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestPPTXMLDump.java | 3 | ||||
-rw-r--r-- | poi/src/main/java/org/apache/poi/poifs/crypt/agile/AgileEncryptionHeader.java | 6 | ||||
-rw-r--r-- | test-data/slideshow/clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt | bin | 0 -> 19235 bytes | |||
-rw-r--r-- | test-data/spreadsheet/stress.xls | bin | 99840 -> 59904 bytes |
5 files changed, 8 insertions, 2 deletions
diff --git a/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java b/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java index 8b8845186d..be18652602 100644 --- a/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java +++ b/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java @@ -69,6 +69,7 @@ public abstract class BaseTestPPTIterating { EXCLUDED.put("clusterfuzz-testcase-minimized-POIHSLFFuzzer-5231088823566336.ppt", FileNotFoundException.class); EXCLUDED.put("clusterfuzz-testcase-minimized-POIFuzzer-6411649193738240.ppt", FileNotFoundException.class); EXCLUDED.put("clusterfuzz-testcase-minimized-POIHSLFFuzzer-4838893004128256.ppt", FileNotFoundException.class); + EXCLUDED.put("clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt", FileNotFoundException.class); } public static Stream<Arguments> files() { diff --git a/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestPPTXMLDump.java b/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestPPTXMLDump.java index d2dd0b34b9..ca4d09be24 100644 --- a/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestPPTXMLDump.java +++ b/poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestPPTXMLDump.java @@ -68,7 +68,8 @@ public class TestPPTXMLDump extends BaseTestPPTIterating { pFile.getName().equals("clusterfuzz-testcase-minimized-POIFuzzer-5681320547975168.ppt") || pFile.getName().equals("clusterfuzz-testcase-minimized-POIHSLFFuzzer-5231088823566336.ppt") || pFile.getName().equals("clusterfuzz-testcase-minimized-POIFuzzer-6411649193738240.ppt") || - pFile.getName().equals("clusterfuzz-testcase-minimized-POIHSLFFuzzer-4838893004128256.ppt")) { + pFile.getName().equals("clusterfuzz-testcase-minimized-POIHSLFFuzzer-4838893004128256.ppt") || + pFile.getName().equals("clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt")) { throw new FileNotFoundException(); } } diff --git a/poi/src/main/java/org/apache/poi/poifs/crypt/agile/AgileEncryptionHeader.java b/poi/src/main/java/org/apache/poi/poifs/crypt/agile/AgileEncryptionHeader.java index fc2828ed0d..5540ba66cb 100644 --- a/poi/src/main/java/org/apache/poi/poifs/crypt/agile/AgileEncryptionHeader.java +++ b/poi/src/main/java/org/apache/poi/poifs/crypt/agile/AgileEncryptionHeader.java @@ -69,7 +69,11 @@ public class AgileEncryptionHeader extends EncryptionHeader { throw new EncryptedDocumentException("Unsupported chaining mode - "+ keyData.getCipherChaining()); } - int hashSize = keyData.getHashSize(); + Integer hashSizeObj = keyData.getHashSize(); + if (hashSizeObj == null) { + throw new EncryptedDocumentException("Invalid hash size: " + hashSizeObj); + } + int hashSize = hashSizeObj; HashAlgorithm ha = keyData.getHashAlgorithm(); setHashAlgorithm(ha); diff --git a/test-data/slideshow/clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt b/test-data/slideshow/clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt Binary files differnew file mode 100644 index 0000000000..bc3e4ae3b9 --- /dev/null +++ b/test-data/slideshow/clusterfuzz-testcase-minimized-POIHSLFFuzzer-4624961081573376.ppt diff --git a/test-data/spreadsheet/stress.xls b/test-data/spreadsheet/stress.xls Binary files differindex 203dae720a..7c42429886 100644 --- a/test-data/spreadsheet/stress.xls +++ b/test-data/spreadsheet/stress.xls |