class com.sun.jndi.dns.Resolver
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.jndi.dns.Resolver
super_class: java.lang.Object
{
private com.sun.jndi.dns.DnsClient dnsClient;
descriptor: Lcom/sun/jndi/dns/DnsClient;
flags: (0x0002) ACC_PRIVATE
private int timeout;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int retries;
descriptor: I
flags: (0x0002) ACC_PRIVATE
void <init>(java.lang.String[], int, int);
descriptor: ([Ljava/lang/String;II)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 2
putfield com.sun.jndi.dns.Resolver.timeout:I
2: aload 0
iload 3
putfield com.sun.jndi.dns.Resolver.retries:I
3: aload 0
new com.sun.jndi.dns.DnsClient
dup
aload 1
iload 2
iload 3
invokespecial com.sun.jndi.dns.DnsClient.<init>:([Ljava/lang/String;II)V
putfield com.sun.jndi.dns.Resolver.dnsClient:Lcom/sun/jndi/dns/DnsClient;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jndi/dns/Resolver;
0 5 1 servers [Ljava/lang/String;
0 5 2 timeout I
0 5 3 retries I
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
servers
timeout
retries
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.Resolver.dnsClient:Lcom/sun/jndi/dns/DnsClient;
invokevirtual com.sun.jndi.dns.DnsClient.close:()V
1: aload 0
aconst_null
putfield com.sun.jndi.dns.Resolver.dnsClient:Lcom/sun/jndi/dns/DnsClient;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/jndi/dns/Resolver;
com.sun.jndi.dns.ResourceRecords query(com.sun.jndi.dns.DnsName, int, int, boolean, boolean);
descriptor: (Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
flags: (0x0000)
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.sun.jndi.dns.Resolver.dnsClient:Lcom/sun/jndi/dns/DnsClient;
aload 1
iload 2
iload 3
iload 4
iload 5
invokevirtual com.sun.jndi.dns.DnsClient.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
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 1 0 this Lcom/sun/jndi/dns/Resolver;
0 1 1 fqdn Lcom/sun/jndi/dns/DnsName;
0 1 2 rrclass I
0 1 3 rrtype I
0 1 4 recursion Z
0 1 5 auth Z
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
fqdn
rrclass
rrtype
recursion
auth
com.sun.jndi.dns.ResourceRecords queryZone(com.sun.jndi.dns.DnsName, int, boolean);
descriptor: (Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/ResourceRecords;
flags: (0x0000)
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.sun.jndi.dns.DnsClient
dup
aload 0
aload 1
iload 3
invokevirtual com.sun.jndi.dns.Resolver.findNameServers:(Lcom/sun/jndi/dns/DnsName;Z)[Ljava/lang/String;
aload 0
getfield com.sun.jndi.dns.Resolver.timeout:I
aload 0
getfield com.sun.jndi.dns.Resolver.retries:I
invokespecial com.sun.jndi.dns.DnsClient.<init>:([Ljava/lang/String;II)V
1: astore 4
start local 4 2: aload 4
aload 1
iload 2
iload 3
invokevirtual com.sun.jndi.dns.DnsClient.queryZone:(Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/ResourceRecords;
astore 6
3: aload 4
invokevirtual com.sun.jndi.dns.DnsClient.close:()V
4: aload 6
areturn
5: StackMap locals: com.sun.jndi.dns.Resolver com.sun.jndi.dns.DnsName int int com.sun.jndi.dns.DnsClient
StackMap stack: java.lang.Throwable
astore 5
6: aload 4
invokevirtual com.sun.jndi.dns.DnsClient.close:()V
7: aload 5
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/jndi/dns/Resolver;
0 8 1 zone Lcom/sun/jndi/dns/DnsName;
0 8 2 rrclass I
0 8 3 recursion Z
2 8 4 cl Lcom/sun/jndi/dns/DnsClient;
Exception table:
from to target type
2 3 5 any
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
zone
rrclass
recursion
com.sun.jndi.dns.DnsName findZoneName(com.sun.jndi.dns.DnsName, int, boolean);
descriptor: (Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/DnsName;
flags: (0x0000)
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual com.sun.jndi.dns.DnsName.clone:()Ljava/lang/Object;
checkcast com.sun.jndi.dns.DnsName
astore 1
1: goto 23
2: StackMap locals:
StackMap stack:
aconst_null
astore 4
start local 4 3: aload 0
aload 1
iload 2
bipush 6
4: iload 3
iconst_0
5: invokevirtual com.sun.jndi.dns.Resolver.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
astore 4
6: goto 10
StackMap locals: com.sun.jndi.dns.Resolver com.sun.jndi.dns.DnsName int int com.sun.jndi.dns.ResourceRecords
StackMap stack: javax.naming.NameNotFoundException
7: astore 5
start local 5 8: aload 5
athrow
end local 5 9: StackMap locals:
StackMap stack: javax.naming.NamingException
pop
10: StackMap locals:
StackMap stack:
aload 4
ifnull 22
11: aload 4
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
ifle 13
12: aload 1
areturn
13: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 14: goto 21
15: StackMap locals: int
StackMap stack:
aload 4
getfield com.sun.jndi.dns.ResourceRecords.authority:Ljava/util/Vector;
iload 5
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.sun.jndi.dns.ResourceRecord
astore 6
start local 6 16: aload 6
invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
bipush 6
if_icmpne 20
17: aload 6
invokevirtual com.sun.jndi.dns.ResourceRecord.getName:()Lcom/sun/jndi/dns/DnsName;
astore 7
start local 7 18: aload 1
aload 7
invokevirtual com.sun.jndi.dns.DnsName.endsWith:(Ljavax/naming/Name;)Z
ifeq 20
19: aload 7
areturn
end local 7 end local 6 20: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
21: iload 5
aload 4
getfield com.sun.jndi.dns.ResourceRecords.authority:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 15
end local 5 22: StackMap locals:
StackMap stack:
aload 1
aload 1
invokevirtual com.sun.jndi.dns.DnsName.size:()I
iconst_1
isub
invokevirtual com.sun.jndi.dns.DnsName.remove:(I)Ljava/lang/Object;
pop
end local 4 23: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.jndi.dns.DnsName.size:()I
iconst_1
if_icmpgt 2
24: aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/sun/jndi/dns/Resolver;
0 25 1 fqdn Lcom/sun/jndi/dns/DnsName;
0 25 2 rrclass I
0 25 3 recursion Z
3 23 4 rrs Lcom/sun/jndi/dns/ResourceRecords;
8 9 5 e Ljavax/naming/NameNotFoundException;
14 22 5 i I
16 20 6 rr Lcom/sun/jndi/dns/ResourceRecord;
18 20 7 zone Lcom/sun/jndi/dns/DnsName;
Exception table:
from to target type
3 6 7 Class javax.naming.NameNotFoundException
3 6 9 Class javax.naming.NamingException
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
fqdn
rrclass
recursion
com.sun.jndi.dns.ResourceRecord findSoa(com.sun.jndi.dns.DnsName, int, boolean);
descriptor: (Lcom/sun/jndi/dns/DnsName;IZ)Lcom/sun/jndi/dns/ResourceRecord;
flags: (0x0000)
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
bipush 6
1: iload 3
iconst_0
2: invokevirtual com.sun.jndi.dns.Resolver.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 9
5: StackMap locals: com.sun.jndi.dns.ResourceRecords int
StackMap stack:
aload 4
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
iload 5
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.sun.jndi.dns.ResourceRecord
astore 6
start local 6 6: aload 6
invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
bipush 6
if_icmpne 8
7: aload 6
areturn
end local 6 8: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
9: iload 5
aload 4
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 5
end local 5 10: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/jndi/dns/Resolver;
0 11 1 zone Lcom/sun/jndi/dns/DnsName;
0 11 2 rrclass I
0 11 3 recursion Z
3 11 4 rrs Lcom/sun/jndi/dns/ResourceRecords;
4 10 5 i I
6 8 6 rr Lcom/sun/jndi/dns/ResourceRecord;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
zone
rrclass
recursion
private java.lang.String[] findNameServers(com.sun.jndi.dns.DnsName, boolean);
descriptor: (Lcom/sun/jndi/dns/DnsName;Z)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_1
iconst_2
1: iload 2
iconst_0
2: invokevirtual com.sun.jndi.dns.Resolver.query:(Lcom/sun/jndi/dns/DnsName;IIZZ)Lcom/sun/jndi/dns/ResourceRecords;
3: astore 3
start local 3 4: aload 3
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
anewarray java.lang.String
astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 13
7: StackMap locals: com.sun.jndi.dns.ResourceRecords java.lang.String[] int
StackMap stack:
aload 3
getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
iload 5
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.sun.jndi.dns.ResourceRecord
astore 6
start local 6 8: aload 6
invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
iconst_2
if_icmpeq 10
9: new javax.naming.CommunicationException
dup
ldc "Corrupted DNS message"
invokespecial javax.naming.CommunicationException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals: com.sun.jndi.dns.ResourceRecord
StackMap stack:
aload 4
iload 5
aload 6
invokevirtual com.sun.jndi.dns.ResourceRecord.getRdata:()Ljava/lang/Object;
checkcast java.lang.String
aastore
11: aload 4
iload 5
aload 4
iload 5
aaload
iconst_0
aload 4
iload 5
aaload
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aastore
end local 6 12: iinc 5 1
StackMap locals:
StackMap stack:
13: iload 5
aload 4
arraylength
if_icmplt 7
end local 5 14: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/jndi/dns/Resolver;
0 15 1 zone Lcom/sun/jndi/dns/DnsName;
0 15 2 recursion Z
4 15 3 rrs Lcom/sun/jndi/dns/ResourceRecords;
5 15 4 ns [Ljava/lang/String;
6 14 5 i I
8 12 6 rr Lcom/sun/jndi/dns/ResourceRecord;
Exceptions:
throws javax.naming.NamingException
MethodParameters:
Name Flags
zone
recursion
}
SourceFile: "Resolver.java"