Red Hat Application Migration Toolkit
package iaik.pkcs.pkcs12;
import iaik.asn1.ASN;
import iaik.asn1.ASN1Object;
import iaik.asn1.ASN1Type;
import iaik.asn1.CON_SPEC;
import iaik.asn1.CodingException;
import iaik.asn1.DerCoder;
import iaik.asn1.ObjectID;
import iaik.asn1.SEQUENCE;
import iaik.asn1.structures.Attribute;
import iaik.pkcs.PKCSException;
import iaik.pkcs.pkcs12.Attributes;
import iaik.pkcs.pkcs12.b;
import iaik.utils.Util;
public abstract class SafeBag extends Attributes implements ASN1Type {
// $FF: synthetic field
static Class f;
// $FF: synthetic field
static Class g;
// $FF: synthetic field
static Class k;
// $FF: synthetic field
static Class j;
// $FF: synthetic field
static Class l;
// $FF: synthetic field
static Class e;
// $FF: synthetic field
static Class h;
// $FF: synthetic field
static Class i;
private static b a = new b();
ObjectID b;
private static final boolean c = false;
private static final boolean d = false;
static Class a(String var0) {
try {
return Class.forName(var0);
} catch (ClassNotFoundException var2) {
throw new NoClassDefFoundError(var2.getMessage());
}
}
public String toString() {
StringBuffer var1 = new StringBuffer();
var1.append("Bag type: " + this.b + "\n");
if(super.b != null) {
var1.append("Friendly name: " + super.b + "\n");
}
if(super.a != null) {
var1.append("local key ID: " + Util.toString(super.a) + "\n");
}
return var1.toString();
}
public abstract ASN1Object toASN1Object() throws CodingException;
public static void register(ObjectID var0, Class var1) {
a.register(g != null?g:(g = a("iaik.pkcs.pkcs12.SafeBag")), var0, var1);
}
protected static SafeBag[] parseSafeContents(byte[] var0) throws CodingException {
ASN1Object var1 = DerCoder.decode(var0);
return parseSafeContents(var1);
}
protected static SafeBag[] parseSafeContents(ASN1Object var0) throws CodingException {
SafeBag[] var1 = null;
ASN1Object var2 = var0;
var1 = new SafeBag[var0.countComponents()];
for(int var3 = 0; var3 < var2.countComponents(); ++var3) {
ASN1Object var4 = var2.getComponentAt(var3);
ObjectID var5 = (ObjectID)var4.getComponentAt(0);
SafeBag var6 = null;
try {
var6 = create(var5);
} catch (PKCSException var9) {
;
}
ASN1Object var7 = var4.getComponentAt(1);
if(var7.getAsnType().getTag() != 0) {
throw new CodingException("No PKCS#12 SafeBag!");
}
var6.decode((ASN1Object)var7.getValue());
if(var4.countComponents() > 2) {
Attribute[] var8 = (Attribute[])ASN.parseSequenceOf(var4.getComponentAt(2), f != null?f:(f = a("iaik.asn1.structures.Attribute")));
var6.setAttributes(var8);
}
var1[var3] = var6;
}
return var1;
}
public ObjectID getBagType() {
return this.b;
}
protected static ASN1Object encodeSafeContentsAsASN1Object(SafeBag[] var0) throws CodingException {
SEQUENCE var1 = new SEQUENCE();
for(int var2 = 0; var2 < var0.length; ++var2) {
SEQUENCE var3 = new SEQUENCE();
var3.addComponent(var0[var2].getBagType());
var3.addComponent(new CON_SPEC(0, var0[var2].toASN1Object()));
Attribute[] var4 = var0[var2].getAttributes();
if(var4 != null) {
var3.addComponent(ASN.createSetOf(var4));
}
var1.addComponent(var3);
}
return var1;
}
protected static byte[] encodeSafeContents(SafeBag[] var0) throws CodingException {
ASN1Object var1 = encodeSafeContentsAsASN1Object(var0);
return DerCoder.encode(var1);
}
public abstract void decode(ASN1Object var1) throws CodingException;
public static SafeBag create(ObjectID var0) throws PKCSException {
try {
return (SafeBag)a.create(g != null?g:(g = a("iaik.pkcs.pkcs12.SafeBag")), var0, false);
} catch (InstantiationException var1) {
throw new PKCSException("No PKCS#12 bag type registered for the given object ID!");
}
}
protected SafeBag(String var1, byte[] var2) {
super(var1, var2);
}
protected SafeBag() {
}
static {
register(ObjectID.pkcs12_keyBag, i != null?i:(i = a("iaik.pkcs.pkcs12.KeyBag")));
register(ObjectID.pkcs12_pkcs8ShroudedKeyBag, h != null?h:(h = a("iaik.pkcs.pkcs12.PKCS8ShroudedKeyBag")));
register(ObjectID.pkcs12_certBag, e != null?e:(e = a("iaik.pkcs.pkcs12.CertificateBag")));
register(ObjectID.pkcs12_crlBag, l != null?l:(l = a("iaik.pkcs.pkcs12.CRLBag")));
register(ObjectID.pkcs12_secretBag, j != null?j:(j = a("iaik.pkcs.pkcs12.SecretBag")));
register(ObjectID.pkcs12_safeContentsBag, k != null?k:(k = a("iaik.pkcs.pkcs12.SafeContentsBag")));
}
}