summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNiranjan Mallapadi <mrniranjan@redhat.com>2015-03-12 17:35:40 +0530
committerNiranjan Mallapadi <mrniranjan@redhat.com>2015-03-12 17:36:42 +0530
commita54e29d5be1b38158cc44a8bdeda5dcb96fd4096 (patch)
tree129d00984b4a46645f0cf233a9078a410314a95e /tests
parenta1b68d34a82d0a27e2c5eccdcb8d4e866ddfd602 (diff)
downloadpki-a54e29d5be1b38158cc44a8bdeda5dcb96fd4096.tar.gz
pki-a54e29d5be1b38158cc44a8bdeda5dcb96fd4096.tar.xz
pki-a54e29d5be1b38158cc44a8bdeda5dcb96fd4096.zip
Update pki-qe-tools.jar file
Add generateDualCRMFRequest.java and Certificate_Record.java
Diffstat (limited to 'tests')
-rw-r--r--tests/dogtag/shared/jars/pki-qe-tools.jarbin69006 -> 73671 bytes
-rw-r--r--tests/dogtag/shared/java/ca/generateDualCRMFRequest.java158
-rw-r--r--tests/dogtag/shared/java/common/Certificate_Record.java34
3 files changed, 192 insertions, 0 deletions
diff --git a/tests/dogtag/shared/jars/pki-qe-tools.jar b/tests/dogtag/shared/jars/pki-qe-tools.jar
index d7e7513a4..5f2dd2572 100644
--- a/tests/dogtag/shared/jars/pki-qe-tools.jar
+++ b/tests/dogtag/shared/jars/pki-qe-tools.jar
Binary files differ
diff --git a/tests/dogtag/shared/java/ca/generateDualCRMFRequest.java b/tests/dogtag/shared/java/ca/generateDualCRMFRequest.java
new file mode 100644
index 000000000..5696ecd51
--- /dev/null
+++ b/tests/dogtag/shared/java/ca/generateDualCRMFRequest.java
@@ -0,0 +1,158 @@
+import java.util.*;
+import java.net.*;
+import java.io.*;
+import org.mozilla.jss.ssl.*;
+
+public class generateDualCRMFRequest
+{
+
+ private static String request_type = null;
+ private static String request_subject = null;
+ private static String request_keysize = null;
+ private static String request_keytype = null;
+ private static String client_certdb_dir = null;
+ private static String client_certdb_pwd = null;
+ private static String output_file = null;
+ public static String transport_cert_file=null;
+ private static String transport_cert=null;
+
+ private static String debug = null;
+
+ private String cert_request = null;
+ private String crmf_request = null;
+
+ public generateDualCRMFRequest()
+ {
+ // Do nothing
+ }
+
+ public boolean Generate_CRMF()
+ {
+ System.out.println("Generating Cert Request with KeySize: " + request_keysize);
+ System.out.println("Generating Cert Request with KeyType: " + request_keytype);
+
+ if(transport_cert_file != null && !transport_cert_file.equalsIgnoreCase("null"))
+ {
+ Utilities ut = new Utilities();
+ transport_cert = ut.getcertfromfile(transport_cert_file);
+ }
+ ComCrypto cCrypt = new ComCrypto(client_certdb_dir,client_certdb_pwd,request_subject,request_keysize,request_keytype);
+ cCrypt.setDebug(true);
+ cCrypt.setGenerateRequest(true);
+ cCrypt.loginDB();
+ if(transport_cert != null)
+ {
+ cCrypt.setDualKey(true);
+ System.out.println("Generating Dual crmf requests");
+ cCrypt.setTransportCert(transport_cert);
+ crmf_request = cCrypt.generateCRMFrequest();
+ }
+ else
+ {
+ cCrypt.setDualKey(false);
+ System.out.println("Generating Single crmf requess");
+ cCrypt.setTransportCert(null);
+ crmf_request = cCrypt.generateCRMFrequest();
+ }
+ if(crmf_request == null)
+ {
+ System.out.println("Request could not be generated ");
+ return false;
+ }
+
+ cert_request = crmf_request;
+ return true;
+
+ }
+
+ public boolean generate()
+ {
+
+ // 1. Check Request Type and Generate Request
+
+ System.out.println("Generating CRMF Request.");
+ Generate_CRMF();
+
+
+ // 2. Submit it
+
+ if(cert_request == null)
+ {
+ System.out.println("ERROR: failed to generate request");
+ return false;
+ }
+ PrintStream ps = null;
+ try {
+ ps = new PrintStream(new FileOutputStream(output_file));
+ ps.println(cert_request);
+ ps.flush();
+ ps.close();
+ } catch (Exception E){
+ System.err.println ("Error in writing to file");
+ }
+ System.out.println("CRMF Request=" + cert_request);
+
+ return true;
+
+ }
+
+
+
+ public static void main(String args[])
+ {
+ generateDualCRMFRequest prof = new generateDualCRMFRequest();
+ // parse args
+ StringHolder x_request_keysize = new StringHolder();
+ StringHolder x_request_keytype = new StringHolder();
+ StringHolder x_request_subject = new StringHolder();
+ StringHolder x_client_certdb_dir = new StringHolder();
+ StringHolder x_client_certdb_pwd = new StringHolder();
+ StringHolder x_req_out_file = new StringHolder();
+ StringHolder x_debug = new StringHolder();
+ StringHolder x_transport_cert_file = new StringHolder();
+
+ // parse the args
+ ArgParser parser = new ArgParser("generateDualCRMFRequest");
+
+ parser.addOption ("-client_certdb_dir %s #CertDB dir", x_client_certdb_dir);
+ parser.addOption ("-client_certdb_pwd %s #CertDB password", x_client_certdb_pwd);
+ parser.addOption ("-debug %s #enables display of debugging info", x_debug);
+ parser.addOption ("-request_subject %s #Request Subject", x_request_subject);
+ parser.addOption ("-request_keysize %s #Key size for the cert req", x_request_keysize);
+ parser.addOption ("-request_keytype %s #Key Type for the cert req", x_request_keytype);
+ parser.addOption ("-output_file %s #Ouput file for cert req", x_req_out_file);
+ parser.addOption ("-transport_cert_file %s #file containing base64 transport cert", x_transport_cert_file);
+
+ // and then match the arguments
+ String [] unmatched = null;
+ unmatched = parser.matchAllArgs (args,0,parser.EXIT_ON_UNMATCHED);
+
+ if(unmatched!=null)
+ {
+ System.out.println("ERROR: Argument Mismatch");
+ System.exit(-1);
+ }
+
+ // set variables
+ client_certdb_dir = x_client_certdb_dir.value;
+ client_certdb_pwd = x_client_certdb_pwd.value;
+ request_subject = x_request_subject.value;
+ request_keysize = x_request_keysize.value;
+ request_keytype = x_request_keytype.value;
+ output_file = x_req_out_file.value;
+ debug = x_debug.value;
+ transport_cert_file = x_transport_cert_file.value;
+
+ boolean st = prof.generate();
+
+ if (!st)
+ {
+ System.out.println("ERROR: unable to generate the crmf request");
+ System.exit(-1);
+ }
+ System.out.println("SUCCESS");
+ System.exit(0);
+
+ }
+
+};
diff --git a/tests/dogtag/shared/java/common/Certificate_Record.java b/tests/dogtag/shared/java/common/Certificate_Record.java
new file mode 100644
index 000000000..3d0259b71
--- /dev/null
+++ b/tests/dogtag/shared/java/common/Certificate_Record.java
@@ -0,0 +1,34 @@
+import java.util.*;
+import java.io.*;
+import java.net.*;
+
+public class Certificate_Record
+{
+
+ public String revokedOn = null;
+ public String revokedBy = null;
+ public String revocation_info = null;
+ public String signatureAlgorithm = null;
+ public String serialNumber = null;
+ public String subjectPublicKeyLength = null;
+ public String type = null;
+ public String subject = null;
+ public String issuedOn = null;
+ public String validNotBefore = null;
+ public String validNotAfter = null;
+ public String issuedBy = null;
+ public String subjectPublicKeyAlgorithm = null;
+ public String certChainBase64 = null;
+ public String certFingerprint = null;
+ public String pkcs7ChainBase64 = null;
+ public String certPrettyPrint = null;
+
+
+
+
+ public Certificate_Record()
+ {
+ // Do nothing
+ }
+
+};