summaryrefslogtreecommitdiffstats
path: root/pki/base/silent/src/common/Utilities.java
diff options
context:
space:
mode:
authoradmiyo <admiyo@c9f7a03b-bd48-0410-a16d-cbbf54688b0b>2011-11-17 00:02:59 +0000
committeradmiyo <admiyo@c9f7a03b-bd48-0410-a16d-cbbf54688b0b>2011-11-17 00:02:59 +0000
commited76e714f94e8aa60aa5c4b4a8cf386a582bf02d (patch)
treeaa6199e43693f5bc0e95e69e3baf4dca2014005a /pki/base/silent/src/common/Utilities.java
parent0f0d937b1caec10a3487bd1f36075a57411bc63a (diff)
PKISilent in single tree PKISilent was a series of classes, each in the Common namespace. Now it is in a single tree and fronted by a single Java class that multiplexes between them.
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/trunk@2295 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
Diffstat (limited to 'pki/base/silent/src/common/Utilities.java')
-rw-r--r--pki/base/silent/src/common/Utilities.java355
1 files changed, 0 insertions, 355 deletions
diff --git a/pki/base/silent/src/common/Utilities.java b/pki/base/silent/src/common/Utilities.java
deleted file mode 100644
index 7deb154ca..000000000
--- a/pki/base/silent/src/common/Utilities.java
+++ /dev/null
@@ -1,355 +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 ---
-
-import java.io.DataInputStream;
-import java.io.FileInputStream;
-import java.util.Enumeration;
-
-import netscape.security.x509.CertificateSerialNumber;
-import netscape.security.x509.CertificateSubjectName;
-import netscape.security.x509.RDN;
-import netscape.security.x509.SerialNumber;
-import netscape.security.x509.X500Name;
-import netscape.security.x509.X509CertImpl;
-import netscape.security.x509.X509CertInfo;
-
-import com.netscape.osutil.OSUtil;
-
-public class Utilities {
- private static final String keyValueSeparators = "=: \t\r\n\f";
- private static final String strictKeyValueSeparators = "=:";
- private static final String specialSaveChars = " \t\r\n\f";
- private static final String whiteSpaceChars = " \t\r\n\f";
-
- public Utilities() {// Do nothing
- }
-
- public String cleanupQuotes(String token) {
-
- StringBuffer buf = new StringBuffer();
- int length = token.length();
- int curIndex = 0;
-
- if (token.startsWith("\"") && token.endsWith("\"")) {
- curIndex = 1;
- length--;
- }
-
- boolean oneQuoteFound = false;
- boolean twoQuotesFound = false;
-
- while (curIndex < length) {
- char curChar = token.charAt(curIndex);
-
- if (curChar == '"') {
- twoQuotesFound = (oneQuoteFound) ? true : false;
- oneQuoteFound = true;
- } else {
- oneQuoteFound = false;
- twoQuotesFound = false;
- }
-
- if (twoQuotesFound) {
- twoQuotesFound = false;
- oneQuoteFound = false;
- curIndex++;
- continue;
- }
-
- buf.append(curChar);
- curIndex++;
- }
-
- return buf.toString();
- }
-
- public String removechar(String token) {
-
- StringBuffer buf = new StringBuffer();
- int end = token.length();
- int begin = 0;
-
- if (token.endsWith(";")) {
- end--;
- }
-
- while (begin < end) {
- char curChar = token.charAt(begin);
-
- buf.append(curChar);
- begin++;
- }
- return buf.toString();
-
- }
-
- public String parse_httpresponse(String line) {
- // look for name=value pair
- // remove trailing white spaces
- // remove trailing ;
- // remove double quotes
-
- String temp = line.substring(line.indexOf("=") + 1);
-
- return cleanupQuotes(removechar(temp.trim()));
-
- }
-
- public String remove_newline(String s) {
- if (s == null) {
- return null;
- }
-
- String val = "";
-
- for (int i = 0; i < s.length(); i++) {
- if ((s.charAt(i) == '\\') && (s.charAt(i + 1) == 'n')) {
- i++;
- continue;
- } else if ((s.charAt(i) == '\\') && (s.charAt(i + 1) == 'r')) {
- i++;
- continue;
- } else if (s.charAt(i) == '"') {
- continue;
- }
- val += s.charAt(i);
- }
- return val;
-
- }
-
- public String normalize(String s) {
-
- if (s == null) {
- return null;
- }
-
- String val = "";
-
- for (int i = 0; i < s.length(); i++) {
- if ((s.charAt(i) == '\\') && (s.charAt(i + 1) == 'n')) {
- val += '\n';
- i++;
- continue;
- } else if ((s.charAt(i) == '\\') && (s.charAt(i + 1) == 'r')) {
- i++;
- continue;
- } else if (s.charAt(i) == '"') {
- continue;
- }
- val += s.charAt(i);
- }
- return val;
- }
-
- /*
- * format of the file should be like this:
- * -----BEGIN CERTIFICATE-----
- * base64 encoded certificate
- * -----END CERTIFICATE-----
- */
- public String getcertfromfile(String filename) {
- StringBuffer tempBuffer = new StringBuffer();
-
- try {
- FileInputStream fis = new FileInputStream(filename);
- DataInputStream in = new DataInputStream(fis);
-
- while (in.available() != 0) {
- String temp = in.readLine();
-
- if (temp.equalsIgnoreCase("-----BEGIN CERTIFICATE-----")
- || temp.equalsIgnoreCase("-----END CERTIFICATE-----")) {
- continue;
- }
- tempBuffer.append(temp);
- }
-
- return tempBuffer.toString();
- } catch (Exception e) {
- System.out.println("ERROR: getcertfromfile" + e.toString());
- return null;
- }
-
- }
-
- public String getcertfromfile_withheaders(String filename) {
- StringBuffer tempBuffer = new StringBuffer();
-
- try {
- FileInputStream fis = new FileInputStream(filename);
- DataInputStream in = new DataInputStream(fis);
-
- while (in.available() != 0) {
- String temp = in.readLine();
-
- tempBuffer.append(temp);
- }
- return tempBuffer.toString();
- } catch (Exception e) {
- System.out.println(
- "ERROR: getcertfromfile_withheaders" + e.toString());
- return null;
- }
- }
-
- /*
- * format of the file should be like this:
- * -----BEGIN CERTIFICATE REVOCATION LIST-----
- * base64 encoded CRL
- * -----END CERTIFICATE REVOCATION LIST-----
- */
- public String getcrlfromfile(String filename) {
- StringBuffer tempBuffer = new StringBuffer();
-
- try {
- FileInputStream fis = new FileInputStream(filename);
- DataInputStream in = new DataInputStream(fis);
-
- while (in.available() != 0) {
- String temp = in.readLine();
-
- tempBuffer.append(temp);
- }
-
- return tempBuffer.toString();
- } catch (Exception e) {
- System.out.println("ERROR: getcrlfromfile" + e.toString());
- return null;
- }
-
- }
-
- /*
- * format of the file should be like this:
- * -----BEGIN CERTIFICATE-----
- * base64 encoded certificate
- * -----END CERTIFICATE-----
- */
- public String getcafromfile(String filename) {
- StringBuffer tempBuffer = new StringBuffer();
-
- try {
- FileInputStream fis = new FileInputStream(filename);
- DataInputStream in = new DataInputStream(fis);
-
- while (in.available() != 0) {
- String temp = in.readLine();
-
- tempBuffer.append(temp);
- }
-
- return tempBuffer.toString();
- } catch (Exception e) {
- System.out.println("ERROR: getcafromfile" + e.toString());
- return null;
- }
-
- }
-
- /*
- * function for RFC 2254. converts a x509 certificate given as
- * a binary array[] to a Ldap filter string
- */
- public static String escapeBinaryData(byte data[]) {
- String result = "";
-
- for (int i = 0; i < data.length; i++) {
- String s = Integer.toHexString((int) (0xff & data[i]));
-
- if (s.length() == 1) {
- s = "0" + s;
- }
- result = result + "\\" + s;
- }
-
- System.out.println("LDAP_FILTER=" + result);
- return result;
- }
-
- /*
- * function to decode base64 encoded certificate
- */
- public Certificate_Record decode_cert(String cert) {
-
- String head = "-----BEGIN CERTIFICATE-----";
- String tail = "-----END CERTIFICATE-----";
-
- Certificate_Record cr = new Certificate_Record();
-
- int head_pos = cert.indexOf(head);
- int tail_pos = cert.indexOf(tail);
-
- // String not found
- if (head_pos == -1 || tail_pos == -1) {
- return null;
- }
-
- String temp = cert.substring(head_pos + head.length(), tail_pos);
-
- temp = temp.replaceAll("\\r", "");
- temp = temp.replaceAll("\\n", "");
-
- try {
- // BASE64Decoder base64 = new BASE64Decoder();
- // byte decodedBASE64Cert[] = base64.decodeBuffer(temp);
- byte decodedBASE64Cert[] = OSUtil.AtoB(temp);
- X509CertImpl x509_cert = new X509CertImpl(decodedBASE64Cert);
- X509CertInfo certinfo = (X509CertInfo) x509_cert.get("x509.INFO");
-
- /* Get Serial Number */
- CertificateSerialNumber csn = (CertificateSerialNumber)
- certinfo.get(X509CertInfo.SERIAL_NUMBER);
- SerialNumber sn = (SerialNumber) csn.get("NUMBER");
-
- // just adding serialnumber for add.
- // we can add mode here like subject name, extensions,issuer to this record.
- cr.serialNumber = sn.getNumber().toString().trim();
-
- /* Get Subject Name */
-
- CertificateSubjectName csn1 = (CertificateSubjectName)
- certinfo.get(X509CertInfo.SUBJECT);
-
- Enumeration en = csn1.getElements();
-
- X500Name dname = (X500Name) csn1.get(CertificateSubjectName.DN_NAME);
-
- String pp = "";
- RDN[] rdns = dname.getNames();
-
- for (int i = rdns.length - 1; i >= 0; i--) {
- pp = pp + rdns[i] + "\n";
- }
-
- cr.subject = pp;
-
- } catch (Exception e) {
- System.out.println("ERROR: Exception when decoding certificate=" + e);
- e.printStackTrace();
- return null;
- }
-
- return cr;
-
- }
-
-}
-
-
-; // end class