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 705
aload 0 /* this */
invokespecial sun.security.util.DisabledAlgorithmConstraints$Constraint.<init>:()V
1: .line 706
aload 0 /* this */
aload 1 /* algorithm */
putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.algorithm:Ljava/lang/String;
2: .line 707
aload 0 /* this */
aload 2 /* usages */
putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
3: .line 708
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=7, locals=9, args_size=2
start local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
start local 1 // sun.security.util.ConstraintsParameters cp
0: .line 713
aload 0 /* this */
getfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 28
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 715
aconst_null
astore 6 /* v */
start local 6 // java.lang.String v
3: .line 716
aload 2 /* usage */
ldc "TLSServer"
invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
ifne 6
4: .line 717
ldc "tls server"
astore 6 /* v */
5: .line 718
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 719
ldc "tls client"
astore 6 /* v */
8: .line 720
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 721
ldc "plugin code signing"
astore 6 /* v */
11: .line 724
StackMap locals:
StackMap stack:
getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
ifnull 19
12: .line 725
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 726
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 725
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
15: .line 729
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 7 /* ba */
start local 7 // java.io.ByteArrayOutputStream ba
16: .line 730
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 731
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 732
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 734
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 27
20: .line 735
aload 0 /* this */
aload 1 /* cp */
invokevirtual sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.next:(Lsun/security/util/ConstraintsParameters;)Z
ifeq 22
21: .line 736
return
22: .line 738
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 739
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 740
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 741
aconst_null
aconst_null
iconst_m1
getstatic java.security.cert.CertPathValidatorException$BasicReason.ALGORITHM_CONSTRAINED:Ljava/security/cert/CertPathValidatorException$BasicReason;
26: .line 738
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 6 // java.lang.String v
end local 2 // java.lang.String usage
27: .line 713
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:
28: iload 3
iload 4
if_icmplt 1
29: .line 744
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 30 0 this Lsun/security/util/DisabledAlgorithmConstraints$UsageConstraint;
0 30 1 cp Lsun/security/util/ConstraintsParameters;
2 27 2 usage Ljava/lang/String;
3 27 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:
public final BasicReason = java.security.cert.CertPathValidatorException$BasicReason of java.security.cert.CertPathValidatorException
public abstract Reason = java.security.cert.CertPathValidatorException$Reason of java.security.cert.CertPathValidatorException
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