summaryrefslogtreecommitdiffstats
path: root/base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2016-04-11 18:18:52 +0200
committerEndi S. Dewata <edewata@redhat.com>2016-04-12 16:27:20 +0200
commit8e291fba835f6640a262e01333aa58cf9bd5220f (patch)
tree86ce2d93290760c078fcf34f7d8d5cd9db0f2246 /base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
parent5847a485a16471f6c3a2a7552b719df3aec909df (diff)
downloadpki-8e291fba835f6640a262e01333aa58cf9bd5220f.tar.gz
pki-8e291fba835f6640a262e01333aa58cf9bd5220f.tar.xz
pki-8e291fba835f6640a262e01333aa58cf9bd5220f.zip
Fixed exception handling in CertUtil.
The CertUtil.createLocalCert() has been modified to re-throw the exception instead of ignoring it. https://fedorahosted.org/pki/ticket/1654
Diffstat (limited to 'base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java')
-rw-r--r--base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java25
1 files changed, 16 insertions, 9 deletions
diff --git a/base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java b/base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
index f4cd82fcc..774ff94e3 100644
--- a/base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
+++ b/base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
@@ -453,10 +453,20 @@ public class CertUtil {
} else {
keyAlgorithm = config.getString(prefix + certTag + ".keyalgorithm");
}
+
if (!caProvided)
ca = (ICertificateAuthority) CMS.getSubsystem(
ICertificateAuthority.ID);
+
cr = ca.getCertificateRepository();
+
+ if (cr == null) {
+ if (context != null) {
+ context.put("errorString", "Ceritifcate Authority is not ready to serve.");
+ }
+ throw new IOException("Ceritifcate Authority is not ready to serve.");
+ }
+
BigInteger serialNo = cr.getNextSerialNumber();
if (type.equals("selfsign")) {
CMS.debug("Creating local certificate... selfsign cert");
@@ -575,16 +585,13 @@ public class CertUtil {
if (cert != null) {
CMS.debug("CertUtil createSelfSignedCert: got cert signed");
}
- } catch (Exception e) {
- CMS.debug(e);
- CMS.debug("CertUtil createLocalCert() exception caught:" + e.toString());
- }
- if (cr == null) {
- if (context != null) {
- context.put("errorString", "Ceritifcate Authority is not ready to serve.");
- }
- throw new IOException("Ceritifcate Authority is not ready to serve.");
+ } catch (IOException e) {
+ throw e;
+
+ } catch (Exception e) {
+ CMS.debug("Unable to create local certificate: " + e);
+ throw new IOException("Unable to create local certificate: " + e, e);
}
ICertRecord record = null;