public final class org.apache.catalina.util.NetMask
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.catalina.util.NetMask
super_class: java.lang.Object
{
private static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String expression;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final byte[] netaddr;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int nrBytes;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int lastByteShift;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/catalina/util/NetMask;
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.catalina.util.NetMask.expression:Ljava/lang/String;
2: aload 1
ldc "/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 2
start local 2 3: iload 2
iconst_m1
if_icmpne 11
4: aload 0
aload 1
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.getAddress:()[B
putfield org.apache.catalina.util.NetMask.netaddr:[B
5: goto 8
StackMap locals: org.apache.catalina.util.NetMask java.lang.String int
StackMap stack: java.net.UnknownHostException
6: pop
7: new java.lang.IllegalArgumentException
dup
getstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "netmask.invalidAddress"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.apache.catalina.util.NetMask.netaddr:[B
arraylength
putfield org.apache.catalina.util.NetMask.nrBytes:I
9: aload 0
iconst_0
putfield org.apache.catalina.util.NetMask.lastByteShift:I
10: return
11: StackMap locals:
StackMap stack:
aload 1
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
start local 3 12: aload 1
iload 2
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 4
start local 4 13: aload 0
aload 3
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.getAddress:()[B
putfield org.apache.catalina.util.NetMask.netaddr:[B
14: goto 17
StackMap locals: org.apache.catalina.util.NetMask java.lang.String int java.lang.String java.lang.String
StackMap stack: java.net.UnknownHostException
15: pop
16: new java.lang.IllegalArgumentException
dup
getstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "netmask.invalidAddress"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.util.NetMask.netaddr:[B
arraylength
bipush 8
imul
istore 5
start local 5 18: aload 4
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 6
start local 6 19: goto 22
end local 6 StackMap locals: org.apache.catalina.util.NetMask java.lang.String int java.lang.String java.lang.String int
StackMap stack: java.lang.NumberFormatException
20: pop
21: new java.lang.IllegalArgumentException
dup
getstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "netmask.cidrNotNumeric"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 6 22: StackMap locals: int
StackMap stack:
iload 6
ifge 24
23: new java.lang.IllegalArgumentException
dup
getstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "netmask.cidrNegative"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
24: StackMap locals:
StackMap stack:
iload 6
iload 5
if_icmple 28
25: new java.lang.IllegalArgumentException
dup
26: getstatic org.apache.catalina.util.NetMask.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "netmask.cidrTooBig"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
27: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
aload 0
iload 6
bipush 8
idiv
putfield org.apache.catalina.util.NetMask.nrBytes:I
29: iload 6
bipush 8
irem
istore 7
start local 7 30: aload 0
iload 7
ifne 31
iconst_0
goto 32
StackMap locals: org.apache.catalina.util.NetMask java.lang.String int java.lang.String java.lang.String int int int
StackMap stack: org.apache.catalina.util.NetMask
31: bipush 8
iload 7
isub
StackMap locals: org.apache.catalina.util.NetMask java.lang.String int java.lang.String java.lang.String int int int
StackMap stack: org.apache.catalina.util.NetMask int
32: putfield org.apache.catalina.util.NetMask.lastByteShift:I
33: return
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 Lorg/apache/catalina/util/NetMask;
0 34 1 input Ljava/lang/String;
3 34 2 idx I
12 34 3 addressPart Ljava/lang/String;
13 34 4 cidrPart Ljava/lang/String;
18 34 5 addrlen I
19 20 6 cidr I
22 34 6 cidr I
30 34 7 remainder I
Exception table:
from to target type
4 5 6 Class java.net.UnknownHostException
13 14 15 Class java.net.UnknownHostException
18 19 20 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
input final
public boolean matches(java.net.InetAddress);
descriptor: (Ljava/net/InetAddress;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.net.InetAddress.getAddress:()[B
astore 2
start local 2 1: aload 2
arraylength
aload 0
getfield org.apache.catalina.util.NetMask.netaddr:[B
arraylength
if_icmpeq 3
2: iconst_0
ireturn
3: StackMap locals: byte[]
StackMap stack:
iconst_0
istore 3
start local 3 4: goto 8
5: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.catalina.util.NetMask.netaddr:[B
iload 3
baload
aload 2
iload 3
baload
if_icmpeq 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
8: iload 3
aload 0
getfield org.apache.catalina.util.NetMask.nrBytes:I
if_icmplt 5
9: aload 0
getfield org.apache.catalina.util.NetMask.lastByteShift:I
ifne 11
10: iconst_1
ireturn
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.util.NetMask.netaddr:[B
iload 3
baload
aload 2
iload 3
baload
ixor
istore 4
start local 4 12: iload 4
aload 0
getfield org.apache.catalina.util.NetMask.lastByteShift:I
ishr
ifne 13
iconst_1
ireturn
StackMap locals: int
StackMap stack:
13: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/catalina/util/NetMask;
0 14 1 addr Ljava/net/InetAddress;
1 14 2 candidate [B
4 14 3 i I
12 14 4 lastByte I
MethodParameters:
Name Flags
addr final
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.util.NetMask.expression:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/util/NetMask;
}
SourceFile: "NetMask.java"