This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/main by this push:
new 97274fd allow setting config, and remove security before transforming
97274fd is described below
commit 97274fd96b78e0b8aba6497c7498f4f1c9ee459b
Author: tballison <[email protected]>
AuthorDate: Wed Nov 24 12:43:18 2021 -0500
allow setting config, and remove security before transforming
---
.../main/java/org/apache/tika/fuzzing/pdf/PDFTransformer.java | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git
a/tika-fuzzing/src/main/java/org/apache/tika/fuzzing/pdf/PDFTransformer.java
b/tika-fuzzing/src/main/java/org/apache/tika/fuzzing/pdf/PDFTransformer.java
index 4e10cd9..fffdcd2 100644
--- a/tika-fuzzing/src/main/java/org/apache/tika/fuzzing/pdf/PDFTransformer.java
+++ b/tika-fuzzing/src/main/java/org/apache/tika/fuzzing/pdf/PDFTransformer.java
@@ -33,7 +33,7 @@ import org.apache.tika.mime.MediaType;
public class PDFTransformer implements Transformer {
private static final Set<MediaType> SUPPORTED_TYPES =
Collections.singleton(MediaType.application("pdf"));
- private final PDFTransformerConfig config = new PDFTransformerConfig();
+ private PDFTransformerConfig config = new PDFTransformerConfig();
@Override
public Set<MediaType> getSupportedTypes() {
@@ -43,6 +43,9 @@ public class PDFTransformer implements Transformer {
@Override
public void transform(InputStream is, OutputStream os) throws IOException,
TikaException {
try (PDDocument pdDocument = PDDocument.load(is)) {
+ //some docs have security which prevents mods and writing
+ //given our purposes here, we should remove security
+ pdDocument.setAllSecurityToBeRemoved(true);
try (EvilCOSWriter cosWriter = new EvilCOSWriter(os, config)) {
cosWriter.write(pdDocument);
}
@@ -50,4 +53,8 @@ public class PDFTransformer implements Transformer {
throw new CantFuzzException("encrypted doc");
}
}
+
+ public void setConfig(PDFTransformerConfig pdfTransformerConfig) {
+ this.config = pdfTransformerConfig;
+ }
}