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 2019/11/13 20:37:07 UTC
svn commit: r1869769 -
/pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java
Author: tilman
Date: Wed Nov 13 20:37:07 2019
New Revision: 1869769
URL: http://svn.apache.org/viewvc?rev=1869769&view=rev
Log:
PDFBOX-3017: support multiple CRL URLs
Modified:
pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java
Modified: pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java?rev=1869769&r1=1869768&r2=1869769&view=diff
==============================================================================
--- pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java (original)
+++ pdfbox/branches/issue45/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationHelper.java Wed Nov 13 20:37:07 2019
@@ -116,7 +116,20 @@ public class CertInformationHelper
ASN1TaggedObject taggedObject = (ASN1TaggedObject) obj.getObjectAt(0);
taggedObject = (ASN1TaggedObject) taggedObject.getObject();
- taggedObject = (ASN1TaggedObject) taggedObject.getObject(); // yes stmt is twice
+ if (taggedObject.getObject() instanceof ASN1TaggedObject)
+ {
+ taggedObject = (ASN1TaggedObject) taggedObject.getObject();
+ }
+ else if (taggedObject.getObject() instanceof ASN1Sequence)
+ {
+ // multiple URLs (we take the first)
+ ASN1Sequence seq = (ASN1Sequence) taggedObject.getObject();
+ taggedObject = (ASN1TaggedObject) seq.getObjectAt(0);
+ }
+ else
+ {
+ continue;
+ }
if (!(taggedObject.getObject() instanceof ASN1OctetString))
{
// happens with http://blogs.adobe.com/security/SampleSignedPDFDocument.pdf
@@ -124,7 +137,6 @@ public class CertInformationHelper
}
ASN1OctetString uri = (ASN1OctetString) taggedObject.getObject();
String url = new String(uri.getOctets());
- // TODO Check for: DistributionPoint ::= SEQUENCE (see RFC 2459), multiples can be possible.
// return first http(s)-Url for crl
if (url.startsWith("http"))