Author: tilman
Date: Mon Jan 27 09:45:15 2025
New Revision: 1923394

URL: http://svn.apache.org/viewvc?rev=1923394&view=rev
Log:
PDFBOX-5941: isSelfSigned() should not throw an exception

Modified:
    
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
    
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java

Modified: 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java?rev=1923394&r1=1923393&r2=1923394&view=diff
==============================================================================
--- 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
 (original)
+++ 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
 Mon Jan 27 09:45:15 2025
@@ -23,9 +23,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.net.URISyntaxException;
 import java.security.GeneralSecurityException;
-import java.security.InvalidKeyException;
 import java.security.PublicKey;
-import java.security.SignatureException;
 import java.security.cert.CertPathBuilder;
 import java.security.cert.CertPathBuilderException;
 import java.security.cert.CertStore;
@@ -263,10 +261,9 @@ public final class CertificateVerifier
     /**
      * Checks whether given X.509 certificate is self-signed.
      * @param cert The X.509 certificate to check.
-     * @return true if the certificate is self-signed, false if not.
-     * @throws java.security.GeneralSecurityException 
+     * @return true if the certificate is self-signed, false if error or not 
self-signed.
      */
-    public static boolean isSelfSigned(X509Certificate cert) throws 
GeneralSecurityException
+    public static boolean isSelfSigned(X509Certificate cert)
     {
         try
         {
@@ -275,7 +272,7 @@ public final class CertificateVerifier
             cert.verify(key, SecurityProvider.getProvider());
             return true;
         }
-        catch (SignatureException | InvalidKeyException | IOException ex)
+        catch (GeneralSecurityException | IllegalArgumentException | 
IOException ex)
         {
             // Invalid signature --> not self-signed
             LOG.debug("Couldn't get signature information - returning false", 
ex);

Modified: 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java?rev=1923394&r1=1923393&r2=1923394&view=diff
==============================================================================
--- 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
 (original)
+++ 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
 Mon Jan 27 09:45:15 2025
@@ -233,14 +233,7 @@ public class CertInformationCollector
             certInfo.crlUrl = 
CertInformationHelper.getCrlUrlFromExtensionValue(crlExtensionValue);
         }
 
-        try
-        {
-            certInfo.isSelfSigned = 
CertificateVerifier.isSelfSigned(certificate);
-        }
-        catch (GeneralSecurityException ex)
-        {
-            throw new CertificateProccessingException(ex);
-        }
+        certInfo.isSelfSigned = CertificateVerifier.isSelfSigned(certificate);
         if (maxDepth <= 0 || certInfo.isSelfSigned)
         {
             return;


Reply via email to