public final class sun.security.pkcs12.PKCS12Attribute
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.security.pkcs12.PKCS12Attribute
super_class: java.lang.Object
{
private static final java.util.regex.Pattern COLON_SEPARATED_HEX_PAIRS;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String value;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private byte[] encoded;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private int hashValue;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "^[0-9a-fA-F]{2}(:[0-9a-fA-F]{2})+$"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
1: putstatic sun.security.pkcs12.PKCS12Attribute.COLON_SEPARATED_HEX_PAIRS:Ljava/util/regex/Pattern;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield sun.security.pkcs12.PKCS12Attribute.hashValue:I
2: aload 1
ifnull 3
aload 2
ifnonnull 4
3: StackMap locals: sun.security.pkcs12.PKCS12Attribute java.lang.String java.lang.String
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
new sun.security.util.ObjectIdentifier
dup
aload 1
invokespecial sun.security.util.ObjectIdentifier.<init>:(Ljava/lang/String;)V
astore 3
start local 3 5: goto 8
end local 3 StackMap locals:
StackMap stack: java.io.IOException
6: astore 4
start local 4 7: new java.lang.IllegalArgumentException
dup
ldc "Incorrect format: name"
aload 4
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 start local 3 8: StackMap locals: sun.security.util.ObjectIdentifier
StackMap stack:
aload 0
aload 1
putfield sun.security.pkcs12.PKCS12Attribute.name:Ljava/lang/String;
9: aload 2
invokevirtual java.lang.String.length:()I
istore 4
start local 4 10: aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 91
if_icmpne 13
aload 2
iload 4
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 93
if_icmpne 13
11: aload 2
iconst_1
iload 4
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
ldc ", "
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 12: goto 14
end local 5 13: StackMap locals: int
StackMap stack:
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 2
aastore
astore 5
start local 5 14: StackMap locals: java.lang.String[]
StackMap stack:
aload 0
aload 2
putfield sun.security.pkcs12.PKCS12Attribute.value:Ljava/lang/String;
15: aload 0
aload 0
aload 3
aload 5
invokevirtual sun.security.pkcs12.PKCS12Attribute.encode:(Lsun/security/util/ObjectIdentifier;[Ljava/lang/String;)[B
putfield sun.security.pkcs12.PKCS12Attribute.encoded:[B
16: goto 19
StackMap locals:
StackMap stack: java.io.IOException
17: astore 6
start local 6 18: new java.lang.IllegalArgumentException
dup
ldc "Incorrect format: value"
aload 6
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 6 19: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/security/pkcs12/PKCS12Attribute;
0 20 1 name Ljava/lang/String;
0 20 2 value Ljava/lang/String;
5 6 3 type Lsun/security/util/ObjectIdentifier;
8 20 3 type Lsun/security/util/ObjectIdentifier;
7 8 4 e Ljava/io/IOException;
10 20 4 length I
12 13 5 values [Ljava/lang/String;
14 20 5 values [Ljava/lang/String;
18 19 6 e Ljava/io/IOException;
Exception table:
from to target type
4 5 6 Class java.io.IOException
15 16 17 Class java.io.IOException
MethodParameters:
Name Flags
name
value
public void <init>(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield sun.security.pkcs12.PKCS12Attribute.hashValue:I
2: aload 1
ifnonnull 4
3: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
4: StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[]
StackMap stack:
aload 0
aload 1
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
putfield sun.security.pkcs12.PKCS12Attribute.encoded:[B
5: aload 0
aload 1
invokevirtual sun.security.pkcs12.PKCS12Attribute.parse:([B)V
6: goto 9
StackMap locals:
StackMap stack: java.io.IOException
7: astore 2
start local 2 8: new java.lang.IllegalArgumentException
dup
ldc "Incorrect format: encoded"
aload 2
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/security/pkcs12/PKCS12Attribute;
0 10 1 encoded [B
8 9 2 e Ljava/io/IOException;
Exception table:
from to target type
5 6 7 Class java.io.IOException
MethodParameters:
Name Flags
encoded
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.pkcs12.PKCS12Attribute.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs12/PKCS12Attribute;
public java.lang.String getValue();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.pkcs12.PKCS12Attribute.value:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs12/PKCS12Attribute;
public byte[] getEncoded();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.pkcs12.PKCS12Attribute.encoded:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs12/PKCS12Attribute;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof sun.security.pkcs12.PKCS12Attribute
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs12.PKCS12Attribute.encoded:[B
aload 1
checkcast sun.security.pkcs12.PKCS12Attribute
invokevirtual sun.security.pkcs12.PKCS12Attribute.getEncoded:()[B
invokestatic java.util.Arrays.equals:([B[B)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/pkcs12/PKCS12Attribute;
0 5 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.pkcs12.PKCS12Attribute.hashValue:I
iconst_m1
if_icmpne 2
1: aload 0
getfield sun.security.pkcs12.PKCS12Attribute.encoded:[B
invokestatic java.util.Arrays.hashCode:([B)I
pop
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs12.PKCS12Attribute.hashValue:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/pkcs12/PKCS12Attribute;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
getfield sun.security.pkcs12.PKCS12Attribute.name:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.security.pkcs12.PKCS12Attribute.value:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs12/PKCS12Attribute;
private byte[] encode(sun.security.util.ObjectIdentifier, java.lang.String[]);
descriptor: (Lsun/security/util/ObjectIdentifier;[Ljava/lang/String;)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 3
start local 3 1: aload 3
aload 1
invokevirtual sun.security.util.DerOutputStream.putOID:(Lsun/security/util/ObjectIdentifier;)V
2: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 4
start local 4 3: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 14
StackMap locals: sun.security.pkcs12.PKCS12Attribute sun.security.util.ObjectIdentifier java.lang.String[] sun.security.util.DerOutputStream sun.security.util.DerOutputStream top int int java.lang.String[]
StackMap stack:
4: aload 8
iload 6
aaload
astore 5
start local 5 5: getstatic sun.security.pkcs12.PKCS12Attribute.COLON_SEPARATED_HEX_PAIRS:Ljava/util/regex/Pattern;
aload 5
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 12
6: new java.math.BigInteger
dup
aload 5
ldc ":"
ldc ""
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
bipush 16
invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
invokevirtual java.math.BigInteger.toByteArray:()[B
7: astore 9
start local 9 8: aload 9
iconst_0
baload
ifne 10
9: aload 9
iconst_1
aload 9
arraylength
invokestatic java.util.Arrays.copyOfRange:([BII)[B
astore 9
10: StackMap locals: sun.security.pkcs12.PKCS12Attribute sun.security.util.ObjectIdentifier java.lang.String[] sun.security.util.DerOutputStream sun.security.util.DerOutputStream java.lang.String int int java.lang.String[] byte[]
StackMap stack:
aload 4
aload 9
invokevirtual sun.security.util.DerOutputStream.putOctetString:([B)V
end local 9 11: goto 13
12: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual sun.security.util.DerOutputStream.putUTF8String:(Ljava/lang/String;)V
end local 5 13: StackMap locals: sun.security.pkcs12.PKCS12Attribute sun.security.util.ObjectIdentifier java.lang.String[] sun.security.util.DerOutputStream sun.security.util.DerOutputStream top int int java.lang.String[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
14: iload 6
iload 7
if_icmplt 4
15: aload 3
bipush 49
aload 4
invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
16: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 5
start local 5 17: aload 5
bipush 48
aload 3
invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
18: aload 5
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/security/pkcs12/PKCS12Attribute;
0 19 1 type Lsun/security/util/ObjectIdentifier;
0 19 2 values [Ljava/lang/String;
1 19 3 attribute Lsun/security/util/DerOutputStream;
3 19 4 attrContent Lsun/security/util/DerOutputStream;
5 13 5 value Ljava/lang/String;
8 11 9 bytes [B
17 19 5 attributeValue Lsun/security/util/DerOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
values
private void parse(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: new sun.security.util.DerInputStream
dup
aload 1
invokespecial sun.security.util.DerInputStream.<init>:([B)V
astore 2
start local 2 1: aload 2
iconst_2
invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
astore 3
start local 3 2: aload 3
arraylength
iconst_2
if_icmpeq 4
3: new java.io.IOException
dup
ldc "Invalid length for PKCS12Attribute"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: sun.security.util.DerInputStream sun.security.util.DerValue[]
StackMap stack:
aload 3
iconst_0
aaload
invokevirtual sun.security.util.DerValue.getOID:()Lsun/security/util/ObjectIdentifier;
astore 4
start local 4 5: new sun.security.util.DerInputStream
dup
aload 3
iconst_1
aaload
invokevirtual sun.security.util.DerValue.toByteArray:()[B
invokespecial sun.security.util.DerInputStream.<init>:([B)V
6: astore 5
start local 5 7: aload 5
iconst_1
invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
astore 6
start local 6 8: aload 6
arraylength
anewarray java.lang.String
astore 7
start local 7 9: iconst_0
istore 9
start local 9 10: goto 35
11: StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] java.lang.String[] top int
StackMap stack:
aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
iconst_4
if_icmpne 14
12: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getOctetString:()[B
invokestatic sun.security.util.Debug.toString:([B)Ljava/lang/String;
aastore
13: goto 34
StackMap locals:
StackMap stack:
14: aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getAsString:()Ljava/lang/String;
dup
astore 8
start local 8 15: ifnull 18
16: aload 7
iload 9
aload 8
aastore
17: goto 34
StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] java.lang.String[] java.lang.String int
StackMap stack:
18: aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
bipush 6
if_icmpne 21
19: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getOID:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
aastore
20: goto 34
StackMap locals:
StackMap stack:
21: aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
bipush 24
if_icmpne 24
22: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getGeneralizedTime:()Ljava/util/Date;
invokevirtual java.util.Date.toString:()Ljava/lang/String;
aastore
23: goto 34
StackMap locals:
StackMap stack:
24: aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
bipush 23
if_icmpne 27
25: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getUTCTime:()Ljava/util/Date;
invokevirtual java.util.Date.toString:()Ljava/lang/String;
aastore
26: goto 34
StackMap locals:
StackMap stack:
27: aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
iconst_2
if_icmpne 30
28: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getBigInteger:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.toString:()Ljava/lang/String;
aastore
29: goto 34
StackMap locals:
StackMap stack:
30: aload 6
iload 9
aaload
getfield sun.security.util.DerValue.tag:B
iconst_1
if_icmpne 33
31: aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getBoolean:()Z
invokestatic java.lang.String.valueOf:(Z)Ljava/lang/String;
aastore
32: goto 34
33: StackMap locals:
StackMap stack:
aload 7
iload 9
aload 6
iload 9
aaload
invokevirtual sun.security.util.DerValue.getDataBytes:()[B
invokestatic sun.security.util.Debug.toString:([B)Ljava/lang/String;
aastore
end local 8 34: StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] java.lang.String[] top int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
35: iload 9
aload 6
arraylength
if_icmplt 11
end local 9 36: aload 0
aload 4
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
putfield sun.security.pkcs12.PKCS12Attribute.name:Ljava/lang/String;
37: aload 0
aload 7
arraylength
iconst_1
if_icmpne 38
aload 7
iconst_0
aaload
goto 39
StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] java.lang.String[]
StackMap stack: sun.security.pkcs12.PKCS12Attribute
38: aload 7
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
StackMap locals: sun.security.pkcs12.PKCS12Attribute byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] java.lang.String[]
StackMap stack: sun.security.pkcs12.PKCS12Attribute java.lang.String
39: putfield sun.security.pkcs12.PKCS12Attribute.value:Ljava/lang/String;
40: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lsun/security/pkcs12/PKCS12Attribute;
0 41 1 encoded [B
1 41 2 attributeValue Lsun/security/util/DerInputStream;
2 41 3 attrSeq [Lsun/security/util/DerValue;
5 41 4 type Lsun/security/util/ObjectIdentifier;
7 41 5 attrContent Lsun/security/util/DerInputStream;
8 41 6 attrValueSet [Lsun/security/util/DerValue;
9 41 7 values [Ljava/lang/String;
15 34 8 printableString Ljava/lang/String;
10 36 9 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
encoded
}
SourceFile: "PKCS12Attribute.java"