public final class java.net.Inet6Address extends java.net.InetAddress
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.net.Inet6Address
super_class: java.net.InetAddress
{
static final int INADDRSZ;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 16
private transient int cached_scope_id;
descriptor: I
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private final transient java.net.Inet6Address$Inet6AddressHolder holder6;
descriptor: Ljava/net/Inet6Address$Inet6AddressHolder;
flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6880410070516793377
private static final java.io.ObjectStreamField[] serialPersistentFields;
descriptor: [Ljava/io/ObjectStreamField;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.internal.misc.Unsafe UNSAFE;
descriptor: Ljdk/internal/misc/Unsafe;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long FIELDS_OFFSET;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int INT16SZ;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=0, args_size=0
0: invokestatic java.net.Inet6Address.init:()V
1: iconst_5
anewarray java.io.ObjectStreamField
dup
iconst_0
2: new java.io.ObjectStreamField
dup
ldc "ipaddress"
ldc [B
invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
aastore
dup
iconst_1
3: new java.io.ObjectStreamField
dup
ldc "scope_id"
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
aastore
dup
iconst_2
4: new java.io.ObjectStreamField
dup
ldc "scope_id_set"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
aastore
dup
iconst_3
5: new java.io.ObjectStreamField
dup
ldc "scope_ifname_set"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
aastore
dup
iconst_4
6: new java.io.ObjectStreamField
dup
ldc "ifname"
ldc Ljava/lang/String;
invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
aastore
7: putstatic java.net.Inet6Address.serialPersistentFields:[Ljava/io/ObjectStreamField;
8: invokestatic jdk.internal.misc.Unsafe.getUnsafe:()Ljdk/internal/misc/Unsafe;
9: putstatic java.net.Inet6Address.UNSAFE:Ljdk/internal/misc/Unsafe;
10: getstatic java.net.Inet6Address.UNSAFE:Ljdk/internal/misc/Unsafe;
11: ldc Ljava/net/Inet6Address;
ldc "holder6"
12: invokevirtual jdk.internal.misc.Unsafe.objectFieldOffset:(Ljava/lang/Class;Ljava/lang/String;)J
putstatic java.net.Inet6Address.FIELDS_OFFSET:J
13: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.net.InetAddress.<init>:()V
1: aload 0
getfield java.net.Inet6Address.holder:Ljava/net/InetAddress$InetAddressHolder;
aconst_null
iconst_2
invokevirtual java.net.InetAddress$InetAddressHolder.init:(Ljava/lang/String;I)V
2: aload 0
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;)V
putfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/net/Inet6Address;
void <init>(java.lang.String, byte[], int);
descriptor: (Ljava/lang/String;[BI)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.net.InetAddress.<init>:()V
1: aload 0
getfield java.net.Inet6Address.holder:Ljava/net/InetAddress$InetAddressHolder;
aload 1
iconst_2
invokevirtual java.net.InetAddress$InetAddressHolder.init:(Ljava/lang/String;I)V
2: aload 0
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;)V
putfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
3: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
aload 2
iload 3
invokevirtual java.net.Inet6Address$Inet6AddressHolder.init:([BI)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/net/Inet6Address;
0 5 1 hostName Ljava/lang/String;
0 5 2 addr [B
0 5 3 scope_id I
MethodParameters:
Name Flags
hostName
addr
scope_id
void <init>(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.net.InetAddress.<init>:()V
1: aload 0
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;)V
putfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
2: aload 0
aload 1
aload 2
aconst_null
invokevirtual java.net.Inet6Address.initif:(Ljava/lang/String;[BLjava/net/NetworkInterface;)V
3: goto 5
StackMap locals: java.net.Inet6Address java.lang.String byte[]
StackMap stack: java.net.UnknownHostException
4: pop
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/net/Inet6Address;
0 6 1 hostName Ljava/lang/String;
0 6 2 addr [B
Exception table:
from to target type
2 3 4 Class java.net.UnknownHostException
MethodParameters:
Name Flags
hostName
addr
void <init>(java.lang.String, byte[], java.net.NetworkInterface);
descriptor: (Ljava/lang/String;[BLjava/net/NetworkInterface;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.net.InetAddress.<init>:()V
1: aload 0
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;)V
putfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
2: aload 0
aload 1
aload 2
aload 3
invokevirtual java.net.Inet6Address.initif:(Ljava/lang/String;[BLjava/net/NetworkInterface;)V
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/net/Inet6Address;
0 4 1 hostName Ljava/lang/String;
0 4 2 addr [B
0 4 3 nif Ljava/net/NetworkInterface;
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
hostName
addr
nif
void <init>(java.lang.String, byte[], java.lang.String);
descriptor: (Ljava/lang/String;[BLjava/lang/String;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.net.InetAddress.<init>:()V
1: aload 0
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;)V
putfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
2: aload 0
aload 1
aload 2
aload 3
invokevirtual java.net.Inet6Address.initstr:(Ljava/lang/String;[BLjava/lang/String;)V
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/net/Inet6Address;
0 4 1 hostName Ljava/lang/String;
0 4 2 addr [B
0 4 3 ifname Ljava/lang/String;
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
hostName
addr
ifname
public static java.net.Inet6Address getByAddress(java.lang.String, byte[], java.net.NetworkInterface);
descriptor: (Ljava/lang/String;[BLjava/net/NetworkInterface;)Ljava/net/Inet6Address;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnull 3
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifne 3
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 91
if_icmpne 3
1: aload 0
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 93
if_icmpne 3
2: aload 0
iconst_1
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
3: StackMap locals:
StackMap stack:
aload 1
ifnull 6
4: aload 1
arraylength
bipush 16
if_icmpne 6
5: new java.net.Inet6Address
dup
aload 0
aload 1
aload 2
invokespecial java.net.Inet6Address.<init>:(Ljava/lang/String;[BLjava/net/NetworkInterface;)V
areturn
6: StackMap locals:
StackMap stack:
new java.net.UnknownHostException
dup
ldc "addr is of illegal length"
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 host Ljava/lang/String;
0 7 1 addr [B
0 7 2 nif Ljava/net/NetworkInterface;
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
host
addr
nif
public static java.net.Inet6Address getByAddress(java.lang.String, byte[], int);
descriptor: (Ljava/lang/String;[BI)Ljava/net/Inet6Address;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnull 3
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifne 3
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 91
if_icmpne 3
1: aload 0
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 93
if_icmpne 3
2: aload 0
iconst_1
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
3: StackMap locals:
StackMap stack:
aload 1
ifnull 6
4: aload 1
arraylength
bipush 16
if_icmpne 6
5: new java.net.Inet6Address
dup
aload 0
aload 1
iload 2
invokespecial java.net.Inet6Address.<init>:(Ljava/lang/String;[BI)V
areturn
6: StackMap locals:
StackMap stack:
new java.net.UnknownHostException
dup
ldc "addr is of illegal length"
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 host Ljava/lang/String;
0 7 1 addr [B
0 7 2 scope_id I
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
host
addr
scope_id
private void initstr(java.lang.String, byte[], java.lang.String);
descriptor: (Ljava/lang/String;[BLjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic java.net.NetworkInterface.getByName:(Ljava/lang/String;)Ljava/net/NetworkInterface;
astore 4
start local 4 1: aload 4
ifnonnull 3
2: new java.net.UnknownHostException
dup
new java.lang.StringBuilder
dup
ldc "no such interface "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.net.NetworkInterface
StackMap stack:
aload 0
aload 1
aload 2
aload 4
invokevirtual java.net.Inet6Address.initif:(Ljava/lang/String;[BLjava/net/NetworkInterface;)V
end local 4 4: goto 7
StackMap locals: java.net.Inet6Address java.lang.String byte[] java.lang.String
StackMap stack: java.net.SocketException
5: pop
6: new java.net.UnknownHostException
dup
new java.lang.StringBuilder
dup
ldc "SocketException thrown"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/net/Inet6Address;
0 8 1 hostName Ljava/lang/String;
0 8 2 addr [B
0 8 3 ifname Ljava/lang/String;
1 4 4 nif Ljava/net/NetworkInterface;
Exception table:
from to target type
0 4 5 Class java.net.SocketException
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
hostName
addr
ifname
private void initif(java.lang.String, byte[], java.net.NetworkInterface);
descriptor: (Ljava/lang/String;[BLjava/net/NetworkInterface;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_m1
istore 4
start local 4 1: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
aload 2
aload 3
invokevirtual java.net.Inet6Address$Inet6AddressHolder.init:([BLjava/net/NetworkInterface;)V
2: aload 2
arraylength
bipush 16
if_icmpne 4
3: iconst_2
istore 4
4: StackMap locals: int
StackMap stack:
aload 0
getfield java.net.Inet6Address.holder:Ljava/net/InetAddress$InetAddressHolder;
aload 1
iload 4
invokevirtual java.net.InetAddress$InetAddressHolder.init:(Ljava/lang/String;I)V
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/net/Inet6Address;
0 6 1 hostName Ljava/lang/String;
0 6 2 addr [B
0 6 3 nif Ljava/net/NetworkInterface;
1 6 4 family I
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
hostName
addr
nif
private static boolean isDifferentLocalAddressType(byte[], byte[]);
descriptor: ([B[B)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.net.Inet6Address.isLinkLocalAddress:([B)Z
ifeq 3
1: aload 1
invokestatic java.net.Inet6Address.isLinkLocalAddress:([B)Z
ifne 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
invokestatic java.net.Inet6Address.isSiteLocalAddress:([B)Z
ifeq 6
4: aload 1
invokestatic java.net.Inet6Address.isSiteLocalAddress:([B)Z
ifne 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 thisAddr [B
0 7 1 otherAddr [B
MethodParameters:
Name Flags
thisAddr
otherAddr
private static int deriveNumericScope(byte[], java.net.NetworkInterface);
descriptor: ([BLjava/net/NetworkInterface;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.net.NetworkInterface.getInetAddresses:()Ljava/util/Enumeration;
astore 2
start local 2 1: goto 9
2: StackMap locals: java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 3
start local 3 3: aload 3
instanceof java.net.Inet6Address
ifne 5
4: goto 9
5: StackMap locals: java.net.InetAddress
StackMap stack:
aload 3
checkcast java.net.Inet6Address
astore 4
start local 4 6: aload 0
aload 4
invokevirtual java.net.Inet6Address.getAddress:()[B
invokestatic java.net.Inet6Address.isDifferentLocalAddressType:([B[B)Z
ifne 8
7: goto 9
8: StackMap locals: java.net.Inet6Address
StackMap stack:
aload 4
invokevirtual java.net.Inet6Address.getScopeId:()I
ireturn
end local 4 end local 3 9: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 2
10: new java.net.UnknownHostException
dup
ldc "no scope_id found"
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 thisAddr [B
0 11 1 ifc Ljava/net/NetworkInterface;
1 11 2 addresses Ljava/util/Enumeration<Ljava/net/InetAddress;>;
3 9 3 addr Ljava/net/InetAddress;
6 9 4 ia6_addr Ljava/net/Inet6Address;
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
thisAddr
ifc
private int deriveNumericScope(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: invokestatic java.net.NetworkInterface.getNetworkInterfaces:()Ljava/util/Enumeration;
astore 2
start local 2 1: goto 7
end local 2 StackMap locals:
StackMap stack: java.net.SocketException
2: pop
3: new java.net.UnknownHostException
dup
ldc "could not enumerate local network interfaces"
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
start local 2 4: StackMap locals: java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.net.NetworkInterface
astore 3
start local 3 5: aload 3
invokevirtual java.net.NetworkInterface.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.ipaddress:[B
aload 3
invokestatic java.net.Inet6Address.deriveNumericScope:([BLjava/net/NetworkInterface;)I
ireturn
end local 3 7: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 4
8: new java.net.UnknownHostException
dup
new java.lang.StringBuilder
dup
ldc "No matching address found for interface : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.UnknownHostException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/net/Inet6Address;
0 9 1 ifname Ljava/lang/String;
1 2 2 en Ljava/util/Enumeration<Ljava/net/NetworkInterface;>;
4 9 2 en Ljava/util/Enumeration<Ljava/net/NetworkInterface;>;
5 7 3 ifc Ljava/net/NetworkInterface;
Exception table:
from to target type
0 1 2 Class java.net.SocketException
Exceptions:
throws java.net.UnknownHostException
MethodParameters:
Name Flags
ifname
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=10, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
ifnull 3
2: new java.lang.SecurityException
dup
ldc "invalid address type"
invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.net.NetworkInterface
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readFields:()Ljava/io/ObjectInputStream$GetField;
astore 3
start local 3 4: aload 3
ldc "ipaddress"
iconst_0
newarray 8
invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast byte[]
astore 4
start local 4 5: aload 3
ldc "scope_id"
iconst_m1
invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;I)I
istore 5
start local 5 6: aload 3
ldc "scope_id_set"
iconst_0
invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Z)Z
istore 6
start local 6 7: aload 3
ldc "scope_ifname_set"
iconst_0
invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Z)Z
istore 7
start local 7 8: aload 3
ldc "ifname"
aconst_null
invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 8
start local 8 9: aload 8
ifnull 22
aload 8
invokevirtual java.lang.String.isEmpty:()Z
ifne 22
10: aload 8
invokestatic java.net.NetworkInterface.getByName:(Ljava/lang/String;)Ljava/net/NetworkInterface;
astore 2
11: aload 2
ifnonnull 16
12: iconst_0
istore 6
13: iconst_0
istore 7
14: iconst_0
istore 5
15: goto 22
16: StackMap locals: java.net.Inet6Address java.io.ObjectInputStream java.net.NetworkInterface java.io.ObjectInputStream$GetField byte[] int int int java.lang.String
StackMap stack:
iconst_1
istore 7
17: aload 4
aload 2
invokestatic java.net.Inet6Address.deriveNumericScope:([BLjava/net/NetworkInterface;)I
istore 5
18: goto 22
StackMap locals:
StackMap stack: java.net.UnknownHostException
19: pop
20: goto 22
StackMap locals:
StackMap stack: java.net.SocketException
21: pop
22: StackMap locals:
StackMap stack:
aload 4
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
astore 4
23: aload 4
arraylength
bipush 16
if_icmpeq 27
24: new java.io.InvalidObjectException
dup
new java.lang.StringBuilder
dup
ldc "invalid address length: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
25: aload 4
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals:
StackMap stack:
aload 0
getfield java.net.Inet6Address.holder:Ljava/net/InetAddress$InetAddressHolder;
invokevirtual java.net.InetAddress$InetAddressHolder.getFamily:()I
iconst_2
if_icmpeq 29
28: new java.io.InvalidObjectException
dup
ldc "invalid address family type"
invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
athrow
29: StackMap locals:
StackMap stack:
new java.net.Inet6Address$Inet6AddressHolder
dup
aload 0
30: aload 4
iload 5
iload 6
aload 2
iload 7
31: invokespecial java.net.Inet6Address$Inet6AddressHolder.<init>:(Ljava/net/Inet6Address;[BIZLjava/net/NetworkInterface;Z)V
astore 9
start local 9 32: getstatic java.net.Inet6Address.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.net.Inet6Address.FIELDS_OFFSET:J
aload 9
invokevirtual jdk.internal.misc.Unsafe.putObject:(Ljava/lang/Object;JLjava/lang/Object;)V
33: return
end local 9 end local 8 end local 7 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 34 0 this Ljava/net/Inet6Address;
0 34 1 s Ljava/io/ObjectInputStream;
1 34 2 scope_ifname Ljava/net/NetworkInterface;
4 34 3 gf Ljava/io/ObjectInputStream$GetField;
5 34 4 ipaddress [B
6 34 5 scope_id I
7 34 6 scope_id_set Z
8 34 7 scope_ifname_set Z
9 34 8 ifname Ljava/lang/String;
32 34 9 h Ljava/net/Inet6Address$Inet6AddressHolder;
Exception table:
from to target type
17 18 19 Class java.net.UnknownHostException
10 20 21 Class java.net.SocketException
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
s
private synchronized void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_ifname:Ljava/net/NetworkInterface;
ifnull 4
2: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_ifname:Ljava/net/NetworkInterface;
invokevirtual java.net.NetworkInterface.getName:()Ljava/lang/String;
astore 2
3: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
iconst_1
putfield java.net.Inet6Address$Inet6AddressHolder.scope_ifname_set:Z
4: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokevirtual java.io.ObjectOutputStream.putFields:()Ljava/io/ObjectOutputStream$PutField;
astore 3
start local 3 5: aload 3
ldc "ipaddress"
aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.ipaddress:[B
invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
6: aload 3
ldc "scope_id"
aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_id:I
invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;I)V
7: aload 3
ldc "scope_id_set"
aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_id_set:Z
invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Z)V
8: aload 3
ldc "scope_ifname_set"
aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_ifname_set:Z
invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Z)V
9: aload 3
ldc "ifname"
aload 2
invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
10: aload 1
invokevirtual java.io.ObjectOutputStream.writeFields:()V
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/net/Inet6Address;
0 12 1 s Ljava/io/ObjectOutputStream;
1 12 2 ifname Ljava/lang/String;
5 12 3 pfields Ljava/io/ObjectOutputStream$PutField;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
public boolean isMulticastAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMulticastAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isAnyLocalAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isAnyLocalAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isLoopbackAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isLoopbackAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isLinkLocalAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isLinkLocalAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
static boolean isLinkLocalAddress(byte[]);
descriptor: ([B)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
baload
sipush 255
iand
sipush 254
if_icmpne 3
1: aload 0
iconst_1
baload
sipush 192
iand
sipush 128
if_icmpne 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 ipaddress [B
MethodParameters:
Name Flags
ipaddress
public boolean isSiteLocalAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isSiteLocalAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
static boolean isSiteLocalAddress(byte[]);
descriptor: ([B)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
baload
sipush 255
iand
sipush 254
if_icmpne 3
1: aload 0
iconst_1
baload
sipush 192
iand
sipush 192
if_icmpne 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 ipaddress [B
MethodParameters:
Name Flags
ipaddress
public boolean isMCGlobal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMCGlobal:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isMCNodeLocal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMCNodeLocal:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isMCLinkLocal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMCLinkLocal:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isMCSiteLocal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMCSiteLocal:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean isMCOrgLocal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isMCOrgLocal:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public byte[] getAddress();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.ipaddress:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public int getScopeId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_id:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public java.net.NetworkInterface getScopedInterface();
descriptor: ()Ljava/net/NetworkInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
getfield java.net.Inet6Address$Inet6AddressHolder.scope_ifname:Ljava/net/NetworkInterface;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public java.lang.String getHostAddress();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.getHostAddress:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
instanceof java.net.Inet6Address
ifne 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.net.Inet6Address
astore 2
start local 2 3: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
aload 2
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.equals:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/net/Inet6Address;
0 4 1 obj Ljava/lang/Object;
3 4 2 inetAddr Ljava/net/Inet6Address;
MethodParameters:
Name Flags
obj
public boolean isIPv4CompatibleAddress();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.net.Inet6Address.holder6:Ljava/net/Inet6Address$Inet6AddressHolder;
invokevirtual java.net.Inet6Address$Inet6AddressHolder.isIPv4CompatibleAddress:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/net/Inet6Address;
static java.lang.String numericToTextFormat(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
bipush 39
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 9
3: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
aload 0
iload 2
iconst_1
ishl
baload
bipush 8
ishl
ldc 65280
iand
4: aload 0
iload 2
iconst_1
ishl
iconst_1
iadd
baload
sipush 255
iand
ior
5: invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: iload 2
bipush 7
if_icmpge 8
7: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
bipush 8
if_icmplt 3
end local 2 10: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 src [B
1 11 1 sb Ljava/lang/StringBuilder;
2 10 2 i I
MethodParameters:
Name Flags
src
private static native void init();
descriptor: ()V
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
}
SourceFile: "Inet6Address.java"
NestMembers:
java.net.Inet6Address$Inet6AddressHolder
InnerClasses:
public abstract GetField = java.io.ObjectInputStream$GetField of java.io.ObjectInputStream
public abstract PutField = java.io.ObjectOutputStream$PutField of java.io.ObjectOutputStream
private Inet6AddressHolder = java.net.Inet6Address$Inet6AddressHolder of java.net.Inet6Address
InetAddressHolder = java.net.InetAddress$InetAddressHolder of java.net.InetAddress