class sun.security.util.DisabledAlgorithmConstraints$UsageConstraint extends sun.security.util.DisabledAlgorithmConstraints$Constraint
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint
super_class: sun.security.util.DisabledAlgorithmConstraints$Constraint
{
java.lang.String[] usages;
descriptor: [Ljava/lang/String;
flags: (0x0000)
void <init>(java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;[Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
start local 1 // java.lang.String algorithm
start local 2 // java.lang.String[] usages
0: .line 689
aload 0 /* this */
invokespecial sun.security.util.DisabledAlgorithmConstraints$Constraint.<init>:()V
1: .line 690
aload 0 /* this */
aload 1 /* algorithm */
putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.algorithm:Ljava/lang/String;
2: .line 691
aload 0 /* this */
aload 2 /* usages */
putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
3: .line 692
return
end local 2 // java.lang.String[] usages
end local 1 // java.lang.String algorithm
end local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/util/DisabledAlgorithmConstraints$UsageConstraint;
0 4 1 algorithm Ljava/lang/String;
0 4 2 usages [Ljava/lang/String;
MethodParameters:
Name Flags
algorithm
usages
public void permits(sun.security.util.ConstraintsParameters);
descriptor: (Lsun/security/util/ConstraintsParameters;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=2
start local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
start local 1 // sun.security.util.ConstraintsParameters cp
0: .line 697
aload 0 /* this */
getfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 27
StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters top int int java.lang.String[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2 /* usage */
start local 2 // java.lang.String usage
2: .line 699
aconst_null
astore 6 /* v */
start local 6 // java.lang.String v
3: .line 700
aload 2 /* usage */
ldc "TLSServer"
invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
ifne 6
4: .line 701
ldc "tls server"
astore 6 /* v */
5: .line 702
goto 11
StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters java.lang.String int int java.lang.String[] java.lang.String
StackMap stack:
6: aload 2 /* usage */
ldc "TLSClient"
invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
ifne 9
7: .line 703
ldc "tls client"
astore 6 /* v */
8: .line 704
goto 11
StackMap locals:
StackMap stack:
9: aload 2 /* usage */
ldc "SignedJAR"
invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
ifne 11
10: .line 705
ldc "plugin code signing"
astore 6 /* v */
11: .line 708
StackMap locals:
StackMap stack:
getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
ifnull 19
12: .line 709
getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "Checking if usage constraint \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6 /* v */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: .line 710
ldc "\" matches \""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1 /* cp */
invokevirtual sun.security.util.ConstraintsParameters.getVariant:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: .line 709
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
15: .line 713
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 7 /* ba */
start local 7 // java.io.ByteArrayOutputStream ba
16: .line 714
new java.io.PrintStream
dup
aload 7 /* ba */
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
astore 8 /* ps */
start local 8 // java.io.PrintStream ps
17: .line 715
new java.lang.Exception
dup
invokespecial java.lang.Exception.<init>:()V
aload 8 /* ps */
invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
18: .line 716
getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
aload 7 /* ba */
invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 8 // java.io.PrintStream ps
end local 7 // java.io.ByteArrayOutputStream ba
19: .line 718
StackMap locals:
StackMap stack:
aload 1 /* cp */
invokevirtual sun.security.util.ConstraintsParameters.getVariant:()Ljava/lang/String;
aload 6 /* v */
invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
ifne 26
20: .line 719
aload 0 /* this */
aload 1 /* cp */
invokevirtual sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.next:(Lsun/security/util/ConstraintsParameters;)Z
ifeq 22
21: .line 720
return
22: .line 722
StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
new java.lang.StringBuilder
dup
ldc "Usage constraint "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: .line 723
aload 2 /* usage */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " check failed: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
getfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.algorithm:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: .line 724
aload 0 /* this */
aload 1 /* cp */
invokevirtual sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.extendedMsg:(Lsun/security/util/ConstraintsParameters;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
25: .line 722
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
end local 6 // java.lang.String v
end local 2 // java.lang.String usage
26: .line 697
StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters top int int java.lang.String[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
27: iload 3
iload 4
if_icmplt 1
28: .line 727
return
end local 1 // sun.security.util.ConstraintsParameters cp
end local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/security/util/DisabledAlgorithmConstraints$UsageConstraint;
0 29 1 cp Lsun/security/util/ConstraintsParameters;
2 26 2 usage Ljava/lang/String;
3 26 6 v Ljava/lang/String;
16 19 7 ba Ljava/io/ByteArrayOutputStream;
17 19 8 ps Ljava/io/PrintStream;
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
cp
}
SourceFile: "DisabledAlgorithmConstraints.java"
NestHost: sun.security.util.DisabledAlgorithmConstraints
InnerClasses:
private abstract Constraint = sun.security.util.DisabledAlgorithmConstraints$Constraint of sun.security.util.DisabledAlgorithmConstraints
private UsageConstraint = sun.security.util.DisabledAlgorithmConstraints$UsageConstraint of sun.security.util.DisabledAlgorithmConstraints