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>2013-11-05 11:10:15 -0500
committerEndi S. Dewata <edewata@redhat.com>2013-11-07 11:49:38 -0500
commit66eabd97adafa95f97215202a825d73f5fca7692 (patch)
treed5759739e4bd0042e0d02124ad351d8b3cfb0040 /base/server/cms/src/com/netscape/cms/servlet/csadmin/CertUtil.java
parent89eebe6729b8a7ed53441649d0baa98c98fdfa7f (diff)
downloadpki-66eabd97adafa95f97215202a825d73f5fca7692.tar.gz
pki-66eabd97adafa95f97215202a825d73f5fca7692.tar.xz
pki-66eabd97adafa95f97215202a825d73f5fca7692.zip
Fixed return code for user and group services.
The user and group services have been modified to return consistent HTTP return codes under various situations. The UGSubsystem has been modified to capture any LDAP exceptions and throw the proper PKIException subclass that represents the appropriate HTTP error code for the situation. Ticket #669, #749
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.java24
1 files changed, 11 insertions, 13 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 1936b2c5a..ede632ee5 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
@@ -29,7 +29,6 @@ import java.util.Set;
import javax.servlet.http.HttpServletResponse;
-import netscape.ldap.LDAPException;
import netscape.security.pkcs.PKCS10;
import netscape.security.x509.CertificateExtensions;
import netscape.security.x509.X500Name;
@@ -45,6 +44,7 @@ import org.mozilla.jss.crypto.PrivateKey;
import org.mozilla.jss.crypto.X509Certificate;
import com.netscape.certsrv.apps.CMS;
+import com.netscape.certsrv.base.ConflictingOperationException;
import com.netscape.certsrv.base.EBaseException;
import com.netscape.certsrv.base.IConfigStore;
import com.netscape.certsrv.base.MetaInfo;
@@ -281,7 +281,7 @@ public class CertUtil {
* If that entry does not exist, uses basic default
*
* 2. Gets default.params.signingAlg from profile.
- * If entry does not exist or equals "-", selects first algorithm in allowed algorithm list
+ * If entry does not exist or equals "-", selects first algorithm in allowed algorithm list
* that matches CA signing key type
* Otherwise returns entry if it matches signing CA key type.
*
@@ -584,27 +584,25 @@ public class CertUtil {
user.setUserType("agentType");
user.setState("1");
user.setPhone("");
- certs[0] = cert;
- user.setX509Certificates(certs);
system.addUser(user);
CMS.debug("CertUtil addUserCertificate: successfully add the user");
- } catch (LDAPException e) {
+
+ } catch (ConflictingOperationException e) {
CMS.debug("CertUtil addUserCertificate" + e.toString());
- if (e.getLDAPResultCode() != LDAPException.ENTRY_ALREADY_EXISTS) {
- try {
- user = system.getUser(id);
- user.setX509Certificates(certs);
- } catch (Exception ee) {
- CMS.debug("CertUtil addUserCertificate: successfully find the user");
- }
- }
+ // ignore
+
} catch (Exception e) {
CMS.debug("CertUtil addUserCertificate addUser " + e.toString());
}
try {
+ user = system.getUser(id);
+ certs[0] = cert;
+ user.setX509Certificates(certs);
+
system.addUserCert(user);
CMS.debug("CertUtil addUserCertificate: successfully add the user certificate");
+
} catch (Exception e) {
CMS.debug("CertUtil addUserCertificate exception=" + e.toString());
}