public abstract class javax.security.auth.login.Configuration
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: javax.security.auth.login.Configuration
super_class: java.lang.Object
{
private static javax.security.auth.login.Configuration configuration;
descriptor: Ljavax/security/auth/login/Configuration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final java.security.AccessControlContext acc;
descriptor: Ljava/security/AccessControlContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static void checkPermission(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 1
new javax.security.auth.AuthPermission
dup
3: new java.lang.StringBuilder
dup
ldc "createLoginConfiguration."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.security.auth.AuthPermission.<init>:(Ljava/lang/String;)V
4: invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
5: StackMap locals: java.lang.SecurityManager
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 type Ljava/lang/String;
1 6 1 sm Ljava/lang/SecurityManager;
MethodParameters:
Name Flags
type
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: invokestatic java.security.AccessController.getContext:()Ljava/security/AccessControlContext;
putfield javax.security.auth.login.Configuration.acc:Ljava/security/AccessControlContext;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/security/auth/login/Configuration;
public static javax.security.auth.login.Configuration getConfiguration();
descriptor: ()Ljavax/security/auth/login/Configuration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=0
0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 0
start local 0 1: aload 0
ifnull 3
2: aload 0
new javax.security.auth.AuthPermission
dup
ldc "getLoginConfiguration"
invokespecial javax.security.auth.AuthPermission.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
ldc Ljavax/security/auth/login/Configuration;
dup
astore 1
monitorenter
4: getstatic javax.security.auth.login.Configuration.configuration:Ljavax/security/auth/login/Configuration;
ifnonnull 36
5: aconst_null
astore 2
start local 2 6: new javax.security.auth.login.Configuration$1
dup
invokespecial javax.security.auth.login.Configuration$1.<init>:()V
7: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
8: aload 2
ifnonnull 10
9: ldc "sun.security.provider.ConfigFile"
astore 2
10: StackMap locals: java.lang.Class java.lang.String
StackMap stack:
aload 2
astore 3
start local 3 11: new javax.security.auth.login.Configuration$2
dup
aload 3
invokespecial javax.security.auth.login.Configuration$2.<init>:(Ljava/lang/String;)V
12: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
checkcast javax.security.auth.login.Configuration
astore 4
start local 4 13: new javax.security.auth.login.Configuration$3
dup
aload 4
invokespecial javax.security.auth.login.Configuration$3.<init>:(Ljavax/security/auth/login/Configuration;)V
14: aload 4
getfield javax.security.auth.login.Configuration.acc:Ljava/security/AccessControlContext;
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.AccessControlContext
15: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
end local 4 end local 3 16: goto 36
StackMap locals:
StackMap stack: java.security.PrivilegedActionException
17: astore 3
start local 3 18: aload 3
invokevirtual java.security.PrivilegedActionException.getException:()Ljava/lang/Exception;
astore 4
start local 4 19: aload 4
instanceof java.lang.InstantiationException
ifeq 28
20: new java.lang.SecurityException
dup
21: new java.lang.StringBuilder
dup
ldc "Configuration error:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
22: aload 4
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
25: invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
26: aload 4
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
invokevirtual java.lang.SecurityException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
27: checkcast java.lang.SecurityException
athrow
28: StackMap locals: java.security.PrivilegedActionException java.lang.Exception
StackMap stack:
new java.lang.SecurityException
dup
29: new java.lang.StringBuilder
dup
ldc "Configuration error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
30: aload 4
invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
32: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
33: invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
34: aload 4
invokevirtual java.lang.SecurityException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
35: checkcast java.lang.SecurityException
athrow
end local 4 end local 3 end local 2 36: StackMap locals:
StackMap stack:
getstatic javax.security.auth.login.Configuration.configuration:Ljavax/security/auth/login/Configuration;
aload 1
monitorexit
37: areturn
38: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
39: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 40 0 sm Ljava/lang/SecurityManager;
6 36 2 config_class Ljava/lang/String;
11 16 3 finalClass Ljava/lang/String;
13 16 4 untrustedImpl Ljavax/security/auth/login/Configuration;
18 36 3 e Ljava/security/PrivilegedActionException;
19 36 4 ee Ljava/lang/Exception;
Exception table:
from to target type
10 16 17 Class java.security.PrivilegedActionException
4 37 38 any
38 39 38 any
public static void setConfiguration(javax.security.auth.login.Configuration);
descriptor: (Ljavax/security/auth/login/Configuration;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
new javax.security.auth.AuthPermission
dup
ldc "setLoginConfiguration"
invokespecial javax.security.auth.AuthPermission.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
aload 0
putstatic javax.security.auth.login.Configuration.configuration:Ljavax/security/auth/login/Configuration;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 configuration Ljavax/security/auth/login/Configuration;
1 5 1 sm Ljava/lang/SecurityManager;
MethodParameters:
Name Flags
configuration
public static javax.security.auth.login.Configuration getInstance(java.lang.String, javax.security.auth.login.Configuration$Parameters);
descriptor: (Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;)Ljavax/security/auth/login/Configuration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ldc "null type name"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
invokestatic javax.security.auth.login.Configuration.checkPermission:(Ljava/lang/String;)V
2: ldc "Configuration"
3: ldc Ljavax/security/auth/login/ConfigurationSpi;
4: aload 0
5: aload 1
6: invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Lsun/security/jca/GetInstance$Instance;
astore 2
start local 2 7: new javax.security.auth.login.Configuration$ConfigDelegate
dup
aload 2
getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
checkcast javax.security.auth.login.ConfigurationSpi
8: aload 2
getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
9: aload 0
10: aload 1
11: invokespecial javax.security.auth.login.Configuration$ConfigDelegate.<init>:(Ljavax/security/auth/login/ConfigurationSpi;Ljava/security/Provider;Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;)V
12: areturn
end local 2 13: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 2
start local 2 14: aload 2
invokestatic javax.security.auth.login.Configuration.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljavax/security/auth/login/Configuration;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 type Ljava/lang/String;
0 15 1 params Ljavax/security/auth/login/Configuration$Parameters;
7 13 2 instance Lsun/security/jca/GetInstance$Instance;
14 15 2 nsae Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
2 12 13 Class java.security.NoSuchAlgorithmException
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
type
params
public static javax.security.auth.login.Configuration getInstance(java.lang.String, javax.security.auth.login.Configuration$Parameters, java.lang.String);
descriptor: (Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;Ljava/lang/String;)Ljavax/security/auth/login/Configuration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "null type name"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 2
ifnull 2
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 3
2: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "missing provider"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokestatic javax.security.auth.login.Configuration.checkPermission:(Ljava/lang/String;)V
4: ldc "Configuration"
5: ldc Ljavax/security/auth/login/ConfigurationSpi;
6: aload 0
7: aload 1
8: aload 2
9: invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
astore 3
start local 3 10: new javax.security.auth.login.Configuration$ConfigDelegate
dup
aload 3
getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
checkcast javax.security.auth.login.ConfigurationSpi
11: aload 3
getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
12: aload 0
13: aload 1
14: invokespecial javax.security.auth.login.Configuration$ConfigDelegate.<init>:(Ljavax/security/auth/login/ConfigurationSpi;Ljava/security/Provider;Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;)V
15: areturn
end local 3 16: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 3
start local 3 17: aload 3
invokestatic javax.security.auth.login.Configuration.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljavax/security/auth/login/Configuration;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 type Ljava/lang/String;
0 18 1 params Ljavax/security/auth/login/Configuration$Parameters;
0 18 2 provider Ljava/lang/String;
10 16 3 instance Lsun/security/jca/GetInstance$Instance;
17 18 3 nsae Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
4 15 16 Class java.security.NoSuchAlgorithmException
Exceptions:
throws java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
type
params
provider
public static javax.security.auth.login.Configuration getInstance(java.lang.String, javax.security.auth.login.Configuration$Parameters, java.security.Provider);
descriptor: (Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;Ljava/security/Provider;)Ljavax/security/auth/login/Configuration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "null type name"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 2
ifnonnull 3
2: new java.lang.IllegalArgumentException
dup
ldc "missing provider"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokestatic javax.security.auth.login.Configuration.checkPermission:(Ljava/lang/String;)V
4: ldc "Configuration"
5: ldc Ljavax/security/auth/login/ConfigurationSpi;
6: aload 0
7: aload 1
8: aload 2
9: invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance;
astore 3
start local 3 10: new javax.security.auth.login.Configuration$ConfigDelegate
dup
aload 3
getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
checkcast javax.security.auth.login.ConfigurationSpi
11: aload 3
getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
12: aload 0
13: aload 1
14: invokespecial javax.security.auth.login.Configuration$ConfigDelegate.<init>:(Ljavax/security/auth/login/ConfigurationSpi;Ljava/security/Provider;Ljava/lang/String;Ljavax/security/auth/login/Configuration$Parameters;)V
15: areturn
end local 3 16: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 3
start local 3 17: aload 3
invokestatic javax.security.auth.login.Configuration.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljavax/security/auth/login/Configuration;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 type Ljava/lang/String;
0 18 1 params Ljavax/security/auth/login/Configuration$Parameters;
0 18 2 provider Ljava/security/Provider;
10 16 3 instance Lsun/security/jca/GetInstance$Instance;
17 18 3 nsae Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
4 15 16 Class java.security.NoSuchAlgorithmException
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
type
params
provider
private static javax.security.auth.login.Configuration handleException(java.security.NoSuchAlgorithmException);
descriptor: (Ljava/security/NoSuchAlgorithmException;)Ljavax/security/auth/login/Configuration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.security.NoSuchAlgorithmException.getCause:()Ljava/lang/Throwable;
astore 1
start local 1 1: aload 1
instanceof java.lang.IllegalArgumentException
ifeq 3
2: aload 1
checkcast java.lang.IllegalArgumentException
athrow
3: StackMap locals: java.lang.Throwable
StackMap stack:
aload 0
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 nsae Ljava/security/NoSuchAlgorithmException;
1 4 1 cause Ljava/lang/Throwable;
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
nsae
public java.security.Provider getProvider();
descriptor: ()Ljava/security/Provider;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/security/auth/login/Configuration;
public java.lang.String getType();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/security/auth/login/Configuration;
public javax.security.auth.login.Configuration$Parameters getParameters();
descriptor: ()Ljavax/security/auth/login/Configuration$Parameters;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/security/auth/login/Configuration;
public abstract javax.security.auth.login.AppConfigurationEntry[] getAppConfigurationEntry(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljavax/security/auth/login/AppConfigurationEntry;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
name
public void refresh();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/security/auth/login/Configuration;
}
SourceFile: "Configuration.java"
NestMembers:
javax.security.auth.login.Configuration$1 javax.security.auth.login.Configuration$2 javax.security.auth.login.Configuration$3 javax.security.auth.login.Configuration$ConfigDelegate javax.security.auth.login.Configuration$Parameters
InnerClasses:
javax.security.auth.login.Configuration$1
javax.security.auth.login.Configuration$2
javax.security.auth.login.Configuration$3
private ConfigDelegate = javax.security.auth.login.Configuration$ConfigDelegate of javax.security.auth.login.Configuration
public abstract Parameters = javax.security.auth.login.Configuration$Parameters of javax.security.auth.login.Configuration
public final Instance = sun.security.jca.GetInstance$Instance of sun.security.jca.GetInstance