public final class io.netty.handler.codec.socks.SocksCmdResponse extends io.netty.handler.codec.socks.SocksResponse
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.netty.handler.codec.socks.SocksCmdResponse
super_class: io.netty.handler.codec.socks.SocksResponse
{
private final io.netty.handler.codec.socks.SocksCmdStatus cmdStatus;
descriptor: Lio/netty/handler/codec/socks/SocksCmdStatus;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.codec.socks.SocksAddressType addressType;
descriptor: Lio/netty/handler/codec/socks/SocksAddressType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String host;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int port;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final byte[] DOMAIN_ZEROED;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] IPv4_HOSTNAME_ZEROED;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] IPv6_HOSTNAME_ZEROED;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_1
newarray 8
putstatic io.netty.handler.codec.socks.SocksCmdResponse.DOMAIN_ZEROED:[B
1: iconst_4
newarray 8
putstatic io.netty.handler.codec.socks.SocksCmdResponse.IPv4_HOSTNAME_ZEROED:[B
2: bipush 16
newarray 8
putstatic io.netty.handler.codec.socks.SocksCmdResponse.IPv6_HOSTNAME_ZEROED:[B
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(io.netty.handler.codec.socks.SocksCmdStatus, io.netty.handler.codec.socks.SocksAddressType);
descriptor: (Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
iconst_0
invokespecial io.netty.handler.codec.socks.SocksCmdResponse.<init>:(Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;Ljava/lang/String;I)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
0 2 1 cmdStatus Lio/netty/handler/codec/socks/SocksCmdStatus;
0 2 2 addressType Lio/netty/handler/codec/socks/SocksAddressType;
MethodParameters:
Name Flags
cmdStatus
addressType
public void <init>(io.netty.handler.codec.socks.SocksCmdStatus, io.netty.handler.codec.socks.SocksAddressType, java.lang.String, int);
descriptor: (Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getstatic io.netty.handler.codec.socks.SocksResponseType.CMD:Lio/netty/handler/codec/socks/SocksResponseType;
invokespecial io.netty.handler.codec.socks.SocksResponse.<init>:(Lio/netty/handler/codec/socks/SocksResponseType;)V
1: aload 1
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "cmdStatus"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: io.netty.handler.codec.socks.SocksCmdResponse io.netty.handler.codec.socks.SocksCmdStatus io.netty.handler.codec.socks.SocksAddressType java.lang.String int
StackMap stack:
aload 2
ifnonnull 5
4: new java.lang.NullPointerException
dup
ldc "addressType"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 3
ifnull 16
6: invokestatic io.netty.handler.codec.socks.SocksCmdResponse.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:()[I
aload 2
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 7
2: 9
3: 14
4: 16
default: 16
}
7: StackMap locals:
StackMap stack:
aload 3
invokestatic io.netty.util.NetUtil.isValidIpV4Address:(Ljava/lang/String;)Z
ifne 16
8: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " is not a valid IPv4 address"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 3
invokestatic java.net.IDN.toASCII:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 10: aload 5
invokevirtual java.lang.String.length:()I
sipush 255
if_icmple 12
11: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " IDN: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " exceeds 255 char limit"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals: java.lang.String
StackMap stack:
aload 5
astore 3
13: goto 16
end local 5 14: StackMap locals:
StackMap stack:
aload 3
invokestatic io.netty.util.NetUtil.isValidIpV6Address:(Ljava/lang/String;)Z
ifne 16
15: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " is not a valid IPv6 address"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
iload 4
iflt 17
iload 4
ldc 65535
if_icmple 18
17: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
iload 4
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " is not in bounds 0 <= x <= 65535"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield io.netty.handler.codec.socks.SocksCmdResponse.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
19: aload 0
aload 2
putfield io.netty.handler.codec.socks.SocksCmdResponse.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
20: aload 0
aload 3
putfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
21: aload 0
iload 4
putfield io.netty.handler.codec.socks.SocksCmdResponse.port:I
22: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
0 23 1 cmdStatus Lio/netty/handler/codec/socks/SocksCmdStatus;
0 23 2 addressType Lio/netty/handler/codec/socks/SocksAddressType;
0 23 3 host Ljava/lang/String;
0 23 4 port I
10 14 5 asciiHost Ljava/lang/String;
MethodParameters:
Name Flags
cmdStatus
addressType
host
port
public io.netty.handler.codec.socks.SocksCmdStatus cmdStatus();
descriptor: ()Lio/netty/handler/codec/socks/SocksCmdStatus;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
public io.netty.handler.codec.socks.SocksAddressType addressType();
descriptor: ()Lio/netty/handler/codec/socks/SocksAddressType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
public java.lang.String host();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
ifnull 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
getstatic io.netty.handler.codec.socks.SocksAddressType.DOMAIN:Lio/netty/handler/codec/socks/SocksAddressType;
if_acmpne 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
invokestatic java.net.IDN.toUnicode:(Ljava/lang/String;)Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
public int port();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.port:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
public void encodeAsByteBuf(io.netty.buffer.ByteBuf);
descriptor: (Lio/netty/buffer/ByteBuf;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual io.netty.handler.codec.socks.SocksCmdResponse.protocolVersion:()Lio/netty/handler/codec/socks/SocksProtocolVersion;
invokevirtual io.netty.handler.codec.socks.SocksProtocolVersion.byteValue:()B
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
1: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
invokevirtual io.netty.handler.codec.socks.SocksCmdStatus.byteValue:()B
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
2: aload 1
iconst_0
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
3: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.byteValue:()B
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
4: invokestatic io.netty.handler.codec.socks.SocksCmdResponse.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:()[I
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 5
2: 12
3: 20
default: 26
}
5: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
ifnonnull 7
6: getstatic io.netty.handler.codec.socks.SocksCmdResponse.IPv4_HOSTNAME_ZEROED:[B
goto 8
StackMap locals:
StackMap stack:
7: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
invokestatic io.netty.util.NetUtil.createByteArrayFromIpAddressString:(Ljava/lang/String;)[B
8: StackMap locals:
StackMap stack: byte[]
astore 2
start local 2 9: aload 1
aload 2
invokevirtual io.netty.buffer.ByteBuf.writeBytes:([B)Lio/netty/buffer/ByteBuf;
pop
10: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.port:I
invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
pop
11: goto 26
end local 2 12: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
ifnull 16
13: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
14: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
getstatic io.netty.util.CharsetUtil.US_ASCII:Ljava/nio/charset/Charset;
invokevirtual io.netty.buffer.ByteBuf.writeCharSequence:(Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)I
pop
15: goto 18
16: StackMap locals:
StackMap stack:
aload 1
getstatic io.netty.handler.codec.socks.SocksCmdResponse.DOMAIN_ZEROED:[B
arraylength
invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
pop
17: aload 1
getstatic io.netty.handler.codec.socks.SocksCmdResponse.DOMAIN_ZEROED:[B
invokevirtual io.netty.buffer.ByteBuf.writeBytes:([B)Lio/netty/buffer/ByteBuf;
pop
18: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.port:I
invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
pop
19: goto 26
20: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
ifnonnull 22
21: getstatic io.netty.handler.codec.socks.SocksCmdResponse.IPv6_HOSTNAME_ZEROED:[B
goto 23
StackMap locals:
StackMap stack:
22: aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.host:Ljava/lang/String;
invokestatic io.netty.util.NetUtil.createByteArrayFromIpAddressString:(Ljava/lang/String;)[B
23: StackMap locals:
StackMap stack: byte[]
astore 2
start local 2 24: aload 1
aload 2
invokevirtual io.netty.buffer.ByteBuf.writeBytes:([B)Lio/netty/buffer/ByteBuf;
pop
25: aload 1
aload 0
getfield io.netty.handler.codec.socks.SocksCmdResponse.port:I
invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
pop
end local 2 26: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lio/netty/handler/codec/socks/SocksCmdResponse;
0 27 1 byteBuf Lio/netty/buffer/ByteBuf;
9 12 2 hostContent [B
24 26 2 hostContent [B
MethodParameters:
Name Flags
byteBuf
static int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic io.netty.handler.codec.socks.SocksCmdResponse.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic io.netty.handler.codec.socks.SocksAddressType.values:()[Lio/netty/handler/codec/socks/SocksAddressType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic io.netty.handler.codec.socks.SocksAddressType.DOMAIN:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic io.netty.handler.codec.socks.SocksAddressType.IPv4:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic io.netty.handler.codec.socks.SocksAddressType.IPv6:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic io.netty.handler.codec.socks.SocksAddressType.UNKNOWN:Lio/netty/handler/codec/socks/SocksAddressType;
invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic io.netty.handler.codec.socks.SocksCmdResponse.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "SocksCmdResponse.java"