Commit Graph

7 Commits

Author SHA1 Message Date
Dominik Stadler 56f58e2529
Apache POI: Improve coverage counting and add a few more expected exceptions (#11418)
As a general solution for handling excluding classes from JaCoCo
coverage counting was not merged (See #10860#issuecomment-1870891873 ),
this PR tries to implement a different approach which separates the
class-files into two jar-files and this way at least allows to exclude
code of third-party libraries when reporting coverage of fuzzing.

Also add two expected exceptions and adjust one limit to match the
amount of memory which oss-fuzz uses here.
2023-12-29 12:34:38 +00:00
Dominik Stadler 09c7692d24
apache-poi: Allow missing fonts (#11107)
After removing some other "roadblocks" by providing some additional
.so-files, fuzzing now hits some code which is missing installed fonts.

Apache POI already provides a system property to handle this gracefully
where possible.

So let's add this property.

We can also remove one leftover exception handling which should not
appear now.
2023-10-12 13:23:20 +01:00
Dominik Stadler 3e38f99461
Apache POI: install libraries for awt and adjust xmx (#11006)
These changes add some additional .so files to the container so that
loading some classes from java.awt works.

See #10933 and #7380 for related discussions.

Also decrease "Xmx" as it seems we get native OOM in Jazzer-runs
otherwise.
2023-09-24 21:20:43 +01:00
Dominik Stadler 7eb85fa53b
Apache POI: Add seed corpus, remove logging, add HSMF (#10797)
Now that fuzzing and introspector is working again, we can improve the
fuzzing itself by adding seed corpus archives for all the fuzzers.

Also let's reduce output during fuzzing and add/adjust fuzzers some
more.
2023-08-05 16:40:19 +01:00
Dominik Stadler 10bb0f6200
Adjust project apache poi (#10769)
This PR applies a few changes to the project apache-poi to improve the
setup and make build-logs a bit easier to analyze:

* One more expected exception that showed up locally
* Instruct fuzzer to only look at coverage of classes of the project
itself
* Reduce log-spam by disabling progress-output from downloading
dependencies
* Adjust mainClass in pom.xml, although this likely has no impact

This also adds myself to CCS (both @apache.org and @gmx.at addresses to
allow linking to Github account and access to bug-reports), I am Apache
POI committer and PMC chair and would like to be informed about new
findings.

Please let me know if adding myself is ok this way or if it needs some
other process/steps.
2023-08-01 23:18:03 +01:00
Dominik Stadler 24328c88fd
Fix apache poi (#10749)
The initial fuzzing of Apache POI seems to be broken (or did not work at
all until now).

This PR adds the necessary versions of JDK 8 and 11 for building Apache
POI.

They also adjust the fuzz-target slightly to not quickly fail during
fuzzing due to another type of
"expected" exception.

Also the checkout can be done shallow to reduce the amount of downloaded
data.

This hopefully closes
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=56337&can=1&q=poi
(and maybe
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54562&can=1&q=poi
as well)
2023-07-28 16:24:14 +01:00
aschaich e84606ad1a
[apache-poi] Initial Integration (#9250) 2022-12-21 12:06:48 -05:00