public class org.bouncycastle.util.IPAddress
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.util.IPAddress
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/util/IPAddress;
public static boolean isValid(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.bouncycastle.util.IPAddress.isValidIPv4:(Ljava/lang/String;)Z
ifne 1
aload 0
invokestatic org.bouncycastle.util.IPAddress.isValidIPv6:(Ljava/lang/String;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 address Ljava/lang/String;
MethodParameters:
Name Flags
address
public static boolean isValidWithNetMask(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.bouncycastle.util.IPAddress.isValidIPv4WithNetmask:(Ljava/lang/String;)Z
ifne 1
aload 0
invokestatic org.bouncycastle.util.IPAddress.isValidIPv6WithNetmask:(Ljava/lang/String;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 address Ljava/lang/String;
MethodParameters:
Name Flags
address
public static boolean isValidIPv4(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: new java.lang.StringBuilder
dup
aload 0
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;
astore 3
start local 3 4: iconst_0
istore 5
start local 5 5: goto 16
start local 4 6: StackMap locals: java.lang.String top int java.lang.String int int
StackMap stack:
iload 2
iconst_4
if_icmpne 8
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aload 3
iload 5
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 1
start local 1 9: goto 12
end local 1 10: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
11: iconst_0
ireturn
start local 1 12: StackMap locals: java.lang.String int int java.lang.String int int
StackMap stack:
iload 1
iflt 13
iload 1
sipush 255
if_icmple 14
13: StackMap locals:
StackMap stack:
iconst_0
ireturn
14: StackMap locals:
StackMap stack:
iload 4
iconst_1
iadd
istore 5
15: iinc 2 1
end local 4 end local 1 16: StackMap locals: java.lang.String top int java.lang.String top int
StackMap stack:
iload 5
aload 3
invokevirtual java.lang.String.length:()I
if_icmpge 20
17: aload 3
bipush 46
iload 5
invokevirtual java.lang.String.indexOf:(II)I
dup
istore 4
start local 4 18: iload 5
19: if_icmpgt 6
end local 4 20: StackMap locals:
StackMap stack:
iload 2
iconst_4
if_icmpne 21
iconst_1
ireturn
StackMap locals:
StackMap stack:
21: iconst_0
ireturn
end local 5 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 address Ljava/lang/String;
9 10 1 octet I
12 16 1 octet I
3 22 2 octets I
4 22 3 temp Ljava/lang/String;
6 16 4 pos I
18 20 4 pos I
5 22 5 start I
Exception table:
from to target type
8 9 10 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
address
public static boolean isValidIPv4WithNetmask(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
ldc "/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 1
start local 1 1: aload 0
iload 1
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 2
start local 2 2: iload 1
ifle 5
aload 0
iconst_0
iload 1
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic org.bouncycastle.util.IPAddress.isValidIPv4:(Ljava/lang/String;)Z
ifeq 5
3: aload 2
invokestatic org.bouncycastle.util.IPAddress.isValidIPv4:(Ljava/lang/String;)Z
ifne 4
aload 2
bipush 32
invokestatic org.bouncycastle.util.IPAddress.isMaskValue:(Ljava/lang/String;I)Z
ifeq 5
4: StackMap locals: int java.lang.String
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 address Ljava/lang/String;
1 6 1 index I
2 6 2 mask Ljava/lang/String;
MethodParameters:
Name Flags
address
public static boolean isValidIPv6WithNetmask(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
ldc "/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 1
start local 1 1: aload 0
iload 1
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 2
start local 2 2: iload 1
ifle 5
aload 0
iconst_0
iload 1
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic org.bouncycastle.util.IPAddress.isValidIPv6:(Ljava/lang/String;)Z
ifeq 5
3: aload 2
invokestatic org.bouncycastle.util.IPAddress.isValidIPv6:(Ljava/lang/String;)Z
ifne 4
aload 2
sipush 128
invokestatic org.bouncycastle.util.IPAddress.isMaskValue:(Ljava/lang/String;I)Z
ifeq 5
4: StackMap locals: int java.lang.String
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 address Ljava/lang/String;
1 6 1 index I
2 6 2 mask Ljava/lang/String;
MethodParameters:
Name Flags
address
private static boolean isMaskValue(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 2
start local 2 1: iload 2
iflt 2
iload 2
iload 1
if_icmpgt 2
iconst_1
ireturn
StackMap locals: int
StackMap stack:
2: iconst_0
3: ireturn
end local 2 4: StackMap locals: java.lang.String int
StackMap stack: java.lang.NumberFormatException
pop
5: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 component Ljava/lang/String;
0 6 1 size I
1 4 2 value I
Exception table:
from to target type
0 3 4 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
component
size
public static boolean isValidIPv6(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: new java.lang.StringBuilder
dup
aload 0
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;
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: iconst_0
istore 6
start local 6 6: goto 27
start local 5 7: StackMap locals: java.lang.String top int java.lang.String int int int
StackMap stack:
iload 2
bipush 8
if_icmpne 9
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iload 6
iload 5
if_icmpeq 22
10: aload 3
iload 6
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 7
start local 7 11: iload 5
aload 3
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 16
aload 7
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
ifle 16
12: aload 7
invokestatic org.bouncycastle.util.IPAddress.isValidIPv4:(Ljava/lang/String;)Z
ifne 14
13: iconst_0
ireturn
14: StackMap locals: java.lang.String
StackMap stack:
iinc 2 1
15: goto 25
16: StackMap locals:
StackMap stack:
aload 3
iload 6
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
bipush 16
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;I)I
istore 1
start local 1 17: goto 20
end local 1 18: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
19: iconst_0
ireturn
start local 1 20: StackMap locals: java.lang.String int int java.lang.String int int int java.lang.String
StackMap stack:
iload 1
iflt 21
iload 1
ldc 65535
if_icmple 25
21: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 7 end local 1 22: StackMap locals: java.lang.String top int java.lang.String int int int
StackMap stack:
iload 5
iconst_1
if_icmpeq 24
iload 5
aload 3
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpeq 24
iload 4
ifeq 24
23: iconst_0
ireturn
24: StackMap locals:
StackMap stack:
iconst_1
istore 4
25: StackMap locals:
StackMap stack:
iload 5
iconst_1
iadd
istore 6
26: iinc 2 1
end local 5 27: StackMap locals: java.lang.String top int java.lang.String int top int
StackMap stack:
iload 6
aload 3
invokevirtual java.lang.String.length:()I
if_icmpge 31
28: aload 3
bipush 58
iload 6
invokevirtual java.lang.String.indexOf:(II)I
dup
istore 5
start local 5 29: iload 6
30: if_icmpge 7
end local 5 31: StackMap locals:
StackMap stack:
iload 2
bipush 8
if_icmpeq 32
iload 4
ifne 32
iconst_0
ireturn
StackMap locals:
StackMap stack:
32: iconst_1
ireturn
end local 6 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 address Ljava/lang/String;
17 18 1 octet I
20 22 1 octet I
3 33 2 octets I
4 33 3 temp Ljava/lang/String;
5 33 4 doubleColonFound Z
7 27 5 pos I
29 31 5 pos I
6 33 6 start I
11 22 7 value Ljava/lang/String;
Exception table:
from to target type
16 17 18 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
address
}
SourceFile: "IPAddress.java"