| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
|
|
|
|
|
|
package Protocol::HTTP2::StaticTable; |
|
2
|
11
|
|
|
11
|
|
52
|
use strict; |
|
|
11
|
|
|
|
|
17
|
|
|
|
11
|
|
|
|
|
289
|
|
|
3
|
11
|
|
|
11
|
|
51
|
use warnings; |
|
|
11
|
|
|
|
|
18
|
|
|
|
11
|
|
|
|
|
4540
|
|
|
4
|
|
|
|
|
|
|
require Exporter; |
|
5
|
|
|
|
|
|
|
our @ISA = qw(Exporter); |
|
6
|
|
|
|
|
|
|
our ( @stable, %rstable ); |
|
7
|
|
|
|
|
|
|
our @EXPORT = qw(@stable %rstable); |
|
8
|
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
|
@stable = ( |
|
10
|
|
|
|
|
|
|
[ ":authority", "" ], |
|
11
|
|
|
|
|
|
|
[ ":method", "GET" ], |
|
12
|
|
|
|
|
|
|
[ ":method", "POST" ], |
|
13
|
|
|
|
|
|
|
[ ":path", "/" ], |
|
14
|
|
|
|
|
|
|
[ ":path", "/index.html" ], |
|
15
|
|
|
|
|
|
|
[ ":scheme", "http" ], |
|
16
|
|
|
|
|
|
|
[ ":scheme", "https" ], |
|
17
|
|
|
|
|
|
|
[ ":status", "200" ], |
|
18
|
|
|
|
|
|
|
[ ":status", "204" ], |
|
19
|
|
|
|
|
|
|
[ ":status", "206" ], |
|
20
|
|
|
|
|
|
|
[ ":status", "304" ], |
|
21
|
|
|
|
|
|
|
[ ":status", "400" ], |
|
22
|
|
|
|
|
|
|
[ ":status", "404" ], |
|
23
|
|
|
|
|
|
|
[ ":status", "500" ], |
|
24
|
|
|
|
|
|
|
[ "accept-charset", "" ], |
|
25
|
|
|
|
|
|
|
[ "accept-encoding", "gzip, deflate" ], |
|
26
|
|
|
|
|
|
|
[ "accept-language", "" ], |
|
27
|
|
|
|
|
|
|
[ "accept-ranges", "" ], |
|
28
|
|
|
|
|
|
|
[ "accept", "" ], |
|
29
|
|
|
|
|
|
|
[ "access-control-allow-origin", "" ], |
|
30
|
|
|
|
|
|
|
[ "age", "" ], |
|
31
|
|
|
|
|
|
|
[ "allow", "" ], |
|
32
|
|
|
|
|
|
|
[ "authorization", "" ], |
|
33
|
|
|
|
|
|
|
[ "cache-control", "" ], |
|
34
|
|
|
|
|
|
|
[ "content-disposition", "" ], |
|
35
|
|
|
|
|
|
|
[ "content-encoding", "" ], |
|
36
|
|
|
|
|
|
|
[ "content-language", "" ], |
|
37
|
|
|
|
|
|
|
[ "content-length", "" ], |
|
38
|
|
|
|
|
|
|
[ "content-location", "" ], |
|
39
|
|
|
|
|
|
|
[ "content-range", "" ], |
|
40
|
|
|
|
|
|
|
[ "content-type", "" ], |
|
41
|
|
|
|
|
|
|
[ "cookie", "" ], |
|
42
|
|
|
|
|
|
|
[ "date", "" ], |
|
43
|
|
|
|
|
|
|
[ "etag", "" ], |
|
44
|
|
|
|
|
|
|
[ "expect", "" ], |
|
45
|
|
|
|
|
|
|
[ "expires", "" ], |
|
46
|
|
|
|
|
|
|
[ "from", "" ], |
|
47
|
|
|
|
|
|
|
[ "host", "" ], |
|
48
|
|
|
|
|
|
|
[ "if-match", "" ], |
|
49
|
|
|
|
|
|
|
[ "if-modified-since", "" ], |
|
50
|
|
|
|
|
|
|
[ "if-none-match", "" ], |
|
51
|
|
|
|
|
|
|
[ "if-range", "" ], |
|
52
|
|
|
|
|
|
|
[ "if-unmodified-since", "" ], |
|
53
|
|
|
|
|
|
|
[ "last-modified", "" ], |
|
54
|
|
|
|
|
|
|
[ "link", "" ], |
|
55
|
|
|
|
|
|
|
[ "location", "" ], |
|
56
|
|
|
|
|
|
|
[ "max-forwards", "" ], |
|
57
|
|
|
|
|
|
|
[ "proxy-authenticate", "" ], |
|
58
|
|
|
|
|
|
|
[ "proxy-authorization", "" ], |
|
59
|
|
|
|
|
|
|
[ "range", "" ], |
|
60
|
|
|
|
|
|
|
[ "referer", "" ], |
|
61
|
|
|
|
|
|
|
[ "refresh", "" ], |
|
62
|
|
|
|
|
|
|
[ "retry-after", "" ], |
|
63
|
|
|
|
|
|
|
[ "server", "" ], |
|
64
|
|
|
|
|
|
|
[ "set-cookie", "" ], |
|
65
|
|
|
|
|
|
|
[ "strict-transport-security", "" ], |
|
66
|
|
|
|
|
|
|
[ "transfer-encoding", "" ], |
|
67
|
|
|
|
|
|
|
[ "user-agent", "" ], |
|
68
|
|
|
|
|
|
|
[ "vary", "" ], |
|
69
|
|
|
|
|
|
|
[ "via", "" ], |
|
70
|
|
|
|
|
|
|
[ "www-authenticate", "" ], |
|
71
|
|
|
|
|
|
|
); |
|
72
|
|
|
|
|
|
|
|
|
73
|
|
|
|
|
|
|
for my $k ( 0 .. $#stable ) { |
|
74
|
|
|
|
|
|
|
my $key = join ' ', @{ $stable[$k] }; |
|
75
|
|
|
|
|
|
|
$rstable{$key} = $k + 1; |
|
76
|
|
|
|
|
|
|
$rstable{ $stable[$k]->[0] . ' ' } = $k + 1 |
|
77
|
|
|
|
|
|
|
if ( $stable[$k]->[1] ne '' |
|
78
|
|
|
|
|
|
|
&& !exists $rstable{ $stable[$k]->[0] . ' ' } ); |
|
79
|
|
|
|
|
|
|
} |
|
80
|
|
|
|
|
|
|
|
|
81
|
|
|
|
|
|
|
1; |