You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2023/05/25 07:14:33 UTC

svn commit: r1910040 - /pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java

Author: tilman
Date: Thu May 25 07:14:33 2023
New Revision: 1910040

URL: http://svn.apache.org/viewvc?rev=1910040&view=rev
Log:
PDFBOX-5609: all values in the signature dictionary shall be direct objects

Modified:
    pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java

Modified: pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java?rev=1910040&r1=1910039&r2=1910040&view=diff
==============================================================================
--- pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java (original)
+++ pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/SigUtils.java Thu May 25 07:14:33 2023
@@ -158,11 +158,13 @@ public class SigUtils
         COSDictionary sigDict = signature.getCOSObject();
 
         // DocMDP specific stuff
+        // all values in the signature dictionary shall be direct objects
         COSDictionary transformParameters = new COSDictionary();
         transformParameters.setItem(COSName.TYPE, COSName.TRANSFORM_PARAMS);
         transformParameters.setInt(COSName.P, accessPermissions);
         transformParameters.setName(COSName.V, "1.2");
         transformParameters.setNeedToBeUpdated(true);
+        transformParameters.setDirect(true);
 
         COSDictionary referenceDict = new COSDictionary();
         referenceDict.setItem(COSName.TYPE, COSName.SIG_REF);
@@ -170,11 +172,13 @@ public class SigUtils
         referenceDict.setItem(COSName.DIGEST_METHOD, COSName.getPDFName("SHA1"));
         referenceDict.setItem(COSName.TRANSFORM_PARAMS, transformParameters);
         referenceDict.setNeedToBeUpdated(true);
+        referenceDict.setDirect(true);
 
         COSArray referenceArray = new COSArray();
         referenceArray.add(referenceDict);
         sigDict.setItem(COSName.REFERENCE, referenceArray);
         referenceArray.setNeedToBeUpdated(true);
+        referenceArray.setDirect(true);
 
         // Catalog
         COSDictionary catalogDict = doc.getDocumentCatalog().getCOSObject();