summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/ca/src/org/dogtagpki/server/ca/rest/CertRequestService.java3
-rw-r--r--base/server/cms/src/com/netscape/cms/servlet/cert/RenewalProcessor.java13
2 files changed, 12 insertions, 4 deletions
diff --git a/base/ca/src/org/dogtagpki/server/ca/rest/CertRequestService.java b/base/ca/src/org/dogtagpki/server/ca/rest/CertRequestService.java
index 74f7b52f6..969cfd1a6 100644
--- a/base/ca/src/org/dogtagpki/server/ca/rest/CertRequestService.java
+++ b/base/ca/src/org/dogtagpki/server/ca/rest/CertRequestService.java
@@ -144,6 +144,9 @@ public class CertRequestService extends PKIService implements CertRequestResourc
throw new BadRequestException(e.toString());
} catch (EBaseException e) {
throw new PKIException(e.toString());
+ } catch (Exception e) {
+ CMS.debug(e);
+ throw new PKIException(e.toString());
}
// this will return an error code of 200, instead of 201
diff --git a/base/server/cms/src/com/netscape/cms/servlet/cert/RenewalProcessor.java b/base/server/cms/src/com/netscape/cms/servlet/cert/RenewalProcessor.java
index a13a305b8..7daad6c96 100644
--- a/base/server/cms/src/com/netscape/cms/servlet/cert/RenewalProcessor.java
+++ b/base/server/cms/src/com/netscape/cms/servlet/cert/RenewalProcessor.java
@@ -29,6 +29,8 @@ import javax.servlet.http.HttpServletRequest;
import netscape.security.x509.BasicConstraintsExtension;
import netscape.security.x509.X509CertImpl;
+import org.apache.commons.lang.StringUtils;
+
import com.netscape.certsrv.apps.CMS;
import com.netscape.certsrv.authentication.IAuthToken;
import com.netscape.certsrv.base.BadRequestDataException;
@@ -107,25 +109,28 @@ public class RenewalProcessor extends CertProcessor {
String serial = data.getSerialNum();
BigInteger certSerial = null;
- if (serial != null) {
+ if (StringUtils.isNotEmpty(serial)) {
// if serial number is sent with request, then the authentication
// method is not ssl client auth. In this case, an alternative
// authentication method is used (default: ldap based)
// usr_origreq evaluator should be used to authorize ownership
// of the cert
- CMS.debug("RenewalSubmitter: renewal: found serial_num");
+ CMS.debug("RenewalSubmitter: renewal: serial number: " + serial);
certSerial = new BigInteger(serial);
+
} else {
// ssl client auth is to be used
// this is not authentication. Just use the cert to search
// for orig request and find the right profile
CMS.debug("RenewalSubmitter: renewal: serial_num not found, must do ssl client auth");
certSerial = getSerialNumberFromCert(request);
+
if (certSerial == null) {
- CMS.debug(CMS.getUserMessage(locale, "CMS_INTERNAL_ERROR"));
- throw new EBaseException(CMS.getUserMessage(locale, "CMS_INTERNAL_ERROR"));
+ CMS.debug(CMS.getUserMessage(locale, "CMS_GW_MISSING_CERTS_RENEW_FROM_AUTHMGR"));
+ throw new EBaseException(CMS.getUserMessage(locale, "CMS_GW_MISSING_CERTS_RENEW_FROM_AUTHMGR"));
}
}
+
CMS.debug("processRenewal: serial number of cert to renew:" + certSerial.toString());
ICertRecord rec = certdb.readCertificateRecord(certSerial);
if (rec == null) {