Information

0
Story Points

Technologies

Decompiled Java File
package iaik.pkcs;

import iaik.asn1.ASN;
import iaik.asn1.ASN1;
import iaik.asn1.ASN1Object;
import iaik.asn1.CON_SPEC;
import iaik.asn1.CodingException;
import iaik.asn1.DerCoder;
import iaik.asn1.ObjectID;
import iaik.asn1.SEQUENCE;
import iaik.pkcs.PKCSException;
import iaik.pkcs.PKCSParsingException;
import iaik.utils.Util;
import iaik.x509.X509Certificate;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class NetscapeCertList {
   // $FF: synthetic field
   static Class a;
   private X509Certificate[] b;

   static Class a(String var0) {
      try {
         return Class.forName(var0);
      } catch (ClassNotFoundException var2) {
         throw new NoClassDefFoundError(var2.getMessage());
      }
   }

   public void writeTo(OutputStream var1) throws IOException {
      try {
         DerCoder.encodeTo(this.a(), var1);
      } catch (CodingException var3) {
         throw new IOException(var3.toString());
      }
   }

   public String toString() {
      StringBuffer var1 = new StringBuffer();
      var1.append("ContentType: netscapeCertSequence  {\n");
      if(this.b == null) {
         var1.append("No certificates!\n}");
      } else {
         var1.append(this.b.length + " certificates\n}");
      }

      return var1.toString();
   }

   public byte[] toByteArray() throws PKCSException {
      try {
         return DerCoder.encode(this.a());
      } catch (CodingException var2) {
         throw new PKCSException(var2.getMessage());
      }
   }

   private ASN1Object a() throws CodingException {
      SEQUENCE var1 = new SEQUENCE(true);
      var1.addComponent(ObjectID.netscapeCertSequence);
      ASN1Object var2 = ASN.createSequenceOf(this.b);
      CON_SPEC var3 = new CON_SPEC(0, var2);
      var1.addComponent(var3);
      return var1;
   }

   public void setCertificateList(X509Certificate[] var1) {
      this.b = var1;
   }

   public X509Certificate[] getCertificateList() {
      return this.b;
   }

   private void a(InputStream var1) throws CodingException, IOException {
      ASN1Object var2 = null;
      byte[] var3 = Util.readStream(var1);
      ASN1 var4 = new ASN1(var3);
      var2 = var4.getComponentAt(0);
      if(!(var2 instanceof ObjectID)) {
         throw new CodingException("Invalid Netscape cert sequence. First component has to be an object identifier!");
      } else if(!((ObjectID)var2).equals(ObjectID.netscapeCertSequence)) {
         throw new CodingException("Invalid Netscape cert sequence. Wrong object identifier!");
      } else {
         var2 = var4.getComponentAt(1).getComponentAt(0);
         this.b = (X509Certificate[])ASN.parseSequenceOf(var2, a != null?a:(a = a("iaik.x509.X509Certificate")));
      }
   }

   public NetscapeCertList(InputStream var1) throws PKCSParsingException, IOException {
      try {
         this.a(var1);
      } catch (CodingException var3) {
         throw new PKCSParsingException(var3.getMessage());
      }
   }

   public NetscapeCertList() {
   }
}
Page generated: Oct 19, 2017 2:34:15 PM