summaryrefslogtreecommitdiffstats
path: root/base/server/cms/src/com/netscape/cms/selftests/ca
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2015-06-23 12:23:15 -0400
committerEndi S. Dewata <edewata@redhat.com>2015-06-23 17:30:18 -0400
commitcc97f8628b23f8ea75308bb97a31307cb4f162b9 (patch)
tree0e8eb0d56294eb7beedf0041f4ba6f8d9f0cf3fd /base/server/cms/src/com/netscape/cms/selftests/ca
parente1e1e1867c3665def4738530d5c36a1f9801fdb9 (diff)
downloadpki-cc97f8628b23f8ea75308bb97a31307cb4f162b9.tar.gz
pki-cc97f8628b23f8ea75308bb97a31307cb4f162b9.tar.xz
pki-cc97f8628b23f8ea75308bb97a31307cb4f162b9.zip
Fixed selftests log message.
The SelfTestSubsystem has been modified to display a 'successful' message only if all tests have passed. If a test fails, it will log a failure, subsequent tests will not be executed, and the subsystem will shutdown immediately. The runSelfTest() in various tests have been cleaned up to throw the original exception to help troubleshooting. The unused RAPresence test has been removed. https://fedorahosted.org/pki/ticket/1249
Diffstat (limited to 'base/server/cms/src/com/netscape/cms/selftests/ca')
-rw-r--r--base/server/cms/src/com/netscape/cms/selftests/ca/CAPresence.java97
-rw-r--r--base/server/cms/src/com/netscape/cms/selftests/ca/CAValidity.java102
2 files changed, 83 insertions, 116 deletions
diff --git a/base/server/cms/src/com/netscape/cms/selftests/ca/CAPresence.java b/base/server/cms/src/com/netscape/cms/selftests/ca/CAPresence.java
index 83caa0099..ab491c7e7 100644
--- a/base/server/cms/src/com/netscape/cms/selftests/ca/CAPresence.java
+++ b/base/server/cms/src/com/netscape/cms/selftests/ca/CAPresence.java
@@ -191,72 +191,55 @@ public class CAPresence
* <P>
*
* @param logger specifies logging subsystem
- * @exception ESelfTestException self test exception
+ * @exception Exception self test exception
*/
- public void runSelfTest(ILogEventListener logger)
- throws ESelfTestException {
- String logMessage = null;
- ICertificateAuthority ca = null;
- X509CertImpl caCert = null;
- X509Key caPubKey = null;
-
- ca = (ICertificateAuthority) CMS.getSubsystem(mCaSubId);
+ public void runSelfTest(ILogEventListener logger) throws Exception {
+ ICertificateAuthority ca = (ICertificateAuthority) CMS.getSubsystem(mCaSubId);
if (ca == null) {
// log that the CA is not installed
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_NOT_PRESENT",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- } else {
- // Retrieve the CA certificate
- caCert = ca.getCACert();
-
- if (caCert == null) {
- // log that the CA is not yet initialized
- logMessage = CMS.getLogMessage(
- "SELFTESTS_CA_IS_NOT_INITIALIZED",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- }
-
- // Retrieve the CA certificate public key
- try {
- caPubKey = (X509Key) caCert.get(X509CertImpl.PUBLIC_KEY);
-
- if (caPubKey == null) {
- // log that something is seriously wrong with the CA
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_CORRUPT",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_NOT_PRESENT",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw new Exception(logMessage);
+ }
- throw new ESelfTestException(logMessage);
- }
- } catch (CertificateParsingException e) {
- // log that something is seriously wrong with the CA
- mSelfTestSubsystem.log(logger,
- e.toString());
+ // Retrieve the CA certificate
+ X509CertImpl caCert = ca.getCACert();
+ if (caCert == null) {
+ // log that the CA is not yet initialized
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_NOT_INITIALIZED",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw new Exception(logMessage);
+ }
- throw new ESelfTestException(e.toString());
- }
+ // Retrieve the CA certificate public key
+ X509Key caPubKey;
+ try {
+ caPubKey = (X509Key) caCert.get(X509CertImpl.PUBLIC_KEY);
- // log that the CA is present
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_PRESENT",
- getSelfTestName());
+ } catch (CertificateParsingException e) {
+ // log that something is seriously wrong with the CA
+ mSelfTestSubsystem.log(logger, e.toString());
+ throw e;
+ }
- mSelfTestSubsystem.log(logger,
- logMessage);
+ if (caPubKey == null) {
+ // log that something is seriously wrong with the CA
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_CORRUPT",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw new Exception(logMessage);
}
- return;
+ // log that the CA is present
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_PRESENT",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
}
}
diff --git a/base/server/cms/src/com/netscape/cms/selftests/ca/CAValidity.java b/base/server/cms/src/com/netscape/cms/selftests/ca/CAValidity.java
index b1751ecb4..4d90be199 100644
--- a/base/server/cms/src/com/netscape/cms/selftests/ca/CAValidity.java
+++ b/base/server/cms/src/com/netscape/cms/selftests/ca/CAValidity.java
@@ -191,72 +191,56 @@ public class CAValidity
* <P>
*
* @param logger specifies logging subsystem
- * @exception ESelfTestException self test exception
+ * @exception Exception self test exception
*/
- public void runSelfTest(ILogEventListener logger)
- throws ESelfTestException {
- String logMessage = null;
- ICertificateAuthority ca = null;
- X509CertImpl caCert = null;
-
- ca = (ICertificateAuthority) CMS.getSubsystem(mCaSubId);
+ public void runSelfTest(ILogEventListener logger) throws Exception {
+ ICertificateAuthority ca = (ICertificateAuthority) CMS.getSubsystem(mCaSubId);
if (ca == null) {
// log that the CA is not installed
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_NOT_PRESENT",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- } else {
- // Retrieve the CA certificate
- caCert = ca.getCACert();
-
- if (caCert == null) {
- // log that the CA is not yet initialized
- logMessage = CMS.getLogMessage(
- "SELFTESTS_CA_IS_NOT_INITIALIZED",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- }
-
- // Retrieve the CA validity period
- try {
- caCert.checkValidity();
- } catch (CertificateNotYetValidException e) {
- // log that the CA is not yet valid
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_NOT_YET_VALID",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- } catch (CertificateExpiredException e) {
- // log that the CA is expired
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_EXPIRED",
- getSelfTestName());
-
- mSelfTestSubsystem.log(logger,
- logMessage);
-
- throw new ESelfTestException(logMessage);
- }
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_NOT_PRESENT",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw new Exception(logMessage);
+ }
- // log that the CA is valid
- logMessage = CMS.getLogMessage("SELFTESTS_CA_IS_VALID",
- getSelfTestName());
+ // Retrieve the CA certificate
+ X509CertImpl caCert = ca.getCACert();
+ if (caCert == null) {
+ // log that the CA is not yet initialized
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_NOT_INITIALIZED",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw new Exception(logMessage);
+ }
- mSelfTestSubsystem.log(logger,
- logMessage);
+ // Retrieve the CA validity period
+ try {
+ caCert.checkValidity();
+
+ } catch (CertificateNotYetValidException e) {
+ // log that the CA is not yet valid
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_NOT_YET_VALID",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw e;
+
+ } catch (CertificateExpiredException e) {
+ // log that the CA is expired
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_EXPIRED",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
+ throw e;
}
- return;
+ // log that the CA is valid
+ String logMessage = CMS.getLogMessage(
+ "SELFTESTS_CA_IS_VALID",
+ getSelfTestName());
+ mSelfTestSubsystem.log(logger, logMessage);
}
}