public class javax.security.sasl.Sasl
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: javax.security.sasl.Sasl
super_class: java.lang.Object
{
private static java.util.List<java.lang.String> disabledMechanisms;
descriptor: Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final java.lang.String SASL_LOGGER_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl"
private static final java.util.logging.Logger logger;
descriptor: Ljava/util/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.String QOP;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.qop"
public static final java.lang.String STRENGTH;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.strength"
public static final java.lang.String SERVER_AUTH;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.server.authentication"
public static final java.lang.String BOUND_SERVER_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.bound.server.name"
public static final java.lang.String MAX_BUFFER;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.maxbuffer"
public static final java.lang.String RAW_SEND_SIZE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.rawsendsize"
public static final java.lang.String REUSE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.reuse"
public static final java.lang.String POLICY_NOPLAINTEXT;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.noplaintext"
public static final java.lang.String POLICY_NOACTIVE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.noactive"
public static final java.lang.String POLICY_NODICTIONARY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.nodictionary"
public static final java.lang.String POLICY_NOANONYMOUS;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.noanonymous"
public static final java.lang.String POLICY_FORWARD_SECRECY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.forward"
public static final java.lang.String POLICY_PASS_CREDENTIALS;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.policy.credentials"
public static final java.lang.String CREDENTIALS;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "javax.security.sasl.credentials"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=5, args_size=0
0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putstatic javax.security.sasl.Sasl.disabledMechanisms:Ljava/util/List;
1: invokedynamic run()Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
javax/security/sasl/Sasl.lambda$0()Ljava/lang/String; (6)
()Ljava/lang/String;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0
start local 0 3: aload 0
ifnull 10
4: aload 0
ldc "\\s*,\\s*"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 9
StackMap locals: java.lang.String top int int java.lang.String[]
StackMap stack:
5: aload 4
iload 2
aaload
astore 1
start local 1 6: aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifne 8
7: getstatic javax.security.sasl.Sasl.disabledMechanisms:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 1 8: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
iload 3
if_icmplt 5
end local 0 10: StackMap locals:
StackMap stack:
ldc "javax.security.sasl"
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
putstatic javax.security.sasl.Sasl.logger:Ljava/util/logging/Logger;
11: return
LocalVariableTable:
Start End Slot Name Signature
3 10 0 prop Ljava/lang/String;
6 8 1 s Ljava/lang/String;
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavax/security/sasl/Sasl;
public static javax.security.sasl.SaslClient createSaslClient(java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.util.Map<java.lang.String, ?>, javax.security.auth.callback.CallbackHandler);
descriptor: ([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslClient;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=17, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 6
start local 6 1: iconst_0
istore 10
start local 10 2: goto 34
3: StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top top int
StackMap stack:
aload 0
iload 10
aaload
dup
astore 9
start local 9 4: ifnonnull 8
5: new java.lang.NullPointerException
dup
6: ldc "Mechanism name cannot be null"
7: invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top java.lang.String int
StackMap stack:
aload 9
invokevirtual java.lang.String.length:()I
ifne 10
9: goto 33
10: StackMap locals:
StackMap stack:
aload 9
invokestatic javax.security.sasl.Sasl.isDisabled:(Ljava/lang/String;)Z
ifeq 15
11: getstatic javax.security.sasl.Sasl.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
12: new java.lang.StringBuilder
dup
ldc "Disabled "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " mechanism ignored"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
14: goto 33
15: StackMap locals:
StackMap stack:
ldc "SaslClientFactory"
astore 11
start local 11 16: new java.lang.StringBuilder
dup
aload 11
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 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.security.Security.getProviders:(Ljava/lang/String;)[Ljava/security/Provider;
astore 12
start local 12 17: aload 12
ifnull 33
18: aload 12
dup
astore 16
arraylength
istore 15
iconst_0
istore 14
goto 32
StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top java.lang.String int java.lang.String java.security.Provider[] top int int java.security.Provider[]
StackMap stack:
19: aload 16
iload 14
aaload
astore 13
start local 13 20: aload 13
aload 11
aload 9
invokevirtual java.security.Provider.getService:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service;
astore 8
start local 8 21: aload 8
ifnonnull 23
22: goto 31
23: StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top java.security.Provider$Service java.lang.String int java.lang.String java.security.Provider[] java.security.Provider int int java.security.Provider[]
StackMap stack:
aload 8
invokestatic javax.security.sasl.Sasl.loadFactory:(Ljava/security/Provider$Service;)Ljava/lang/Object;
checkcast javax.security.sasl.SaslClientFactory
astore 7
start local 7 24: aload 7
ifnull 31
25: aload 7
26: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 0
iload 10
aaload
aastore
aload 1
27: aload 2
aload 3
aload 4
aload 5
28: invokeinterface javax.security.sasl.SaslClientFactory.createSaslClient:([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslClient;
astore 6
29: aload 6
ifnull 31
30: aload 6
areturn
end local 13 end local 8 end local 7 31: StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top java.lang.String int java.lang.String java.security.Provider[] top int int java.security.Provider[]
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
32: iload 14
iload 15
if_icmplt 19
end local 12 end local 11 33: StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top java.lang.String int
StackMap stack:
iinc 10 1
end local 9 StackMap locals: java.lang.String[] java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslClient top top top int
StackMap stack:
34: iload 10
aload 0
arraylength
if_icmplt 3
end local 10 35: aconst_null
areturn
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 36 0 mechanisms [Ljava/lang/String;
0 36 1 authorizationId Ljava/lang/String;
0 36 2 protocol Ljava/lang/String;
0 36 3 serverName Ljava/lang/String;
0 36 4 props Ljava/util/Map<Ljava/lang/String;*>;
0 36 5 cbh Ljavax/security/auth/callback/CallbackHandler;
1 36 6 mech Ljavax/security/sasl/SaslClient;
24 31 7 fac Ljavax/security/sasl/SaslClientFactory;
21 31 8 service Ljava/security/Provider$Service;
4 34 9 mechName Ljava/lang/String;
2 35 10 i I
16 33 11 type Ljava/lang/String;
17 33 12 provs [Ljava/security/Provider;
20 31 13 p Ljava/security/Provider;
Exceptions:
throws javax.security.sasl.SaslException
Signature: ([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;*>;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslClient;
MethodParameters:
Name Flags
mechanisms
authorizationId
protocol
serverName
props
cbh
private static java.lang.Object loadFactory(java.security.Provider$Service);
descriptor: (Ljava/security/Provider$Service;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
aconst_null
invokevirtual java.security.Provider$Service.newInstance:(Ljava/lang/Object;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 3: new javax.security.sasl.SaslException
dup
new java.lang.StringBuilder
dup
ldc "Cannot instantiate service "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial javax.security.sasl.SaslException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 service Ljava/security/Provider$Service;
3 4 1 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.security.InvalidParameterException
0 1 2 Class java.security.NoSuchAlgorithmException
Exceptions:
throws javax.security.sasl.SaslException
MethodParameters:
Name Flags
service
public static javax.security.sasl.SaslServer createSaslServer(java.lang.String, java.lang.String, java.lang.String, java.util.Map<java.lang.String, ?>, javax.security.auth.callback.CallbackHandler);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslServer;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aconst_null
astore 5
start local 5 1: aload 0
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "Mechanism name cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: javax.security.sasl.SaslServer
StackMap stack:
aload 0
invokevirtual java.lang.String.length:()I
ifne 5
4: aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 0
invokestatic javax.security.sasl.Sasl.isDisabled:(Ljava/lang/String;)Z
ifeq 10
6: getstatic javax.security.sasl.Sasl.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
7: new java.lang.StringBuilder
dup
ldc "Disabled "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " mechanism ignored"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
9: aconst_null
areturn
10: StackMap locals:
StackMap stack:
ldc "SaslServerFactory"
astore 8
start local 8 11: new java.lang.StringBuilder
dup
aload 8
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
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.security.Security.getProviders:(Ljava/lang/String;)[Ljava/security/Provider;
astore 9
start local 9 12: aload 9
ifnull 29
13: aload 9
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 28
StackMap locals: java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslServer top top java.lang.String java.security.Provider[] top int int java.security.Provider[]
StackMap stack:
14: aload 13
iload 11
aaload
astore 10
start local 10 15: aload 10
aload 8
aload 0
invokevirtual java.security.Provider.getService:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service;
astore 7
start local 7 16: aload 7
ifnonnull 20
17: new javax.security.sasl.SaslException
dup
new java.lang.StringBuilder
dup
ldc "Provider does not support "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
18: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokespecial javax.security.sasl.SaslException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals: java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslServer top java.security.Provider$Service java.lang.String java.security.Provider[] java.security.Provider int int java.security.Provider[]
StackMap stack:
aload 7
invokestatic javax.security.sasl.Sasl.loadFactory:(Ljava/security/Provider$Service;)Ljava/lang/Object;
checkcast javax.security.sasl.SaslServerFactory
astore 6
start local 6 21: aload 6
ifnull 27
22: aload 6
23: aload 0
aload 1
aload 2
aload 3
aload 4
24: invokeinterface javax.security.sasl.SaslServerFactory.createSaslServer:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslServer;
astore 5
25: aload 5
ifnull 27
26: aload 5
areturn
end local 10 end local 7 end local 6 27: StackMap locals: java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslServer top top java.lang.String java.security.Provider[] top int int java.security.Provider[]
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
28: iload 11
iload 12
if_icmplt 14
29: StackMap locals: java.lang.String java.lang.String java.lang.String java.util.Map javax.security.auth.callback.CallbackHandler javax.security.sasl.SaslServer top top java.lang.String java.security.Provider[]
StackMap stack:
aconst_null
areturn
end local 9 end local 8 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 30 0 mechanism Ljava/lang/String;
0 30 1 protocol Ljava/lang/String;
0 30 2 serverName Ljava/lang/String;
0 30 3 props Ljava/util/Map<Ljava/lang/String;*>;
0 30 4 cbh Ljavax/security/auth/callback/CallbackHandler;
1 30 5 mech Ljavax/security/sasl/SaslServer;
21 27 6 fac Ljavax/security/sasl/SaslServerFactory;
16 27 7 service Ljava/security/Provider$Service;
11 30 8 type Ljava/lang/String;
12 30 9 provs [Ljava/security/Provider;
15 27 10 p Ljava/security/Provider;
Exceptions:
throws javax.security.sasl.SaslException
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;*>;Ljavax/security/auth/callback/CallbackHandler;)Ljavax/security/sasl/SaslServer;
MethodParameters:
Name Flags
mechanism
protocol
serverName
props
cbh
public static java.util.Enumeration<javax.security.sasl.SaslClientFactory> getSaslClientFactories();
descriptor: ()Ljava/util/Enumeration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: ldc "SaslClientFactory"
invokestatic javax.security.sasl.Sasl.getFactories:(Ljava/lang/String;)Ljava/util/Set;
astore 0
start local 0 1: aload 0
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: new javax.security.sasl.Sasl$1
dup
aload 1
invokespecial javax.security.sasl.Sasl$1.<init>:(Ljava/util/Iterator;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 3 0 facs Ljava/util/Set<Ljava/lang/Object;>;
2 3 1 iter Ljava/util/Iterator<Ljava/lang/Object;>;
Signature: ()Ljava/util/Enumeration<Ljavax/security/sasl/SaslClientFactory;>;
public static java.util.Enumeration<javax.security.sasl.SaslServerFactory> getSaslServerFactories();
descriptor: ()Ljava/util/Enumeration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: ldc "SaslServerFactory"
invokestatic javax.security.sasl.Sasl.getFactories:(Ljava/lang/String;)Ljava/util/Set;
astore 0
start local 0 1: aload 0
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: new javax.security.sasl.Sasl$2
dup
aload 1
invokespecial javax.security.sasl.Sasl$2.<init>:(Ljava/util/Iterator;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 3 0 facs Ljava/util/Set<Ljava/lang/Object;>;
2 3 1 iter Ljava/util/Iterator<Ljava/lang/Object;>;
Signature: ()Ljava/util/Enumeration<Ljavax/security/sasl/SaslServerFactory;>;
private static java.util.Set<java.lang.Object> getFactories(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=10, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 0
ifnull 3
aload 0
invokevirtual java.lang.String.length:()I
ifeq 3
2: aload 0
ldc "."
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 4
3: StackMap locals: java.util.HashSet
StackMap stack:
aload 1
areturn
4: StackMap locals:
StackMap stack:
invokestatic java.security.Security.getProviders:()[Ljava/security/Provider;
astore 2
start local 2 5: aload 2
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 18
StackMap locals: java.lang.String java.util.HashSet java.security.Provider[] top top int int java.security.Provider[]
StackMap stack:
6: aload 7
iload 5
aaload
astore 4
start local 4 7: aload 4
invokevirtual java.security.Provider.getServices:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
start local 8 8: goto 16
9: StackMap locals: java.lang.String java.util.HashSet java.security.Provider[] top java.security.Provider int int java.security.Provider[] java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.Provider$Service
astore 9
start local 9 10: aload 9
invokevirtual java.security.Provider$Service.getType:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
11: aload 9
invokestatic javax.security.sasl.Sasl.loadFactory:(Ljava/security/Provider$Service;)Ljava/lang/Object;
astore 3
start local 3 12: aload 3
ifnull 16
13: aload 1
aload 3
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
14: goto 16
end local 3 StackMap locals: java.lang.String java.util.HashSet java.security.Provider[] top java.security.Provider int int java.security.Provider[] java.util.Iterator java.security.Provider$Service
StackMap stack: java.lang.Exception
15: pop
end local 9 16: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
end local 8 end local 4 17: iinc 5 1
StackMap locals: java.lang.String java.util.HashSet java.security.Provider[] top top int int java.security.Provider[]
StackMap stack:
18: iload 5
iload 6
if_icmplt 6
19: aload 1
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 serviceName Ljava/lang/String;
1 20 1 result Ljava/util/HashSet<Ljava/lang/Object;>;
5 20 2 provs [Ljava/security/Provider;
12 15 3 fac Ljava/lang/Object;
7 17 4 p Ljava/security/Provider;
8 17 8 iter Ljava/util/Iterator<Ljava/security/Provider$Service;>;
10 16 9 s Ljava/security/Provider$Service;
Exception table:
from to target type
11 14 15 Class java.lang.Exception
Signature: (Ljava/lang/String;)Ljava/util/Set<Ljava/lang/Object;>;
MethodParameters:
Name Flags
serviceName
private static boolean isDisabled(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic javax.security.sasl.Sasl.disabledMechanisms:Ljava/util/List;
aload 0
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
private static java.lang.String lambda$0();
descriptor: ()Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: ldc "jdk.sasl.disabledMechanisms"
invokestatic java.security.Security.getProperty:(Ljava/lang/String;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Sasl.java"
NestMembers:
javax.security.sasl.Sasl$1 javax.security.sasl.Sasl$2
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Service = java.security.Provider$Service of java.security.Provider
javax.security.sasl.Sasl$1
javax.security.sasl.Sasl$2