summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/cms/profile/output/PKCS7Output.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/common/src/com/netscape/cms/profile/output/PKCS7Output.java')
-rw-r--r--base/common/src/com/netscape/cms/profile/output/PKCS7Output.java158
1 files changed, 0 insertions, 158 deletions
diff --git a/base/common/src/com/netscape/cms/profile/output/PKCS7Output.java b/base/common/src/com/netscape/cms/profile/output/PKCS7Output.java
deleted file mode 100644
index c412eb2fd..000000000
--- a/base/common/src/com/netscape/cms/profile/output/PKCS7Output.java
+++ /dev/null
@@ -1,158 +0,0 @@
-// --- BEGIN COPYRIGHT BLOCK ---
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; version 2 of the License.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this program; if not, write to the Free Software Foundation, Inc.,
-// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-//
-// (C) 2007 Red Hat, Inc.
-// All rights reserved.
-// --- END COPYRIGHT BLOCK ---
-package com.netscape.cms.profile.output;
-
-import java.io.ByteArrayOutputStream;
-import java.security.cert.X509Certificate;
-import java.util.Locale;
-
-import netscape.security.pkcs.ContentInfo;
-import netscape.security.pkcs.PKCS7;
-import netscape.security.pkcs.SignerInfo;
-import netscape.security.x509.AlgorithmId;
-import netscape.security.x509.CertificateChain;
-import netscape.security.x509.X509CertImpl;
-
-import com.netscape.certsrv.apps.CMS;
-import com.netscape.certsrv.base.ICertPrettyPrint;
-import com.netscape.certsrv.base.IConfigStore;
-import com.netscape.certsrv.ca.ICertificateAuthority;
-import com.netscape.certsrv.profile.EProfileException;
-import com.netscape.certsrv.profile.IProfile;
-import com.netscape.certsrv.profile.IProfileContext;
-import com.netscape.certsrv.profile.IProfileOutput;
-import com.netscape.certsrv.property.Descriptor;
-import com.netscape.certsrv.property.IDescriptor;
-import com.netscape.certsrv.request.IRequest;
-import com.netscape.cms.profile.common.EnrollProfile;
-
-/**
- * This class implements the output plugin that outputs
- * PKCS7 for the issued certificate.
- *
- * @version $Revision$, $Date$
- */
-public class PKCS7Output extends EnrollOutput implements IProfileOutput {
-
- public static final String VAL_PRETTY_CERT = "pretty_cert";
- public static final String VAL_PKCS7 = "pkcs7";
-
- public PKCS7Output() {
- addValueName(VAL_PRETTY_CERT);
- addValueName(VAL_PKCS7);
- }
-
- /**
- * Initializes this default policy.
- */
- public void init(IProfile profile, IConfigStore config)
- throws EProfileException {
- super.init(profile, config);
- }
-
- /**
- * Retrieves the localizable name of this policy.
- */
- public String getName(Locale locale) {
- return CMS.getUserMessage(locale, "CMS_PROFILE_OUTPUT_CERT_NAME");
- }
-
- /**
- * Retrieves the localizable description of this policy.
- */
- public String getText(Locale locale) {
- return CMS.getUserMessage(locale, "CMS_PROFILE_OUTPUT_CERT_TEXT");
- }
-
- /**
- * Populates the request with this policy default.
- */
- public void populate(IProfileContext ctx, IRequest request)
- throws EProfileException {
- }
-
- /**
- * Retrieves the descriptor of the given value
- * parameter by name.
- */
- public IDescriptor getValueDescriptor(Locale locale, String name) {
- if (name.equals(VAL_PRETTY_CERT)) {
- return new Descriptor(IDescriptor.PRETTY_PRINT, null,
- null,
- CMS.getUserMessage(locale,
- "CMS_PROFILE_OUTPUT_CERT_PP"));
- } else if (name.equals(VAL_PKCS7)) {
- return new Descriptor(IDescriptor.PRETTY_PRINT, null,
- null,
- CMS.getUserMessage(locale,
- "CMS_PROFILE_OUTPUT_PKCS7_B64"));
- }
- return null;
- }
-
- public String getValue(String name, Locale locale, IRequest request)
- throws EProfileException {
- if (name.equals(VAL_PRETTY_CERT)) {
- X509CertImpl cert = request.getExtDataInCert(
- EnrollProfile.REQUEST_ISSUED_CERT);
- if (cert == null)
- return null;
- ICertPrettyPrint prettyCert = CMS.getCertPrettyPrint(cert);
-
- return prettyCert.toString(locale);
- } else if (name.equals(VAL_PKCS7)) {
-
- try {
- X509CertImpl cert = request.getExtDataInCert(
- EnrollProfile.REQUEST_ISSUED_CERT);
- if (cert == null)
- return null;
-
- ICertificateAuthority ca = (ICertificateAuthority)
- CMS.getSubsystem("ca");
- CertificateChain cachain = ca.getCACertChain();
- X509Certificate[] cacerts = cachain.getChain();
-
- X509CertImpl[] userChain = new X509CertImpl[cacerts.length + 1];
- int m = 1, n = 0;
-
- for (; n < cacerts.length; m++, n++) {
- userChain[m] = (X509CertImpl) cacerts[n];
- }
-
- userChain[0] = cert;
- PKCS7 p7 = new PKCS7(new AlgorithmId[0],
- new ContentInfo(new byte[0]),
- userChain,
- new SignerInfo[0]);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
-
- p7.encodeSignedData(bos);
- byte[] p7Bytes = bos.toByteArray();
- String p7Str = CMS.BtoA(p7Bytes);
-
- return p7Str;
- } catch (Exception e) {
- return "";
- }
- } else {
- return null;
- }
- }
-
-}