public class com.sun.jndi.dns.DnsContext extends com.sun.jndi.toolkit.ctx.ComponentDirContext
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.jndi.dns.DnsContext
super_class: com.sun.jndi.toolkit.ctx.ComponentDirContext
{
com.sun.jndi.dns.DnsName domain;
descriptor: Lcom/sun/jndi/dns/DnsName;
flags: (0x0000)
java.util.Hashtable<java.lang.Object, java.lang.Object> environment;
descriptor: Ljava/util/Hashtable;
flags: (0x0000)
Signature: Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
private boolean envShared;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean parentIsDns;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String[] servers;
descriptor: [Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private com.sun.jndi.dns.Resolver resolver;
descriptor: Lcom/sun/jndi/dns/Resolver;
flags: (0x0002) ACC_PRIVATE
private boolean authoritative;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean recursion;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int timeout;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int retries;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static final javax.naming.NameParser nameParser;
descriptor: Ljavax/naming/NameParser;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private static final int DEFAULT_INIT_TIMEOUT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private static final int DEFAULT_RETRIES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String INIT_TIMEOUT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.sun.jndi.dns.timeout.initial"
private static final java.lang.String RETRIES;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.sun.jndi.dns.timeout.retries"
private com.sun.jndi.dns.CT lookupCT;
descriptor: Lcom/sun/jndi/dns/CT;
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String LOOKUP_ATTR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.sun.jndi.dns.lookup.attr"
private static final java.lang.String RECURSION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.sun.jndi.dns.recursion"
private static final int ANY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 255
private static final com.sun.jndi.dns.ZoneNode zoneTree;
descriptor: Lcom/sun/jndi/dns/ZoneNode;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean debug;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new com.sun.jndi.dns.DnsNameParser
dup
invokespecial com.sun.jndi.dns.DnsNameParser.<init>:()V
putstatic com.sun.jndi.dns.DnsContext.nameParser:Ljavax/naming/NameParser;
1: new com.sun.jndi.dns.ZoneNode
dup
aconst_null
invokespecial com.sun.jndi.dns.ZoneNode.<init>:(Ljava/lang/String;)V
putstatic com.sun.jndi.dns.DnsContext.zoneTree:Lcom/sun/jndi/dns/ZoneNode;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.lang.String, java.lang.String[], java.util.Hashtable<?, ?>);
descriptor: (Ljava/lang/String;[Ljava/lang/String;Ljava/util/Hashtable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial com.sun.jndi.toolkit.ctx.ComponentDirContext.<init>:()V
1: aload 0
2: new com.sun.jndi.dns.DnsName
dup
aload 1
ldc "."
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 4
3: aload 1
goto 5
4: StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String java.lang.String[] java.util.Hashtable
StackMap stack: com.sun.jndi.dns.DnsContext new 2 new 2
new java.lang.StringBuilder
dup
aload 1
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;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String java.lang.String[] java.util.Hashtable
StackMap stack: com.sun.jndi.dns.DnsContext new 2 new 2 java.lang.String
5: invokespecial com.sun.jndi.dns.DnsName.<init>:(Ljava/lang/String;)V
6: putfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
7: aload 0
aload 2
ifnonnull 8
aconst_null
goto 9
StackMap locals:
StackMap stack: com.sun.jndi.dns.DnsContext
8: aload 2
invokevirtual java.lang.String[].clone:()Ljava/lang/Object;
checkcast java.lang.String[]
StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String java.lang.String[] java.util.Hashtable
StackMap stack: com.sun.jndi.dns.DnsContext java.lang.String[]
9: putfield com.sun.jndi.dns.DnsContext.servers:[Ljava/lang/String;
10: aload 0
aload 3
invokevirtual java.util.Hashtable.clone:()Ljava/lang/Object;
checkcast java.util.Hashtable
putfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
11: aload 0
iconst_0
putfield com.sun.jndi.dns.DnsContext.envShared:Z
12: aload 0
iconst_0
putfield com.sun.jndi.dns.DnsContext.parentIsDns:Z
13: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
14: aload 0
invokevirtual com.sun.jndi.dns.DnsContext.initFromEnvironment:()V
15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/jndi/dns/DnsContext;
0 16 1 domain Ljava/lang/String;
0 16 2 servers [Ljava/lang/String;
0 16 3 environment Ljava/util/Hashtable<**>;
Exceptions:
throws javax.naming.NamingException
Signature: (Ljava/lang/String;[Ljava/lang/String;Ljava/util/Hashtable<**>;)V
MethodParameters:
Name Flags
domain
servers
environment
void <init>(com.sun.jndi.dns.DnsContext, com.sun.jndi.dns.DnsName);
descriptor: (Lcom/sun/jndi/dns/DnsContext;Lcom/sun/jndi/dns/DnsName;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;)V
1: aload 0
aload 2
putfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
2: aload 0
iconst_1
putfield com.sun.jndi.dns.DnsContext.parentIsDns:Z
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 ctx Lcom/sun/jndi/dns/DnsContext;
0 4 2 domain Lcom/sun/jndi/dns/DnsName;
MethodParameters:
Name Flags
ctx
domain
private void <init>(com.sun.jndi.dns.DnsContext);
descriptor: (Lcom/sun/jndi/dns/DnsContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.sun.jndi.toolkit.ctx.ComponentDirContext.<init>:()V
1: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
putfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
2: aload 0
aload 1
iconst_1
dup_x1
putfield com.sun.jndi.dns.DnsContext.envShared:Z
putfield com.sun.jndi.dns.DnsContext.envShared:Z
3: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.parentIsDns:Z
putfield com.sun.jndi.dns.DnsContext.parentIsDns:Z
4: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
putfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
5: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.servers:[Ljava/lang/String;
putfield com.sun.jndi.dns.DnsContext.servers:[Ljava/lang/String;
6: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
7: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.authoritative:Z
putfield com.sun.jndi.dns.DnsContext.authoritative:Z
8: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.recursion:Z
putfield com.sun.jndi.dns.DnsContext.recursion:Z
9: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.timeout:I
putfield com.sun.jndi.dns.DnsContext.timeout:I
10: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.retries:I
putfield com.sun.jndi.dns.DnsContext.retries:I
11: aload 0
aload 1
getfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
putfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/jndi/dns/DnsContext;
0 13 1 ctx Lcom/sun/jndi/dns/DnsContext;
MethodParameters:
Name Flags
ctx
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
ifnull 3
1: aload 0
getfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
invokevirtual com.sun.jndi.dns.Resolver.close:()V
2: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
protected java.util.Hashtable<?, ?> p_getEnvironment();
descriptor: ()Ljava/util/Hashtable;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
Signature: ()Ljava/util/Hashtable<**>;
public java.util.Hashtable<?, ?> getEnvironment();
descriptor: ()Ljava/util/Hashtable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
invokevirtual java.util.Hashtable.clone:()Ljava/lang/Object;
checkcast java.util.Hashtable
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
Exceptions:
throws javax.naming.NamingException
Signature: ()Ljava/util/Hashtable<**>;
public java.lang.Object addToEnvironment(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "com.sun.jndi.dns.lookup.attr"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: aload 0
aload 0
aload 2
checkcast java.lang.String
invokevirtual com.sun.jndi.dns.DnsContext.getLookupCT:(Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
putfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
2: goto 20
StackMap locals:
StackMap stack:
3: aload 1
ldc "java.naming.authoritative"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
4: aload 0
ldc "true"
aload 2
checkcast java.lang.String
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
putfield com.sun.jndi.dns.DnsContext.authoritative:Z
5: goto 20
StackMap locals:
StackMap stack:
6: aload 1
ldc "com.sun.jndi.dns.recursion"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
7: aload 0
ldc "true"
aload 2
checkcast java.lang.String
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
putfield com.sun.jndi.dns.DnsContext.recursion:Z
8: goto 20
StackMap locals:
StackMap stack:
9: aload 1
ldc "com.sun.jndi.dns.timeout.initial"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 15
10: aload 2
checkcast java.lang.String
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 3
start local 3 11: aload 0
getfield com.sun.jndi.dns.DnsContext.timeout:I
iload 3
if_icmpeq 20
12: aload 0
iload 3
putfield com.sun.jndi.dns.DnsContext.timeout:I
13: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
end local 3 14: goto 20
StackMap locals:
StackMap stack:
15: aload 1
ldc "com.sun.jndi.dns.timeout.retries"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
16: aload 2
checkcast java.lang.String
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 3
start local 3 17: aload 0
getfield com.sun.jndi.dns.DnsContext.retries:I
iload 3
if_icmpeq 20
18: aload 0
iload 3
putfield com.sun.jndi.dns.DnsContext.retries:I
19: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
end local 3 20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jndi.dns.DnsContext.envShared:Z
ifne 22
21: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
aload 2
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
aload 2
if_acmpeq 26
23: aload 0
aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
invokevirtual java.util.Hashtable.clone:()Ljava/lang/Object;
checkcast java.util.Hashtable
putfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
24: aload 0
iconst_0
putfield com.sun.jndi.dns.DnsContext.envShared:Z
25: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
aload 2
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
26: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/jndi/dns/DnsContext;
0 27 1 propName Ljava/lang/String;
0 27 2 propVal Ljava/lang/Object;
11 14 3 val I
17 20 3 val I
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
propName
propVal
public java.lang.Object removeFromEnvironment(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "com.sun.jndi.dns.lookup.attr"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: aload 0
aload 0
aconst_null
invokevirtual com.sun.jndi.dns.DnsContext.getLookupCT:(Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
putfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
2: goto 18
StackMap locals:
StackMap stack:
3: aload 1
ldc "java.naming.authoritative"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
4: aload 0
iconst_0
putfield com.sun.jndi.dns.DnsContext.authoritative:Z
5: goto 18
StackMap locals:
StackMap stack:
6: aload 1
ldc "com.sun.jndi.dns.recursion"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
7: aload 0
iconst_1
putfield com.sun.jndi.dns.DnsContext.recursion:Z
8: goto 18
StackMap locals:
StackMap stack:
9: aload 1
ldc "com.sun.jndi.dns.timeout.initial"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
10: aload 0
getfield com.sun.jndi.dns.DnsContext.timeout:I
sipush 1000
if_icmpeq 18
11: aload 0
sipush 1000
putfield com.sun.jndi.dns.DnsContext.timeout:I
12: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
13: goto 18
StackMap locals:
StackMap stack:
14: aload 1
ldc "com.sun.jndi.dns.timeout.retries"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
15: aload 0
getfield com.sun.jndi.dns.DnsContext.retries:I
iconst_4
if_icmpeq 18
16: aload 0
iconst_4
putfield com.sun.jndi.dns.DnsContext.retries:I
17: aload 0
aconst_null
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jndi.dns.DnsContext.envShared:Z
ifne 20
19: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 24
21: aload 0
aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
invokevirtual java.util.Hashtable.clone:()Ljava/lang/Object;
checkcast java.util.Hashtable
putfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
22: aload 0
iconst_0
putfield com.sun.jndi.dns.DnsContext.envShared:Z
23: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 1
invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
24: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/jndi/dns/DnsContext;
0 25 1 propName Ljava/lang/String;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
propName
void setProviderUrl(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "java.naming.provider.url"
aload 1
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/jndi/dns/DnsContext;
0 2 1 url Ljava/lang/String;
MethodParameters:
Name Flags
url
private void initFromEnvironment();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
aload 0
aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "com.sun.jndi.dns.lookup.attr"
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual com.sun.jndi.dns.DnsContext.getLookupCT:(Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
putfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
1: aload 0
ldc "true"
2: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "java.naming.authoritative"
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
3: invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
putfield com.sun.jndi.dns.DnsContext.authoritative:Z
4: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "com.sun.jndi.dns.recursion"
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 5: aload 0
aload 1
ifnull 7
6: ldc "true"
aload 1
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 7
iconst_0
goto 8
StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String
StackMap stack: com.sun.jndi.dns.DnsContext
7: iconst_1
8: StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String
StackMap stack: com.sun.jndi.dns.DnsContext int
putfield com.sun.jndi.dns.DnsContext.recursion:Z
9: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "com.sun.jndi.dns.timeout.initial"
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
10: aload 0
aload 1
ifnonnull 12
11: sipush 1000
goto 13
12: StackMap locals:
StackMap stack: com.sun.jndi.dns.DnsContext
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
13: StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String
StackMap stack: com.sun.jndi.dns.DnsContext int
putfield com.sun.jndi.dns.DnsContext.timeout:I
14: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
ldc "com.sun.jndi.dns.timeout.retries"
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
15: aload 0
aload 1
ifnonnull 17
16: iconst_4
goto 18
17: StackMap locals:
StackMap stack: com.sun.jndi.dns.DnsContext
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
18: StackMap locals: com.sun.jndi.dns.DnsContext java.lang.String
StackMap stack: com.sun.jndi.dns.DnsContext int
putfield com.sun.jndi.dns.DnsContext.retries:I
19: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lcom/sun/jndi/dns/DnsContext;
5 20 1 val Ljava/lang/String;
Exceptions:
throws javax.naming.directory.InvalidAttributeIdentifierException
private com.sun.jndi.dns.CT getLookupCT(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new com.sun.jndi.dns.CT
dup
iconst_1
bipush 16
invokespecial com.sun.jndi.dns.CT.<init>:(II)V
goto 3
2: StackMap locals:
StackMap stack:
aload 1
invokestatic com.sun.jndi.dns.DnsContext.fromAttrId:(Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
3: StackMap locals:
StackMap stack: com.sun.jndi.dns.CT
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 attrId Ljava/lang/String;
Exceptions:
throws javax.naming.directory.InvalidAttributeIdentifierException
MethodParameters:
Name Flags
attrId
public java.lang.Object c_lookup(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setSuccess:()V
1: aload 1
invokeinterface javax.naming.Name.isEmpty:()Z
ifeq 5
2: new com.sun.jndi.dns.DnsContext
dup
aload 0
invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;)V
astore 3
start local 3 3: aload 3
new com.sun.jndi.dns.Resolver
dup
aload 0
getfield com.sun.jndi.dns.DnsContext.servers:[Ljava/lang/String;
aload 0
getfield com.sun.jndi.dns.DnsContext.timeout:I
aload 0
getfield com.sun.jndi.dns.DnsContext.retries:I
invokespecial com.sun.jndi.dns.Resolver.<init>:([Ljava/lang/String;II)V
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
4: aload 3
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
astore 3
start local 3 6: aload 0
invokevirtual com.sun.jndi.dns.DnsContext.getResolver:()Lcom/sun/jndi/dns/Resolver;
aload 3
aload 0
getfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
getfield com.sun.jndi.dns.CT.rrclass:I
aload 0
getfield com.sun.jndi.dns.DnsContext.lookupCT:Lcom/sun/jndi/dns/CT;
getfield com.sun.jndi.dns.CT.rrtype:I
7: aload 0
getfield com.sun.jndi.dns.DnsContext.recursion:Z
aload 0
getfield com.sun.jndi.dns.DnsContext.authoritative:Z
8: invokevirtual com.sun.jndi.dns.Resolver.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
9: astore 4
start local 4 10: aload 4
aconst_null
invokestatic com.sun.jndi.dns.DnsContext.rrsToAttrs:(Lcom/sun/jndi/dns/ResourceRecords;[Lcom/sun/jndi/dns/CT;)Ljavax/naming/directory/Attributes;
astore 5
start local 5 11: new com.sun.jndi.dns.DnsContext
dup
aload 0
aload 3
invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;Lcom/sun/jndi/dns/DnsName;)V
astore 6
start local 6 12: aload 6
aload 1
aload 0
13: aload 0
getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
aload 5
14: invokestatic javax.naming.spi.DirectoryManager.getObjectInstance:(Ljava/lang/Object;Ljavax/naming/Name;Ljavax/naming/Context;Ljava/util/Hashtable;Ljavax/naming/directory/Attributes;)Ljava/lang/Object;
15: areturn
end local 6 end local 5 end local 4 end local 3 16: StackMap locals:
StackMap stack: javax.naming.NamingException
astore 3
start local 3 17: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
18: aload 2
aload 3
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 19: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 20: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
21: new javax.naming.NamingException
dup
22: ldc "Problem generating object using object factory"
23: invokespecial javax.naming.NamingException.<init>:(Ljava/lang/String;)V
astore 4
start local 4 24: aload 4
aload 3
invokevirtual javax.naming.NamingException.setRootCause:(Ljava/lang/Throwable;)V
25: aload 2
aload 4
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/sun/jndi/dns/DnsContext;
0 26 1 name Ljavax/naming/Name;
0 26 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
3 5 3 ctx Lcom/sun/jndi/dns/DnsContext;
6 16 3 fqdn Lcom/sun/jndi/dns/DnsName;
10 16 4 rrs Lcom/sun/jndi/dns/ResourceRecords;
11 16 5 attrs Ljavax/naming/directory/Attributes;
12 16 6 ctx Lcom/sun/jndi/dns/DnsContext;
17 19 3 e Ljavax/naming/NamingException;
20 26 3 e Ljava/lang/Exception;
24 26 4 ne Ljavax/naming/NamingException;
Exception table:
from to target type
5 15 16 Class javax.naming.NamingException
5 15 19 Class java.lang.Exception
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public java.lang.Object c_lookupLink(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual com.sun.jndi.dns.DnsContext.c_lookup:(Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
0 1 1 name Ljavax/naming/Name;
0 1 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public javax.naming.NamingEnumeration<javax.naming.NameClassPair> c_list(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setSuccess:()V
1: aload 0
aload 1
invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
astore 3
start local 3 2: aload 0
aload 3
invokevirtual com.sun.jndi.dns.DnsContext.getNameNode:(Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
astore 4
start local 4 3: new com.sun.jndi.dns.DnsContext
dup
aload 0
aload 3
invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;Lcom/sun/jndi/dns/DnsName;)V
astore 5
start local 5 4: new com.sun.jndi.dns.NameClassPairEnumeration
dup
aload 5
aload 4
invokevirtual com.sun.jndi.dns.NameNode.getChildren:()Ljava/util/Hashtable;
invokespecial com.sun.jndi.dns.NameClassPairEnumeration.<init>:(Lcom/sun/jndi/dns/DnsContext;Ljava/util/Hashtable;)V
5: areturn
end local 5 end local 4 end local 3 6: StackMap locals:
StackMap stack: javax.naming.NamingException
astore 3
start local 3 7: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
8: aload 2
aload 3
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/jndi/dns/DnsContext;
0 9 1 name Ljavax/naming/Name;
0 9 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
2 6 3 fqdn Lcom/sun/jndi/dns/DnsName;
3 6 4 nnode Lcom/sun/jndi/dns/NameNode;
4 6 5 ctx Lcom/sun/jndi/dns/DnsContext;
7 9 3 e Ljavax/naming/NamingException;
Exception table:
from to target type
1 5 6 Class javax.naming.NamingException
Exceptions:
throws javax.naming.NamingException
Signature: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration<Ljavax/naming/NameClassPair;>;
MethodParameters:
Name Flags
name
cont
public javax.naming.NamingEnumeration<javax.naming.Binding> c_listBindings(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setSuccess:()V
1: aload 0
aload 1
invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
astore 3
start local 3 2: aload 0
aload 3
invokevirtual com.sun.jndi.dns.DnsContext.getNameNode:(Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
astore 4
start local 4 3: new com.sun.jndi.dns.DnsContext
dup
aload 0
aload 3
invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;Lcom/sun/jndi/dns/DnsName;)V
astore 5
start local 5 4: new com.sun.jndi.dns.BindingEnumeration
dup
aload 5
aload 4
invokevirtual com.sun.jndi.dns.NameNode.getChildren:()Ljava/util/Hashtable;
invokespecial com.sun.jndi.dns.BindingEnumeration.<init>:(Lcom/sun/jndi/dns/DnsContext;Ljava/util/Hashtable;)V
5: areturn
end local 5 end local 4 end local 3 6: StackMap locals:
StackMap stack: javax.naming.NamingException
astore 3
start local 3 7: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
8: aload 2
aload 3
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/jndi/dns/DnsContext;
0 9 1 name Ljavax/naming/Name;
0 9 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
2 6 3 fqdn Lcom/sun/jndi/dns/DnsName;
3 6 4 nnode Lcom/sun/jndi/dns/NameNode;
4 6 5 ctx Lcom/sun/jndi/dns/DnsContext;
7 9 3 e Ljavax/naming/NamingException;
Exception table:
from to target type
1 5 6 Class javax.naming.NamingException
Exceptions:
throws javax.naming.NamingException
Signature: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration<Ljavax/naming/Binding;>;
MethodParameters:
Name Flags
name
cont
public void c_bind(javax.naming.Name, java.lang.Object, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/Object;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 3
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 obj Ljava/lang/Object;
0 4 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
obj
cont
public void c_rebind(javax.naming.Name, java.lang.Object, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/Object;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 3
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 obj Ljava/lang/Object;
0 4 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
obj
cont
public void c_unbind(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 2
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public void c_rename(javax.naming.Name, javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 3
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 oldname Ljavax/naming/Name;
0 4 2 newname Ljavax/naming/Name;
0 4 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
oldname
newname
cont
public javax.naming.Context c_createSubcontext(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/Context;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 2
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public void c_destroySubcontext(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 2
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public javax.naming.NameParser c_getNameParser(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NameParser;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setSuccess:()V
1: getstatic com.sun.jndi.dns.DnsContext.nameParser:Ljavax/naming/NameParser;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/jndi/dns/DnsContext;
0 2 1 name Ljavax/naming/Name;
0 2 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public void c_bind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/Object;Ljavax/naming/directory/Attributes;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 4
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 obj Ljava/lang/Object;
0 4 3 attrs Ljavax/naming/directory/Attributes;
0 4 4 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
obj
attrs
cont
public void c_rebind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/Object;Ljavax/naming/directory/Attributes;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 4
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 obj Ljava/lang/Object;
0 4 3 attrs Ljavax/naming/directory/Attributes;
0 4 4 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
obj
attrs
cont
public javax.naming.directory.DirContext c_createSubcontext(javax.naming.Name, javax.naming.directory.Attributes, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljavax/naming/directory/Attributes;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/directory/DirContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 3
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 attrs Ljavax/naming/directory/Attributes;
0 4 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
attrs
cont
public javax.naming.directory.Attributes c_getAttributes(javax.naming.Name, java.lang.String[], com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;[Ljava/lang/String;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/directory/Attributes;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setSuccess:()V
1: aload 0
aload 1
invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
astore 4
start local 4 2: aload 2
invokestatic com.sun.jndi.dns.DnsContext.attrIdsToClassesAndTypes:([Ljava/lang/String;)[Lcom/sun/jndi/dns/CT;
astore 5
start local 5 3: aload 5
invokestatic com.sun.jndi.dns.DnsContext.getClassAndTypeToQuery:([Lcom/sun/jndi/dns/CT;)Lcom/sun/jndi/dns/CT;
astore 6
start local 6 4: aload 0
invokevirtual com.sun.jndi.dns.DnsContext.getResolver:()Lcom/sun/jndi/dns/Resolver;
aload 4
aload 6
getfield com.sun.jndi.dns.CT.rrclass:I
aload 6
getfield com.sun.jndi.dns.CT.rrtype:I
5: aload 0
getfield com.sun.jndi.dns.DnsContext.recursion:Z
aload 0
getfield com.sun.jndi.dns.DnsContext.authoritative:Z
6: invokevirtual com.sun.jndi.dns.Resolver.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
7: astore 7
start local 7 8: aload 7
aload 5
invokestatic com.sun.jndi.dns.DnsContext.rrsToAttrs:(Lcom/sun/jndi/dns/ResourceRecords;[Lcom/sun/jndi/dns/CT;)Ljavax/naming/directory/Attributes;
9: areturn
end local 7 end local 6 end local 5 end local 4 10: StackMap locals:
StackMap stack: javax.naming.NamingException
astore 4
start local 4 11: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
12: aload 3
aload 4
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/jndi/dns/DnsContext;
0 13 1 name Ljavax/naming/Name;
0 13 2 attrIds [Ljava/lang/String;
0 13 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
2 10 4 fqdn Lcom/sun/jndi/dns/DnsName;
3 10 5 cts [Lcom/sun/jndi/dns/CT;
4 10 6 ct Lcom/sun/jndi/dns/CT;
8 10 7 rrs Lcom/sun/jndi/dns/ResourceRecords;
11 13 4 e Ljavax/naming/NamingException;
Exception table:
from to target type
1 9 10 Class javax.naming.NamingException
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
attrIds
cont
public void c_modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;ILjavax/naming/directory/Attributes;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 4
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 mod_op I
0 4 3 attrs Ljavax/naming/directory/Attributes;
0 4 4 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
mod_op
attrs
cont
public void c_modifyAttributes(javax.naming.Name, javax.naming.directory.ModificationItem[], com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;[Ljavax/naming/directory/ModificationItem;Lcom/sun/jndi/toolkit/ctx/Continuation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 3
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 mods [Ljavax/naming/directory/ModificationItem;
0 4 3 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
mods
cont
public javax.naming.NamingEnumeration<javax.naming.directory.SearchResult> c_search(javax.naming.Name, javax.naming.directory.Attributes, java.lang.String[], com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljavax/naming/directory/Attributes;[Ljava/lang/String;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
0 1 1 name Ljavax/naming/Name;
0 1 2 matchingAttributes Ljavax/naming/directory/Attributes;
0 1 3 attributesToReturn [Ljava/lang/String;
0 1 4 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
Signature: (Ljavax/naming/Name;Ljavax/naming/directory/Attributes;[Ljava/lang/String;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration<Ljavax/naming/directory/SearchResult;>;
MethodParameters:
Name Flags
name
matchingAttributes
attributesToReturn
cont
public javax.naming.NamingEnumeration<javax.naming.directory.SearchResult> c_search(javax.naming.Name, java.lang.String, javax.naming.directory.SearchControls, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/String;Ljavax/naming/directory/SearchControls;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
0 1 1 name Ljavax/naming/Name;
0 1 2 filter Ljava/lang/String;
0 1 3 cons Ljavax/naming/directory/SearchControls;
0 1 4 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
Signature: (Ljavax/naming/Name;Ljava/lang/String;Ljavax/naming/directory/SearchControls;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration<Ljavax/naming/directory/SearchResult;>;
MethodParameters:
Name Flags
name
filter
cons
cont
public javax.naming.NamingEnumeration<javax.naming.directory.SearchResult> c_search(javax.naming.Name, java.lang.String, [], javax.naming.directory.SearchControls, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Ljava/lang/String;[Ljava/lang/Object;Ljavax/naming/directory/SearchControls;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
athrow
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 1 0 this Lcom/sun/jndi/dns/DnsContext;
0 1 1 name Ljavax/naming/Name;
0 1 2 filterExpr Ljava/lang/String;
0 1 3 filterArgs [Ljava/lang/Object;
0 1 4 cons Ljavax/naming/directory/SearchControls;
0 1 5 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
Signature: (Ljavax/naming/Name;Ljava/lang/String;[Ljava/lang/Object;Ljavax/naming/directory/SearchControls;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/NamingEnumeration<Ljavax/naming/directory/SearchResult;>;
MethodParameters:
Name Flags
name
filterExpr
filterArgs
cons
cont
public javax.naming.directory.DirContext c_getSchema(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/directory/DirContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 2
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public javax.naming.directory.DirContext c_getSchemaClassDefinition(javax.naming.Name, com.sun.jndi.toolkit.ctx.Continuation);
descriptor: (Ljavax/naming/Name;Lcom/sun/jndi/toolkit/ctx/Continuation;)Ljavax/naming/directory/DirContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokevirtual com.sun.jndi.toolkit.ctx.Continuation.setError:(Ljava/lang/Object;Ljavax/naming/Name;)V
1: aload 2
2: new javax.naming.OperationNotSupportedException
dup
invokespecial javax.naming.OperationNotSupportedException.<init>:()V
3: invokevirtual com.sun.jndi.toolkit.ctx.Continuation.fillInException:(Ljavax/naming/NamingException;)Ljavax/naming/NamingException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/dns/DnsContext;
0 4 1 name Ljavax/naming/Name;
0 4 2 cont Lcom/sun/jndi/toolkit/ctx/Continuation;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
cont
public java.lang.String getNameInNamespace();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
invokevirtual com.sun.jndi.dns.DnsName.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jndi/dns/DnsContext;
public javax.naming.Name composeName(javax.naming.Name, javax.naming.Name);
descriptor: (Ljavax/naming/Name;Ljavax/naming/Name;)Ljavax/naming/Name;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
instanceof com.sun.jndi.dns.DnsName
ifne 2
aload 2
instanceof javax.naming.CompositeName
ifne 2
1: new com.sun.jndi.dns.DnsName
dup
invokespecial com.sun.jndi.dns.DnsName.<init>:()V
aload 2
invokevirtual com.sun.jndi.dns.DnsName.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
astore 2
2: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.jndi.dns.DnsName
ifne 4
aload 1
instanceof javax.naming.CompositeName
ifne 4
3: new com.sun.jndi.dns.DnsName
dup
invokespecial com.sun.jndi.dns.DnsName.<init>:()V
aload 1
invokevirtual com.sun.jndi.dns.DnsName.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
astore 1
4: StackMap locals:
StackMap stack:
aload 2
instanceof com.sun.jndi.dns.DnsName
ifeq 8
aload 1
instanceof com.sun.jndi.dns.DnsName
ifeq 8
5: aload 2
invokeinterface javax.naming.Name.clone:()Ljava/lang/Object;
checkcast com.sun.jndi.dns.DnsName
astore 3
start local 3 6: aload 3
aload 1
invokeinterface javax.naming.Name.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
pop
7: new javax.naming.CompositeName
dup
invokespecial javax.naming.CompositeName.<init>:()V
aload 3
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual javax.naming.CompositeName.add:(Ljava/lang/String;)Ljavax/naming/Name;
areturn
end local 3 8: StackMap locals:
StackMap stack:
aload 2
instanceof javax.naming.CompositeName
ifeq 10
9: aload 2
goto 11
10: StackMap locals:
StackMap stack:
new javax.naming.CompositeName
dup
invokespecial javax.naming.CompositeName.<init>:()V
aload 2
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual javax.naming.CompositeName.add:(Ljava/lang/String;)Ljavax/naming/Name;
11: StackMap locals:
StackMap stack: javax.naming.Name
astore 4
start local 4 12: aload 1
instanceof javax.naming.CompositeName
ifeq 14
13: aload 1
goto 15
14: StackMap locals: com.sun.jndi.dns.DnsContext javax.naming.Name javax.naming.Name top javax.naming.Name
StackMap stack:
new javax.naming.CompositeName
dup
invokespecial javax.naming.CompositeName.<init>:()V
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual javax.naming.CompositeName.add:(Ljava/lang/String;)Ljavax/naming/Name;
15: StackMap locals:
StackMap stack: javax.naming.Name
astore 5
start local 5 16: aload 4
invokeinterface javax.naming.Name.size:()I
iconst_1
isub
istore 6
start local 6 17: aload 5
invokeinterface javax.naming.Name.isEmpty:()Z
ifne 19
aload 5
iconst_0
invokeinterface javax.naming.Name.get:(I)Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifne 19
18: aload 4
invokeinterface javax.naming.Name.isEmpty:()Z
ifne 19
aload 4
iload 6
invokeinterface javax.naming.Name.get:(I)Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 20
19: StackMap locals: javax.naming.Name int
StackMap stack:
aload 0
aload 5
aload 4
invokespecial com.sun.jndi.toolkit.ctx.ComponentDirContext.composeName:(Ljavax/naming/Name;Ljavax/naming/Name;)Ljavax/naming/Name;
areturn
20: StackMap locals:
StackMap stack:
aload 2
aload 4
if_acmpne 22
21: aload 4
invokeinterface javax.naming.Name.clone:()Ljava/lang/Object;
checkcast javax.naming.CompositeName
goto 23
22: StackMap locals:
StackMap stack:
aload 4
23: StackMap locals:
StackMap stack: javax.naming.Name
astore 3
start local 3 24: aload 3
aload 5
invokeinterface javax.naming.Name.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
pop
25: aload 0
getfield com.sun.jndi.dns.DnsContext.parentIsDns:Z
ifeq 37
26: aload 2
instanceof com.sun.jndi.dns.DnsName
ifeq 28
27: aload 2
invokeinterface javax.naming.Name.clone:()Ljava/lang/Object;
checkcast com.sun.jndi.dns.DnsName
goto 29
28: StackMap locals: com.sun.jndi.dns.DnsContext javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name int
StackMap stack:
new com.sun.jndi.dns.DnsName
dup
aload 4
iload 6
invokeinterface javax.naming.Name.get:(I)Ljava/lang/String;
invokespecial com.sun.jndi.dns.DnsName.<init>:(Ljava/lang/String;)V
29: StackMap locals:
StackMap stack: com.sun.jndi.dns.DnsName
astore 7
start local 7 30: aload 7
aload 1
instanceof com.sun.jndi.dns.DnsName
ifeq 32
31: aload 1
goto 33
32: StackMap locals: com.sun.jndi.dns.DnsContext javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name int com.sun.jndi.dns.DnsName
StackMap stack: com.sun.jndi.dns.DnsName
new com.sun.jndi.dns.DnsName
dup
aload 5
iconst_0
invokeinterface javax.naming.Name.get:(I)Ljava/lang/String;
invokespecial com.sun.jndi.dns.DnsName.<init>:(Ljava/lang/String;)V
33: StackMap locals: com.sun.jndi.dns.DnsContext javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name javax.naming.Name int com.sun.jndi.dns.DnsName
StackMap stack: com.sun.jndi.dns.DnsName javax.naming.Name
invokevirtual com.sun.jndi.dns.DnsName.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
pop
34: aload 3
iload 6
iconst_1
iadd
invokeinterface javax.naming.Name.remove:(I)Ljava/lang/Object;
pop
35: aload 3
iload 6
invokeinterface javax.naming.Name.remove:(I)Ljava/lang/Object;
pop
36: aload 3
iload 6
aload 7
invokevirtual com.sun.jndi.dns.DnsName.toString:()Ljava/lang/String;
invokeinterface javax.naming.Name.add:(ILjava/lang/String;)Ljavax/naming/Name;
pop
end local 7 37: StackMap locals:
StackMap stack:
aload 3
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 38 0 this Lcom/sun/jndi/dns/DnsContext;
0 38 1 name Ljavax/naming/Name;
0 38 2 prefix Ljavax/naming/Name;
6 8 3 result Ljavax/naming/Name;
24 38 3 result Ljavax/naming/Name;
12 38 4 prefixC Ljavax/naming/Name;
16 38 5 nameC Ljavax/naming/Name;
17 38 6 prefixLast I
30 37 7 dnsComp Lcom/sun/jndi/dns/DnsName;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
prefix
private synchronized com.sun.jndi.dns.Resolver getResolver();
descriptor: ()Lcom/sun/jndi/dns/Resolver;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
ifnonnull 2
1: aload 0
new com.sun.jndi.dns.Resolver
dup
aload 0
getfield com.sun.jndi.dns.DnsContext.servers:[Ljava/lang/String;
aload 0
getfield com.sun.jndi.dns.DnsContext.timeout:I
aload 0
getfield com.sun.jndi.dns.DnsContext.retries:I
invokespecial com.sun.jndi.dns.Resolver.<init>:([Ljava/lang/String;II)V
putfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jndi.dns.DnsContext.resolver:Lcom/sun/jndi/dns/Resolver;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/jndi/dns/DnsContext;
Exceptions:
throws javax.naming.NamingException
com.sun.jndi.dns.DnsName fullyQualify(javax.naming.Name);
descriptor: (Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.naming.Name.isEmpty:()Z
ifeq 2
1: aload 0
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof javax.naming.CompositeName
ifeq 4
3: new com.sun.jndi.dns.DnsName
dup
aload 1
iconst_0
invokeinterface javax.naming.Name.get:(I)Ljava/lang/String;
invokespecial com.sun.jndi.dns.DnsName.<init>:(Ljava/lang/String;)V
goto 5
4: StackMap locals:
StackMap stack:
new com.sun.jndi.dns.DnsName
dup
invokespecial com.sun.jndi.dns.DnsName.<init>:()V
aload 1
invokevirtual com.sun.jndi.dns.DnsName.addAll:(Ljavax/naming/Name;)Ljavax/naming/Name;
checkcast com.sun.jndi.dns.DnsName
5: StackMap locals:
StackMap stack: com.sun.jndi.dns.DnsName
astore 2
start local 2 6: aload 2
invokevirtual com.sun.jndi.dns.DnsName.hasRootLabel:()Z
ifeq 12
7: aload 0
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
invokevirtual com.sun.jndi.dns.DnsName.size:()I
iconst_1
if_icmpne 9
8: aload 2
areturn
9: StackMap locals: com.sun.jndi.dns.DnsName
StackMap stack:
new javax.naming.InvalidNameException
dup
10: new java.lang.StringBuilder
dup
ldc "DNS name "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " not relative to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 2
iconst_0
aload 0
getfield com.sun.jndi.dns.DnsContext.domain:Lcom/sun/jndi/dns/DnsName;
invokevirtual com.sun.jndi.dns.DnsName.addAll:(ILjavax/naming/Name;)Ljavax/naming/Name;
checkcast com.sun.jndi.dns.DnsName
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/jndi/dns/DnsContext;
0 13 1 name Ljavax/naming/Name;
6 13 2 dnsName Lcom/sun/jndi/dns/DnsName;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
name
private static javax.naming.directory.Attributes rrsToAttrs(com.sun.jndi.dns.ResourceRecords, com.sun.jndi.dns.CT[]);
descriptor: (Lcom/sun/jndi/dns/ResourceRecords;[Lcom/sun/jndi/dns/CT;)Ljavax/naming/directory/Attributes;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=9, args_size=2
start local 0 start local 1 0: new javax.naming.directory.BasicAttributes
dup
iconst_1
invokespecial javax.naming.directory.BasicAttributes.<init>:(Z)V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 15
3: StackMap locals: javax.naming.directory.BasicAttributes int
StackMap stack:
aload 0
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.sun.jndi.dns.ResourceRecord
astore 4
start local 4 4: aload 4
invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
istore 5
start local 5 5: aload 4
invokevirtual com.sun.jndi.dns.ResourceRecord.getRrclass:()I
istore 6
start local 6 6: iload 6
iload 5
aload 1
invokestatic com.sun.jndi.dns.DnsContext.classAndTypeMatch:(II[Lcom/sun/jndi/dns/CT;)Z
ifne 8
7: goto 14
8: StackMap locals: com.sun.jndi.dns.ResourceRecord int int
StackMap stack:
iload 6
iload 5
invokestatic com.sun.jndi.dns.DnsContext.toAttrId:(II)Ljava/lang/String;
astore 7
start local 7 9: aload 2
aload 7
invokevirtual javax.naming.directory.BasicAttributes.get:(Ljava/lang/String;)Ljavax/naming/directory/Attribute;
astore 8
start local 8 10: aload 8
ifnonnull 13
11: new javax.naming.directory.BasicAttribute
dup
aload 7
invokespecial javax.naming.directory.BasicAttribute.<init>:(Ljava/lang/String;)V
astore 8
12: aload 2
aload 8
invokevirtual javax.naming.directory.BasicAttributes.put:(Ljavax/naming/directory/Attribute;)Ljavax/naming/directory/Attribute;
pop
13: StackMap locals: java.lang.String javax.naming.directory.Attribute
StackMap stack:
aload 8
aload 4
invokevirtual com.sun.jndi.dns.ResourceRecord.getRdata:()Ljava/lang/Object;
invokeinterface javax.naming.directory.Attribute.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 6 end local 5 end local 4 14: StackMap locals: com.sun.jndi.dns.ResourceRecords com.sun.jndi.dns.CT[] javax.naming.directory.BasicAttributes int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
aload 0
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 3
end local 3 16: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 rrs Lcom/sun/jndi/dns/ResourceRecords;
0 17 1 cts [Lcom/sun/jndi/dns/CT;
1 17 2 attrs Ljavax/naming/directory/BasicAttributes;
2 16 3 i I
4 14 4 rr Lcom/sun/jndi/dns/ResourceRecord;
5 14 5 rrtype I
6 14 6 rrclass I
9 14 7 attrId Ljava/lang/String;
10 14 8 attr Ljavax/naming/directory/Attribute;
MethodParameters:
Name Flags
rrs
cts
private static boolean classAndTypeMatch(int, int, com.sun.jndi.dns.CT[]);
descriptor: (II[Lcom/sun/jndi/dns/CT;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: goto 18
4: StackMap locals: int
StackMap stack:
aload 2
iload 3
aaload
astore 4
start local 4 5: aload 4
getfield com.sun.jndi.dns.CT.rrclass:I
sipush 255
if_icmpeq 8
6: aload 4
getfield com.sun.jndi.dns.CT.rrclass:I
iload 0
if_icmpeq 8
7: iconst_0
goto 9
StackMap locals: com.sun.jndi.dns.CT
StackMap stack:
8: iconst_1
StackMap locals:
StackMap stack: int
9: istore 5
start local 5 10: aload 4
getfield com.sun.jndi.dns.CT.rrtype:I
sipush 255
if_icmpeq 13
11: aload 4
getfield com.sun.jndi.dns.CT.rrtype:I
iload 1
if_icmpeq 13
12: iconst_0
goto 14
StackMap locals: int
StackMap stack:
13: iconst_1
StackMap locals:
StackMap stack: int
14: istore 6
start local 6 15: iload 5
ifeq 17
iload 6
ifeq 17
16: iconst_1
ireturn
end local 6 end local 5 end local 4 17: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
18: iload 3
aload 2
arraylength
if_icmplt 4
end local 3 19: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 rrclass I
0 20 1 rrtype I
0 20 2 cts [Lcom/sun/jndi/dns/CT;
3 19 3 i I
5 17 4 ct Lcom/sun/jndi/dns/CT;
10 17 5 classMatch Z
15 17 6 typeMatch Z
MethodParameters:
Name Flags
rrclass
rrtype
cts
private static java.lang.String toAttrId(int, int);
descriptor: (II)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 1
invokestatic com.sun.jndi.dns.ResourceRecord.getTypeName:(I)Ljava/lang/String;
astore 2
start local 2 1: iload 0
iconst_1
if_icmpeq 3
2: new java.lang.StringBuilder
dup
iload 0
invokestatic com.sun.jndi.dns.ResourceRecord.getRrclassName:(I)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 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 rrclass I
0 4 1 rrtype I
1 4 2 attrId Ljava/lang/String;
MethodParameters:
Name Flags
rrclass
rrtype
private static com.sun.jndi.dns.CT fromAttrId(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifeq 4
1: new javax.naming.directory.InvalidAttributeIdentifierException
dup
2: ldc "Attribute ID cannot be empty"
3: invokespecial javax.naming.directory.InvalidAttributeIdentifierException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
bipush 32
invokevirtual java.lang.String.indexOf:(I)I
istore 3
start local 3 5: iload 3
ifge 8
6: iconst_1
istore 1
start local 1 7: goto 14
end local 1 8: StackMap locals: java.lang.String top top int
StackMap stack:
aload 0
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 4
start local 4 9: aload 4
invokestatic com.sun.jndi.dns.ResourceRecord.getRrclass:(Ljava/lang/String;)I
istore 1
start local 1 10: iload 1
ifge 14
11: new javax.naming.directory.InvalidAttributeIdentifierException
dup
12: new java.lang.StringBuilder
dup
ldc "Unknown resource record class '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial javax.naming.directory.InvalidAttributeIdentifierException.<init>:(Ljava/lang/String;)V
athrow
end local 4 14: StackMap locals: java.lang.String int top int
StackMap stack:
aload 0
iload 3
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 4
start local 4 15: aload 4
invokestatic com.sun.jndi.dns.ResourceRecord.getType:(Ljava/lang/String;)I
istore 2
start local 2 16: iload 2
ifge 20
17: new javax.naming.directory.InvalidAttributeIdentifierException
dup
18: new java.lang.StringBuilder
dup
ldc "Unknown resource record type '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokespecial javax.naming.directory.InvalidAttributeIdentifierException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals: java.lang.String int int int java.lang.String
StackMap stack:
new com.sun.jndi.dns.CT
dup
iload 1
iload 2
invokespecial com.sun.jndi.dns.CT.<init>:(II)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 attrId Ljava/lang/String;
7 8 1 rrclass I
10 21 1 rrclass I
16 21 2 rrtype I
5 21 3 space I
9 14 4 className Ljava/lang/String;
15 21 4 typeName Ljava/lang/String;
Exceptions:
throws javax.naming.directory.InvalidAttributeIdentifierException
MethodParameters:
Name Flags
attrId
private static com.sun.jndi.dns.CT[] attrIdsToClassesAndTypes(java.lang.String[]);
descriptor: ([Ljava/lang/String;)[Lcom/sun/jndi/dns/CT;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
arraylength
anewarray com.sun.jndi.dns.CT
astore 1
start local 1 3: iconst_0
istore 2
start local 2 4: goto 7
5: StackMap locals: com.sun.jndi.dns.CT[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
aaload
invokestatic com.sun.jndi.dns.DnsContext.fromAttrId:(Ljava/lang/String;)Lcom/sun/jndi/dns/CT;
aastore
6: iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
arraylength
if_icmplt 5
end local 2 8: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 attrIds [Ljava/lang/String;
3 9 1 cts [Lcom/sun/jndi/dns/CT;
4 8 2 i I
Exceptions:
throws javax.naming.directory.InvalidAttributeIdentifierException
MethodParameters:
Name Flags
attrIds
private static com.sun.jndi.dns.CT getClassAndTypeToQuery(com.sun.jndi.dns.CT[]);
descriptor: ([Lcom/sun/jndi/dns/CT;)Lcom/sun/jndi/dns/CT;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
ifnonnull 4
1: sipush 255
istore 1
start local 1 2: sipush 255
istore 2
start local 2 3: goto 18
end local 2 end local 1 StackMap locals:
StackMap stack:
4: aload 0
arraylength
ifne 8
5: iconst_1
istore 1
start local 1 6: sipush 255
istore 2
start local 2 7: goto 18
end local 2 end local 1 8: StackMap locals:
StackMap stack:
aload 0
iconst_0
aaload
getfield com.sun.jndi.dns.CT.rrclass:I
istore 1
start local 1 9: aload 0
iconst_0
aaload
getfield com.sun.jndi.dns.CT.rrtype:I
istore 2
start local 2 10: iconst_1
istore 3
start local 3 11: goto 17
12: StackMap locals: int int int
StackMap stack:
iload 1
aload 0
iload 3
aaload
getfield com.sun.jndi.dns.CT.rrclass:I
if_icmpeq 14
13: sipush 255
istore 1
14: StackMap locals:
StackMap stack:
iload 2
aload 0
iload 3
aaload
getfield com.sun.jndi.dns.CT.rrtype:I
if_icmpeq 16
15: sipush 255
istore 2
16: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
17: iload 3
aload 0
arraylength
if_icmplt 12
end local 3 18: StackMap locals:
StackMap stack:
new com.sun.jndi.dns.CT
dup
iload 1
iload 2
invokespecial com.sun.jndi.dns.CT.<init>:(II)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 cts [Lcom/sun/jndi/dns/CT;
2 4 1 rrclass I
6 8 1 rrclass I
9 19 1 rrclass I
3 4 2 rrtype I
7 8 2 rrtype I
10 19 2 rrtype I
11 18 3 i I
MethodParameters:
Name Flags
cts
private com.sun.jndi.dns.NameNode getNameNode(com.sun.jndi.dns.DnsName);
descriptor: (Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "getNameNode("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
1: getstatic com.sun.jndi.dns.DnsContext.zoneTree:Lcom/sun/jndi/dns/ZoneNode;
dup
astore 4
monitorenter
2: getstatic com.sun.jndi.dns.DnsContext.zoneTree:Lcom/sun/jndi/dns/ZoneNode;
aload 1
invokevirtual com.sun.jndi.dns.ZoneNode.getDeepestPopulated:(Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/ZoneNode;
astore 2
start local 2 3: aload 4
monitorexit
4: goto 7
end local 2 StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName top top com.sun.jndi.dns.ZoneNode
StackMap stack: java.lang.Throwable
5: aload 4
monitorexit
6: athrow
start local 2 7: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Deepest related zone in zone tree: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: aload 2
ifnull 9
aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.getLabel:()Ljava/lang/String;
goto 10
StackMap locals:
StackMap stack: java.lang.StringBuilder
9: ldc "[none]"
StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode
StackMap stack: java.lang.StringBuilder java.lang.String
10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
12: aload 2
ifnull 43
13: aload 2
dup
astore 6
monitorenter
14: aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.getContents:()Lcom/sun/jndi/dns/NameNode;
astore 4
start local 4 15: aload 6
monitorexit
16: goto 19
end local 4 StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode top top top com.sun.jndi.dns.ZoneNode
StackMap stack: java.lang.Throwable
17: aload 6
monitorexit
18: athrow
start local 4 19: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode top com.sun.jndi.dns.NameNode
StackMap stack:
aload 4
ifnull 43
20: aload 4
aload 1
aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.depth:()I
iconst_1
iadd
invokevirtual com.sun.jndi.dns.NameNode.get:(Lcom/sun/jndi/dns/DnsName;I)Lcom/sun/jndi/dns/NameNode;
astore 5
start local 5 21: aload 5
ifnull 43
aload 5
invokevirtual com.sun.jndi.dns.NameNode.isZoneCut:()Z
ifne 43
22: new java.lang.StringBuilder
dup
ldc "Found node "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " in zone tree"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
23: aload 1
aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.depth:()I
iconst_1
iadd
invokevirtual com.sun.jndi.dns.DnsName.getPrefix:(I)Ljavax/naming/Name;
24: checkcast com.sun.jndi.dns.DnsName
astore 3
start local 3 25: aload 0
aload 2
aload 3
invokevirtual com.sun.jndi.dns.DnsContext.isZoneCurrent:(Lcom/sun/jndi/dns/ZoneNode;Lcom/sun/jndi/dns/DnsName;)Z
istore 6
start local 6 26: iconst_0
istore 7
start local 7 27: aload 2
dup
astore 8
monitorenter
28: aload 4
aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.getContents:()Lcom/sun/jndi/dns/NameNode;
if_acmpeq 31
29: iconst_1
istore 7
30: goto 36
StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode com.sun.jndi.dns.DnsName com.sun.jndi.dns.NameNode com.sun.jndi.dns.NameNode int int com.sun.jndi.dns.ZoneNode
StackMap stack:
31: iload 6
ifne 34
32: aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.depopulate:()V
33: goto 36
34: StackMap locals:
StackMap stack:
aload 5
aload 8
monitorexit
35: areturn
36: StackMap locals:
StackMap stack:
aload 8
monitorexit
37: goto 40
StackMap locals:
StackMap stack: java.lang.Throwable
38: aload 8
monitorexit
39: athrow
40: StackMap locals:
StackMap stack:
ldc "Zone not current; discarding node"
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
41: iload 7
ifeq 43
42: aload 0
aload 1
invokevirtual com.sun.jndi.dns.DnsContext.getNameNode:(Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 43: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Adding node "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to zone tree"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
44: aload 0
invokevirtual com.sun.jndi.dns.DnsContext.getResolver:()Lcom/sun/jndi/dns/Resolver;
aload 1
iconst_1
45: aload 0
getfield com.sun.jndi.dns.DnsContext.recursion:Z
46: invokevirtual com.sun.jndi.dns.Resolver.findZoneName:(Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/DnsName;
astore 3
start local 3 47: new java.lang.StringBuilder
dup
ldc "Node's zone is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
48: getstatic com.sun.jndi.dns.DnsContext.zoneTree:Lcom/sun/jndi/dns/ZoneNode;
dup
astore 6
monitorenter
49: getstatic com.sun.jndi.dns.DnsContext.zoneTree:Lcom/sun/jndi/dns/ZoneNode;
aload 3
iconst_1
invokevirtual com.sun.jndi.dns.ZoneNode.add:(Lcom/sun/jndi/dns/DnsName;I)Lcom/sun/jndi/dns/NameNode;
checkcast com.sun.jndi.dns.ZoneNode
astore 2
50: aload 6
monitorexit
51: goto 54
StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode com.sun.jndi.dns.DnsName top top com.sun.jndi.dns.ZoneNode
StackMap stack: java.lang.Throwable
52: aload 6
monitorexit
53: athrow
54: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode com.sun.jndi.dns.DnsName
StackMap stack:
aload 2
dup
astore 6
monitorenter
55: aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.isPopulated:()Z
ifeq 57
56: aload 2
invokevirtual com.sun.jndi.dns.ZoneNode.getContents:()Lcom/sun/jndi/dns/NameNode;
goto 58
57: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode com.sun.jndi.dns.DnsName top top com.sun.jndi.dns.ZoneNode
StackMap stack:
aload 0
aload 2
aload 3
invokevirtual com.sun.jndi.dns.DnsContext.populateZone:(Lcom/sun/jndi/dns/ZoneNode;Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
58: StackMap locals:
StackMap stack: com.sun.jndi.dns.NameNode
astore 4
start local 4 59: aload 6
monitorexit
60: goto 63
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
61: aload 6
monitorexit
62: athrow
start local 4 63: StackMap locals: com.sun.jndi.dns.DnsContext com.sun.jndi.dns.DnsName com.sun.jndi.dns.ZoneNode com.sun.jndi.dns.DnsName com.sun.jndi.dns.NameNode
StackMap stack:
aload 4
aload 1
aload 3
invokevirtual com.sun.jndi.dns.DnsName.size:()I
invokevirtual com.sun.jndi.dns.NameNode.get:(Lcom/sun/jndi/dns/DnsName;I)Lcom/sun/jndi/dns/NameNode;
astore 5
start local 5 64: aload 5
ifnonnull 68
65: new javax.naming.ConfigurationException
dup
66: ldc "DNS error: node not found in its own zone"
67: invokespecial javax.naming.ConfigurationException.<init>:(Ljava/lang/String;)V
athrow
68: StackMap locals: com.sun.jndi.dns.NameNode
StackMap stack:
ldc "Found node in newly-populated zone"
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
69: aload 5
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 70 0 this Lcom/sun/jndi/dns/DnsContext;
0 70 1 fqdn Lcom/sun/jndi/dns/DnsName;
3 5 2 znode Lcom/sun/jndi/dns/ZoneNode;
7 70 2 znode Lcom/sun/jndi/dns/ZoneNode;
25 43 3 zone Lcom/sun/jndi/dns/DnsName;
47 70 3 zone Lcom/sun/jndi/dns/DnsName;
15 17 4 topOfZone Lcom/sun/jndi/dns/NameNode;
19 43 4 topOfZone Lcom/sun/jndi/dns/NameNode;
59 61 4 topOfZone Lcom/sun/jndi/dns/NameNode;
63 70 4 topOfZone Lcom/sun/jndi/dns/NameNode;
21 43 5 nnode Lcom/sun/jndi/dns/NameNode;
64 70 5 nnode Lcom/sun/jndi/dns/NameNode;
26 43 6 current Z
27 43 7 restart Z
Exception table:
from to target type
2 4 5 any
5 6 5 any
14 16 17 any
17 18 17 any
28 35 38 any
36 37 38 any
38 39 38 any
49 51 52 any
52 53 52 any
55 60 61 any
61 62 61 any
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
fqdn
private com.sun.jndi.dns.NameNode populateZone(com.sun.jndi.dns.ZoneNode, com.sun.jndi.dns.DnsName);
descriptor: (Lcom/sun/jndi/dns/ZoneNode;Lcom/sun/jndi/dns/DnsName;)Lcom/sun/jndi/dns/NameNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "Populating zone "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
1: aload 0
invokevirtual com.sun.jndi.dns.DnsContext.getResolver:()Lcom/sun/jndi/dns/Resolver;
aload 2
2: iconst_1
aload 0
getfield com.sun.jndi.dns.DnsContext.recursion:Z
3: invokevirtual com.sun.jndi.dns.Resolver.queryZone:(Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/ResourceRecords;
4: astore 3
start local 3 5: new java.lang.StringBuilder
dup
ldc "zone xfer complete: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " records"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.jndi.dns.DnsContext.dprint:(Ljava/lang/String;)V
6: aload 1
aload 2
aload 3
invokevirtual com.sun.jndi.dns.ZoneNode.populate:(Lcom/sun/jndi/dns/DnsName;Lcom/sun/jndi/dns/ResourceRecords;)Lcom/sun/jndi/dns/NameNode;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/jndi/dns/DnsContext;
0 7 1 znode Lcom/sun/jndi/dns/ZoneNode;
0 7 2 zone Lcom/sun/jndi/dns/DnsName;
5 7 3 rrs Lcom/sun/jndi/dns/ResourceRecords;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
znode
zone
private boolean isZoneCurrent(com.sun.jndi.dns.ZoneNode, com.sun.jndi.dns.DnsName);
descriptor: (Lcom/sun/jndi/dns/ZoneNode;Lcom/sun/jndi/dns/DnsName;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.jndi.dns.ZoneNode.isPopulated:()Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.jndi.dns.DnsContext.getResolver:()Lcom/sun/jndi/dns/Resolver;
aload 2
iconst_1
3: aload 0
getfield com.sun.jndi.dns.DnsContext.recursion:Z
4: invokevirtual com.sun.jndi.dns.Resolver.findSoa:(Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/ResourceRecord;
5: astore 3
start local 3 6: aload 1
dup
astore 4
monitorenter
7: aload 3
ifnonnull 9
8: aload 1
invokevirtual com.sun.jndi.dns.ZoneNode.depopulate:()V
9: StackMap locals: com.sun.jndi.dns.ResourceRecord com.sun.jndi.dns.ZoneNode
StackMap stack:
aload 1
invokevirtual com.sun.jndi.dns.ZoneNode.isPopulated:()Z
ifeq 12
10: aload 1
aload 3
invokevirtual com.sun.jndi.dns.ZoneNode.compareSerialNumberTo:(Lcom/sun/jndi/dns/ResourceRecord;)I
11: iflt 12
iconst_1
goto 13
StackMap locals:
StackMap stack:
12: iconst_0
StackMap locals:
StackMap stack: int
13: aload 4
monitorexit
14: ireturn
15: StackMap locals:
StackMap stack: java.lang.Throwable
aload 4
monitorexit
16: athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/jndi/dns/DnsContext;
0 17 1 znode Lcom/sun/jndi/dns/ZoneNode;
0 17 2 zone Lcom/sun/jndi/dns/DnsName;
6 17 3 soa Lcom/sun/jndi/dns/ResourceRecord;
Exception table:
from to target type
7 14 15 any
15 16 15 any
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
znode
zone
private static final void dprint(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
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 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
}
SourceFile: "DnsContext.java"