public class org.apache.tomcat.util.http.parser.HttpParser
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.tomcat.util.http.parser.HttpParser
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 static final int ARRAY_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 128
private static final boolean[] IS_CONTROL;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_SEPARATOR;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_TOKEN;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_HEX;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_HTTP_PROTOCOL;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_ALPHA;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_NUMERIC;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_UNRESERVED;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_SUBDELIM;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_USERINFO;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] IS_RELAXABLE;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.apache.tomcat.util.http.parser.HttpParser DEFAULT;
descriptor: Lorg/apache/tomcat/util/http/parser/HttpParser;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final boolean[] IS_NOT_REQUEST_TARGET;
descriptor: [Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean[] IS_ABSOLUTEPATH_RELAXED;
descriptor: [Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean[] IS_QUERY_RELAXED;
descriptor: [Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: ldc Lorg/apache/tomcat/util/http/parser/HttpParser;
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
1: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_CONTROL:[Z
2: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SEPARATOR:[Z
3: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_TOKEN:[Z
4: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HEX:[Z
5: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HTTP_PROTOCOL:[Z
6: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_ALPHA:[Z
7: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_NUMERIC:[Z
8: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_UNRESERVED:[Z
9: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SUBDELIM:[Z
10: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_USERINFO:[Z
11: sipush 128
newarray 4
putstatic org.apache.tomcat.util.http.parser.HttpParser.IS_RELAXABLE:[Z
12: iconst_0
istore 0
start local 0 13: goto 45
14: StackMap locals: int
StackMap stack:
iload 0
bipush 32
if_icmplt 15
iload 0
bipush 127
if_icmpne 16
15: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_CONTROL:[Z
iload 0
iconst_1
bastore
16: StackMap locals:
StackMap stack:
iload 0
bipush 40
if_icmpeq 20
iload 0
bipush 41
if_icmpeq 20
iload 0
bipush 60
if_icmpeq 20
iload 0
bipush 62
if_icmpeq 20
iload 0
bipush 64
if_icmpeq 20
17: iload 0
bipush 44
if_icmpeq 20
iload 0
bipush 59
if_icmpeq 20
iload 0
bipush 58
if_icmpeq 20
iload 0
bipush 92
if_icmpeq 20
iload 0
bipush 34
if_icmpeq 20
18: iload 0
bipush 47
if_icmpeq 20
iload 0
bipush 91
if_icmpeq 20
iload 0
bipush 93
if_icmpeq 20
iload 0
bipush 63
if_icmpeq 20
iload 0
bipush 61
if_icmpeq 20
19: iload 0
bipush 123
if_icmpeq 20
iload 0
bipush 125
if_icmpeq 20
iload 0
bipush 32
if_icmpeq 20
iload 0
bipush 9
if_icmpne 21
20: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SEPARATOR:[Z
iload 0
iconst_1
bastore
21: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_CONTROL:[Z
iload 0
baload
ifne 23
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SEPARATOR:[Z
iload 0
baload
ifne 23
iload 0
sipush 128
if_icmpge 23
22: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_TOKEN:[Z
iload 0
iconst_1
bastore
23: StackMap locals:
StackMap stack:
iload 0
bipush 48
if_icmplt 24
iload 0
bipush 57
if_icmple 26
StackMap locals:
StackMap stack:
24: iload 0
bipush 97
if_icmplt 25
iload 0
bipush 102
if_icmple 26
StackMap locals:
StackMap stack:
25: iload 0
bipush 65
if_icmplt 27
iload 0
bipush 70
if_icmpgt 27
26: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HEX:[Z
iload 0
iconst_1
bastore
27: StackMap locals:
StackMap stack:
iload 0
bipush 72
if_icmpeq 28
iload 0
bipush 84
if_icmpeq 28
iload 0
bipush 80
if_icmpeq 28
iload 0
bipush 47
if_icmpeq 28
iload 0
bipush 46
if_icmpeq 28
iload 0
bipush 48
if_icmplt 29
iload 0
bipush 57
if_icmpgt 29
28: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HTTP_PROTOCOL:[Z
iload 0
iconst_1
bastore
29: StackMap locals:
StackMap stack:
iload 0
bipush 48
if_icmplt 31
iload 0
bipush 57
if_icmpgt 31
30: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_NUMERIC:[Z
iload 0
iconst_1
bastore
31: StackMap locals:
StackMap stack:
iload 0
bipush 97
if_icmplt 32
iload 0
bipush 122
if_icmple 33
StackMap locals:
StackMap stack:
32: iload 0
bipush 65
if_icmplt 34
iload 0
bipush 90
if_icmpgt 34
33: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_ALPHA:[Z
iload 0
iconst_1
bastore
34: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_ALPHA:[Z
iload 0
baload
ifne 35
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_NUMERIC:[Z
iload 0
baload
ifne 35
iload 0
bipush 45
if_icmpeq 35
iload 0
bipush 46
if_icmpeq 35
iload 0
bipush 95
if_icmpeq 35
iload 0
bipush 126
if_icmpne 36
35: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_UNRESERVED:[Z
iload 0
iconst_1
bastore
36: StackMap locals:
StackMap stack:
iload 0
bipush 33
if_icmpeq 38
iload 0
bipush 36
if_icmpeq 38
iload 0
bipush 38
if_icmpeq 38
iload 0
bipush 39
if_icmpeq 38
iload 0
bipush 40
if_icmpeq 38
iload 0
bipush 41
if_icmpeq 38
iload 0
bipush 42
if_icmpeq 38
37: iload 0
bipush 43
if_icmpeq 38
iload 0
bipush 44
if_icmpeq 38
iload 0
bipush 59
if_icmpeq 38
iload 0
bipush 61
if_icmpne 39
38: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SUBDELIM:[Z
iload 0
iconst_1
bastore
39: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_UNRESERVED:[Z
iload 0
baload
ifne 40
iload 0
bipush 37
if_icmpeq 40
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_SUBDELIM:[Z
iload 0
baload
ifne 40
iload 0
bipush 58
if_icmpne 41
40: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_USERINFO:[Z
iload 0
iconst_1
bastore
41: StackMap locals:
StackMap stack:
iload 0
bipush 34
if_icmpeq 43
iload 0
bipush 60
if_icmpeq 43
iload 0
bipush 62
if_icmpeq 43
iload 0
bipush 91
if_icmpeq 43
iload 0
bipush 92
if_icmpeq 43
iload 0
bipush 93
if_icmpeq 43
42: iload 0
bipush 94
if_icmpeq 43
iload 0
bipush 96
if_icmpeq 43
iload 0
bipush 123
if_icmpeq 43
iload 0
bipush 124
if_icmpeq 43
iload 0
bipush 125
if_icmpne 44
43: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_RELAXABLE:[Z
iload 0
iconst_1
bastore
44: StackMap locals:
StackMap stack:
iinc 0 1
StackMap locals:
StackMap stack:
45: iload 0
sipush 128
if_icmplt 14
end local 0 46: new org.apache.tomcat.util.http.parser.HttpParser
dup
aconst_null
aconst_null
invokespecial org.apache.tomcat.util.http.parser.HttpParser.<init>:(Ljava/lang/String;Ljava/lang/String;)V
putstatic org.apache.tomcat.util.http.parser.HttpParser.DEFAULT:Lorg/apache/tomcat/util/http/parser/HttpParser;
47: return
LocalVariableTable:
Start End Slot Name Signature
13 46 0 i I
public void <init>(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
sipush 128
newarray 4
putfield org.apache.tomcat.util.http.parser.HttpParser.IS_NOT_REQUEST_TARGET:[Z
2: aload 0
sipush 128
newarray 4
putfield org.apache.tomcat.util.http.parser.HttpParser.IS_ABSOLUTEPATH_RELAXED:[Z
3: aload 0
sipush 128
newarray 4
putfield org.apache.tomcat.util.http.parser.HttpParser.IS_QUERY_RELAXED:[Z
4: iconst_0
istore 3
start local 3 5: goto 15
6: StackMap locals: org.apache.tomcat.util.http.parser.HttpParser java.lang.String java.lang.String int
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_CONTROL:[Z
iload 3
baload
ifne 9
7: iload 3
bipush 32
if_icmpeq 9
iload 3
bipush 34
if_icmpeq 9
iload 3
bipush 35
if_icmpeq 9
iload 3
bipush 60
if_icmpeq 9
iload 3
bipush 62
if_icmpeq 9
iload 3
bipush 92
if_icmpeq 9
8: iload 3
bipush 94
if_icmpeq 9
iload 3
bipush 96
if_icmpeq 9
iload 3
bipush 123
if_icmpeq 9
iload 3
bipush 124
if_icmpeq 9
iload 3
bipush 125
if_icmpne 10
9: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_NOT_REQUEST_TARGET:[Z
iload 3
iconst_1
bastore
10: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_USERINFO:[Z
iload 3
baload
ifne 11
iload 3
bipush 64
if_icmpeq 11
iload 3
bipush 47
if_icmpne 12
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_ABSOLUTEPATH_RELAXED:[Z
iload 3
iconst_1
bastore
12: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_ABSOLUTEPATH_RELAXED:[Z
iload 3
baload
ifne 13
iload 3
bipush 63
if_icmpne 14
13: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_QUERY_RELAXED:[Z
iload 3
iconst_1
bastore
14: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
sipush 128
if_icmplt 6
end local 3 16: aload 0
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_ABSOLUTEPATH_RELAXED:[Z
aload 1
invokevirtual org.apache.tomcat.util.http.parser.HttpParser.relax:([ZLjava/lang/String;)V
17: aload 0
aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_QUERY_RELAXED:[Z
aload 2
invokevirtual org.apache.tomcat.util.http.parser.HttpParser.relax:([ZLjava/lang/String;)V
18: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/tomcat/util/http/parser/HttpParser;
0 19 1 relaxedPathChars Ljava/lang/String;
0 19 2 relaxedQueryChars Ljava/lang/String;
5 16 3 i I
MethodParameters:
Name Flags
relaxedPathChars
relaxedQueryChars
public boolean isNotRequestTargetRelaxed(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_NOT_REQUEST_TARGET:[Z
iload 1
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tomcat/util/http/parser/HttpParser;
0 4 1 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public boolean isAbsolutePathRelaxed(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_ABSOLUTEPATH_RELAXED:[Z
iload 1
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tomcat/util/http/parser/HttpParser;
0 4 1 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public boolean isQueryRelaxed(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_QUERY_RELAXED:[Z
iload 1
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tomcat/util/http/parser/HttpParser;
0 4 1 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static java.lang.String unquote(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.String.length:()I
iconst_2
if_icmpge 2
1: StackMap locals:
StackMap stack:
aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 6
3: iconst_1
istore 1
start local 1 4: aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
istore 2
start local 2 5: goto 8
end local 2 end local 1 6: StackMap locals:
StackMap stack:
iconst_0
istore 1
start local 1 7: aload 0
invokevirtual java.lang.String.length:()I
istore 2
start local 2 8: StackMap locals: int int
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 9: iload 1
istore 4
start local 4 10: goto 18
11: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 12: aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 92
if_icmpne 16
13: iinc 4 1
14: aload 3
aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: goto 17
16: StackMap locals: int
StackMap stack:
aload 3
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 5 17: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
iload 2
if_icmplt 11
end local 4 19: aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 input Ljava/lang/String;
4 6 1 start I
7 20 1 start I
5 6 2 end I
8 20 2 end I
9 20 3 result Ljava/lang/StringBuilder;
10 19 4 i I
12 17 5 c C
MethodParameters:
Name Flags
input
public static boolean isToken(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_TOKEN:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isHex(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HEX:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isNotRequestTarget(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.DEFAULT:Lorg/apache/tomcat/util/http/parser/HttpParser;
iload 0
invokevirtual org.apache.tomcat.util.http.parser.HttpParser.isNotRequestTargetRelaxed:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 c I
MethodParameters:
Name Flags
c
public static boolean isHttpProtocol(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_HTTP_PROTOCOL:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isAlpha(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_ALPHA:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isNumeric(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_NUMERIC:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isUserInfo(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_USERINFO:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
private static boolean isRelaxable(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.IS_RELAXABLE:[Z
iload 0
baload
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
c
public static boolean isAbsolutePath(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.DEFAULT:Lorg/apache/tomcat/util/http/parser/HttpParser;
iload 0
invokevirtual org.apache.tomcat.util.http.parser.HttpParser.isAbsolutePathRelaxed:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 c I
MethodParameters:
Name Flags
c
public static boolean isQuery(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser.DEFAULT:Lorg/apache/tomcat/util/http/parser/HttpParser;
iload 0
invokevirtual org.apache.tomcat.util.http.parser.HttpParser.isQueryRelaxed:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 c I
MethodParameters:
Name Flags
c
static int skipLws(java.io.Reader);
descriptor: (Ljava/io/Reader;)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
1: aload 0
invokevirtual java.io.Reader.read:()I
istore 1
start local 1 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
4: aload 0
invokevirtual java.io.Reader.read:()I
istore 1
5: StackMap locals:
StackMap stack:
iload 1
bipush 32
if_icmpeq 3
iload 1
bipush 9
if_icmpeq 3
iload 1
bipush 10
if_icmpeq 3
iload 1
bipush 13
if_icmpeq 3
6: aload 0
invokevirtual java.io.Reader.reset:()V
7: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 input Ljava/io/Reader;
2 8 1 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static org.apache.tomcat.util.http.parser.SkipResult skipConstant(java.io.Reader, java.lang.String);
descriptor: (Ljava/io/Reader;Ljava/lang/String;)Lorg/apache/tomcat/util/http/parser/SkipResult;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
2: aload 0
iload 2
invokevirtual java.io.Reader.mark:(I)V
3: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 14
6: StackMap locals: int int int
StackMap stack:
iload 4
ifne 8
iload 3
iconst_m1
if_icmpne 8
7: getstatic org.apache.tomcat.util.http.parser.SkipResult.EOF:Lorg/apache/tomcat/util/http/parser/SkipResult;
areturn
8: StackMap locals:
StackMap stack:
iload 3
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
if_icmpeq 11
9: aload 0
invokevirtual java.io.Reader.reset:()V
10: getstatic org.apache.tomcat.util.http.parser.SkipResult.NOT_FOUND:Lorg/apache/tomcat/util/http/parser/SkipResult;
areturn
11: StackMap locals:
StackMap stack:
iload 4
iload 2
iconst_1
isub
if_icmpeq 13
12: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
iload 2
if_icmplt 6
end local 4 15: getstatic org.apache.tomcat.util.http.parser.SkipResult.FOUND:Lorg/apache/tomcat/util/http/parser/SkipResult;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 input Ljava/io/Reader;
0 16 1 constant Ljava/lang/String;
1 16 2 len I
4 16 3 c I
5 15 4 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
constant
static java.lang.String readToken(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
2: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
3: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
start local 2 4: goto 8
5: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
7: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
8: StackMap locals:
StackMap stack:
iload 2
iconst_m1
if_icmpeq 9
iload 2
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isToken:(I)Z
ifne 5
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
10: iload 2
iconst_m1
if_icmpeq 12
aload 1
invokevirtual java.lang.StringBuilder.length:()I
ifne 12
11: aconst_null
areturn
12: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 input Ljava/io/Reader;
1 13 1 result Ljava/lang/StringBuilder;
4 13 2 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static java.lang.String readDigits(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
2: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
3: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
start local 2 4: goto 8
5: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
7: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
8: StackMap locals:
StackMap stack:
iload 2
iconst_m1
if_icmpeq 9
iload 2
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isNumeric:(I)Z
ifne 5
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
10: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 input Ljava/io/Reader;
1 11 1 result Ljava/lang/StringBuilder;
4 11 2 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static long readLong(java.io.Reader);
descriptor: (Ljava/io/Reader;)J
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readDigits:(Ljava/io/Reader;)Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokevirtual java.lang.String.length:()I
ifne 3
2: ldc -1
lreturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 input Ljava/io/Reader;
1 4 1 digits Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static java.lang.String readQuotedString(java.io.Reader, boolean);
descriptor: (Ljava/io/Reader;Z)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
1: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
start local 2 2: iload 2
bipush 34
if_icmpeq 4
3: aconst_null
areturn
4: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 5: iload 1
ifeq 7
6: aload 3
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 2
8: goto 19
9: StackMap locals:
StackMap stack:
iload 2
iconst_m1
if_icmpne 11
10: aconst_null
areturn
11: StackMap locals:
StackMap stack:
iload 2
bipush 92
if_icmpne 17
12: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
13: iload 1
ifeq 15
14: aload 3
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: StackMap locals:
StackMap stack:
aload 3
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
16: goto 18
17: StackMap locals:
StackMap stack:
aload 3
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 2
19: StackMap locals:
StackMap stack:
iload 2
bipush 34
if_icmpne 9
20: iload 1
ifeq 22
21: aload 3
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
22: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 input Ljava/io/Reader;
0 23 1 returnQuoted Z
2 23 2 c I
5 23 3 result Ljava/lang/StringBuilder;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
returnQuoted
static java.lang.String readTokenOrQuotedString(java.io.Reader, boolean);
descriptor: (Ljava/io/Reader;Z)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
istore 2
start local 2 1: iload 2
bipush 34
if_icmpne 3
2: aload 0
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readQuotedString:(Ljava/io/Reader;Z)Ljava/lang/String;
areturn
3: StackMap locals: int
StackMap stack:
aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readToken:(Ljava/io/Reader;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 input Ljava/io/Reader;
0 4 1 returnQuoted Z
1 4 2 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
returnQuoted
static java.lang.String readQuotedToken(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
3: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
4: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
start local 3 5: iload 3
bipush 34
if_icmpne 8
6: iconst_1
istore 2
7: goto 11
StackMap locals: java.lang.StringBuilder int int
StackMap stack:
8: iload 3
iconst_m1
if_icmpeq 9
iload 3
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isToken:(I)Z
ifne 10
9: StackMap locals:
StackMap stack:
aconst_null
areturn
10: StackMap locals:
StackMap stack:
aload 1
iload 3
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
12: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
13: goto 17
14: StackMap locals:
StackMap stack:
aload 1
iload 3
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
16: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
17: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpeq 18
iload 3
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isToken:(I)Z
ifne 14
18: StackMap locals:
StackMap stack:
iload 2
ifeq 21
19: iload 3
bipush 34
if_icmpeq 22
20: aconst_null
areturn
21: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
22: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpeq 24
aload 1
invokevirtual java.lang.StringBuilder.length:()I
ifne 24
23: aconst_null
areturn
24: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 input Ljava/io/Reader;
1 25 1 result Ljava/lang/StringBuilder;
2 25 2 quoted Z
5 25 3 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static java.lang.String readLhex(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
3: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
4: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
start local 3 5: iload 3
bipush 34
if_icmpne 8
6: iconst_1
istore 2
7: goto 13
StackMap locals: java.lang.StringBuilder int int
StackMap stack:
8: iload 3
iconst_m1
if_icmpeq 9
iload 3
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isHex:(I)Z
ifne 10
9: StackMap locals:
StackMap stack:
aconst_null
areturn
10: StackMap locals:
StackMap stack:
bipush 65
iload 3
if_icmpgt 12
iload 3
bipush 70
if_icmpgt 12
11: iinc 3 32
12: StackMap locals:
StackMap stack:
aload 1
iload 3
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
13: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
14: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
15: goto 21
16: StackMap locals:
StackMap stack:
bipush 65
iload 3
if_icmpgt 18
iload 3
bipush 70
if_icmpgt 18
17: iinc 3 32
18: StackMap locals:
StackMap stack:
aload 1
iload 3
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
19: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
20: aload 0
invokevirtual java.io.Reader.read:()I
istore 3
21: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpeq 22
iload 3
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isHex:(I)Z
ifne 16
22: StackMap locals:
StackMap stack:
iload 2
ifeq 25
23: iload 3
bipush 34
if_icmpeq 26
24: aconst_null
areturn
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
26: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpeq 28
aload 1
invokevirtual java.lang.StringBuilder.length:()I
ifne 28
27: aconst_null
areturn
28: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 input Ljava/io/Reader;
1 29 1 result Ljava/lang/StringBuilder;
2 29 2 quoted Z
5 29 3 c I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
static double readWeight(java.io.Reader, char);
descriptor: (Ljava/io/Reader;C)D
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
1: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
start local 2 2: iload 2
iconst_m1
if_icmpeq 3
iload 2
iload 1
if_icmpne 4
3: StackMap locals: int
StackMap stack:
dconst_1
dreturn
4: StackMap locals:
StackMap stack:
iload 2
bipush 113
if_icmpeq 7
5: aload 0
iload 2
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipUntil:(Ljava/io/Reader;IC)Lorg/apache/tomcat/util/http/parser/SkipResult;
pop
6: dconst_0
dreturn
7: StackMap locals:
StackMap stack:
aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
8: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
9: iload 2
bipush 61
if_icmpeq 12
10: aload 0
iload 2
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipUntil:(Ljava/io/Reader;IC)Lorg/apache/tomcat/util/http/parser/SkipResult;
pop
11: dconst_0
dreturn
12: StackMap locals:
StackMap stack:
aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
13: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
14: new java.lang.StringBuilder
dup
iconst_5
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 3
start local 3 15: iconst_m1
istore 4
start local 4 16: iload 2
bipush 48
if_icmpeq 17
iload 2
bipush 49
if_icmpne 29
17: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 3
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
18: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
19: StackMap locals:
StackMap stack:
iload 4
iconst_m1
if_icmpne 23
iload 2
bipush 46
if_icmpne 23
20: aload 3
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
21: iconst_0
istore 4
22: goto 27
StackMap locals:
StackMap stack:
23: iload 4
iconst_m1
if_icmple 31
iload 2
bipush 48
if_icmplt 31
iload 2
bipush 57
if_icmpgt 31
24: iload 4
iconst_3
if_icmpge 27
25: aload 3
iload 2
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
26: iinc 4 1
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 2
28: goto 19
29: StackMap locals:
StackMap stack:
aload 0
iload 2
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipUntil:(Ljava/io/Reader;IC)Lorg/apache/tomcat/util/http/parser/SkipResult;
pop
30: dconst_0
dreturn
31: StackMap locals:
StackMap stack:
iload 2
bipush 9
if_icmpeq 32
iload 2
bipush 32
if_icmpne 34
32: StackMap locals:
StackMap stack:
aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipLws:(Ljava/io/Reader;)I
pop
33: aload 0
invokevirtual java.io.Reader.read:()I
istore 2
34: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmpeq 37
iload 2
iconst_m1
if_icmpeq 37
35: aload 0
iload 2
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.skipUntil:(Ljava/io/Reader;IC)Lorg/apache/tomcat/util/http/parser/SkipResult;
pop
36: dconst_0
dreturn
37: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
dstore 5
start local 5 38: dload 5
dconst_1
dcmpl
ifle 40
39: dconst_0
dreturn
40: StackMap locals: double
StackMap stack:
dload 5
dreturn
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 41 0 input Ljava/io/Reader;
0 41 1 delimiter C
2 41 2 c I
15 41 3 value Ljava/lang/StringBuilder;
16 41 4 decimalPlacesRead I
38 41 5 result D
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
delimiter
static int readHostIPv4(java.io.Reader, boolean);
descriptor: (Ljava/io/Reader;Z)I
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=6, args_size=2
start local 0 start local 1 0: iconst_m1
istore 2
start local 2 1: iconst_1
istore 3
start local 3 2: iconst_0
istore 5
start local 5 3: aload 0
iconst_1
invokevirtual java.io.Reader.mark:(I)V
4: StackMap locals: java.io.Reader int int int top int
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 4
start local 4 5: iload 4
bipush 46
if_icmpne 16
6: iload 2
iconst_m1
if_icmple 10
iload 2
sipush 256
if_icmpge 10
7: iinc 3 1
8: iconst_m1
istore 2
9: goto 45
StackMap locals: java.io.Reader int int int int int
StackMap stack:
10: iload 1
ifne 11
iload 2
iconst_m1
if_icmpne 14
11: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
12: getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.invalidOctet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
13: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
15: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readHostDomainName:(Ljava/io/Reader;)I
ireturn
16: StackMap locals:
StackMap stack:
iload 4
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isNumeric:(I)Z
ifeq 27
17: iload 2
iconst_m1
if_icmpne 20
18: iload 4
bipush 48
isub
istore 2
19: goto 45
StackMap locals:
StackMap stack:
20: iload 2
ifne 25
21: iload 1
ifeq 23
22: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.invalidLeadingZero"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
23: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
24: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readHostDomainName:(Ljava/io/Reader;)I
ireturn
25: StackMap locals:
StackMap stack:
iload 2
bipush 10
imul
iload 4
iadd
bipush 48
isub
istore 2
26: goto 45
StackMap locals:
StackMap stack:
27: iload 4
bipush 58
if_icmpne 29
28: goto 47
29: StackMap locals:
StackMap stack:
iload 4
iconst_m1
if_icmpne 34
30: iload 1
ifeq 32
31: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.noClosingBracket"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
32: StackMap locals:
StackMap stack:
iconst_m1
istore 5
33: goto 47
34: StackMap locals:
StackMap stack:
iload 4
bipush 93
if_icmpne 39
35: iload 1
ifeq 38
36: iinc 5 1
37: goto 47
38: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.closingBracket"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
iload 1
ifne 42
iload 4
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isAlpha:(I)Z
ifne 40
iload 4
bipush 45
if_icmpne 42
40: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
41: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readHostDomainName:(Ljava/io/Reader;)I
ireturn
42: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
43: ldc "http.illegalCharacterIpv4"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 4
i2c
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
aastore
44: 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
45: StackMap locals:
StackMap stack:
iinc 5 1
46: goto 4
47: StackMap locals:
StackMap stack:
iload 3
iconst_4
if_icmpne 48
iload 2
iflt 48
iload 2
sipush 255
if_icmple 50
48: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
49: aload 0
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readHostDomainName:(Ljava/io/Reader;)I
ireturn
50: StackMap locals:
StackMap stack:
iload 5
ireturn
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 51 0 reader Ljava/io/Reader;
0 51 1 inIPv6 Z
1 51 2 octet I
2 51 3 octetCount I
5 51 4 c I
3 51 5 pos I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
inIPv6
static int readHostIPv6(java.io.Reader);
descriptor: (Ljava/io/Reader;)I
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual java.io.Reader.read:()I
istore 1
start local 1 1: iload 1
bipush 91
if_icmpeq 3
2: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.noOpeningBracket"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
iconst_0
istore 2
start local 2 4: iconst_0
istore 3
start local 3 5: iconst_1
istore 4
start local 4 6: iconst_0
istore 5
start local 5 7: iconst_0
istore 6
start local 6 8: StackMap locals: java.io.Reader int int int int int int
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 1
9: iload 2
ifne 11
iload 6
iconst_1
if_icmpne 11
iload 1
bipush 58
if_icmpeq 11
10: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.singleColonStart"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
iload 1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isHex:(I)Z
ifeq 18
12: iload 3
ifne 15
13: iconst_0
istore 6
14: iinc 2 1
15: StackMap locals:
StackMap stack:
iinc 3 1
16: iload 3
iconst_4
if_icmple 48
17: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.invalidHextet"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
iload 1
bipush 58
if_icmpne 32
19: iload 6
iconst_2
if_icmplt 21
20: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.tooManyColons"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
iload 6
iconst_1
if_icmpne 28
22: iload 5
ifeq 26
23: new java.lang.IllegalArgumentException
dup
24: getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.tooManyDoubleColons"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
25: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
26: StackMap locals:
StackMap stack:
iconst_1
istore 5
27: iinc 2 1
28: StackMap locals:
StackMap stack:
iinc 6 1
29: aload 0
iconst_4
invokevirtual java.io.Reader.mark:(I)V
30: iconst_0
istore 3
31: goto 48
StackMap locals:
StackMap stack:
32: iload 1
bipush 93
if_icmpne 37
33: iload 6
iconst_1
if_icmpne 35
34: new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.singleColonEnd"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
35: StackMap locals:
StackMap stack:
iinc 4 1
36: goto 50
37: StackMap locals:
StackMap stack:
iload 1
bipush 46
if_icmpne 45
38: iload 2
bipush 7
if_icmpeq 39
iload 2
bipush 7
if_icmpge 44
iload 5
ifeq 44
39: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.reset:()V
40: iload 4
iload 3
isub
istore 4
41: iload 4
aload 0
iconst_1
invokestatic org.apache.tomcat.util.http.parser.HttpParser.readHostIPv4:(Ljava/io/Reader;Z)I
iadd
istore 4
42: iinc 2 1
43: goto 50
44: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.invalidIpv4Location"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
45: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
46: ldc "http.illegalCharacterIpv6"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
i2c
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
aastore
47: 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
48: StackMap locals:
StackMap stack:
iinc 4 1
49: goto 8
50: StackMap locals:
StackMap stack:
iload 2
bipush 8
if_icmple 54
51: new java.lang.IllegalArgumentException
dup
52: getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.tooManyHextets"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
53: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
54: StackMap locals:
StackMap stack:
iload 2
bipush 8
if_icmpeq 58
iload 5
ifne 58
55: new java.lang.IllegalArgumentException
dup
56: getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.tooFewHextets"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
57: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
58: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 1
59: iload 1
bipush 58
if_icmpne 61
60: iload 4
ireturn
61: StackMap locals:
StackMap stack:
iload 1
iconst_m1
if_icmpne 63
62: iconst_m1
ireturn
63: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
64: getstatic org.apache.tomcat.util.http.parser.HttpParser.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "http.illegalAfterIpv6"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
i2c
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
65: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
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 66 0 reader Ljava/io/Reader;
1 66 1 c I
4 66 2 h16Count I
5 66 3 h16Size I
6 66 4 pos I
7 66 5 parsedDoubleColon Z
8 66 6 precedingColonsCount I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
static int readHostDomainName(java.io.Reader);
descriptor: (Ljava/io/Reader;)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: getstatic org.apache.tomcat.util.http.parser.HttpParser$DomainParseState.NEW:Lorg/apache/tomcat/util/http/parser/HttpParser$DomainParseState;
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: org.apache.tomcat.util.http.parser.HttpParser$DomainParseState int
StackMap stack:
aload 1
aload 0
invokevirtual java.io.Reader.read:()I
invokevirtual org.apache.tomcat.util.http.parser.HttpParser$DomainParseState.next:(I)Lorg/apache/tomcat/util/http/parser/HttpParser$DomainParseState;
astore 1
4: iinc 2 1
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.tomcat.util.http.parser.HttpParser$DomainParseState.mayContinue:()Z
ifne 3
6: getstatic org.apache.tomcat.util.http.parser.HttpParser$DomainParseState.COLON:Lorg/apache/tomcat/util/http/parser/HttpParser$DomainParseState;
aload 1
if_acmpne 8
7: iload 2
iconst_1
isub
ireturn
8: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 reader Ljava/io/Reader;
1 9 1 state Lorg/apache/tomcat/util/http/parser/HttpParser$DomainParseState;
2 9 2 pos I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
static org.apache.tomcat.util.http.parser.SkipResult skipUntil(java.io.Reader, int, char);
descriptor: (Ljava/io/Reader;IC)Lorg/apache/tomcat/util/http/parser/SkipResult;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.read:()I
istore 1
2: StackMap locals:
StackMap stack:
iload 1
iconst_m1
if_icmpeq 3
iload 1
iload 2
if_icmpne 1
3: StackMap locals:
StackMap stack:
iload 1
iconst_m1
if_icmpne 5
4: getstatic org.apache.tomcat.util.http.parser.SkipResult.EOF:Lorg/apache/tomcat/util/http/parser/SkipResult;
areturn
5: StackMap locals:
StackMap stack:
getstatic org.apache.tomcat.util.http.parser.SkipResult.FOUND:Lorg/apache/tomcat/util/http/parser/SkipResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 input Ljava/io/Reader;
0 6 1 c I
0 6 2 target C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
c
target
private void relax(boolean[], java.lang.String);
descriptor: ([ZLjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 9
aload 2
invokevirtual java.lang.String.length:()I
ifle 9
1: aload 2
invokevirtual java.lang.String.toCharArray:()[C
astore 3
start local 3 2: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 8
StackMap locals: org.apache.tomcat.util.http.parser.HttpParser boolean[] java.lang.String char[] top int int char[]
StackMap stack:
3: aload 7
iload 5
caload
istore 4
start local 4 4: iload 4
invokestatic org.apache.tomcat.util.http.parser.HttpParser.isRelaxable:(I)Z
ifeq 7
5: aload 1
iload 4
iconst_1
bastore
6: aload 0
getfield org.apache.tomcat.util.http.parser.HttpParser.IS_NOT_REQUEST_TARGET:[Z
iload 4
iconst_0
bastore
end local 4 7: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
iload 6
if_icmplt 3
end local 3 9: StackMap locals: org.apache.tomcat.util.http.parser.HttpParser boolean[] java.lang.String
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/tomcat/util/http/parser/HttpParser;
0 10 1 flags [Z
0 10 2 relaxedChars Ljava/lang/String;
2 9 3 chars [C
4 7 4 c C
MethodParameters:
Name Flags
flags
relaxedChars
}
SourceFile: "HttpParser.java"
NestMembers:
org.apache.tomcat.util.http.parser.HttpParser$DomainParseState
InnerClasses:
private final DomainParseState = org.apache.tomcat.util.http.parser.HttpParser$DomainParseState of org.apache.tomcat.util.http.parser.HttpParser