line |
true |
false |
branch |
49
|
208 |
49 |
if (likely(buf_end - buf >= 16)) { |
51
|
2227 |
48 |
for (i = 0; i < 16; i++, ++buf) { |
52
|
160 |
2067 |
if (unlikely((unsigned char)*buf <= '\015') |
53
|
0 |
160 |
&& (*buf == '\015' || *buf == '\012')) { |
|
0 |
0 |
&& (*buf == '\015' || *buf == '\012')) { |
59
|
0 |
272 |
CHECK_EOF(); |
60
|
49 |
223 |
if (unlikely((unsigned char)*buf <= '\015') |
61
|
0 |
49 |
&& (*buf == '\015' || *buf == '\012')) { |
|
0 |
0 |
&& (*buf == '\015' || *buf == '\012')) { |
68
|
209 |
0 |
if (*buf == '\015') { |
70
|
0 |
209 |
EXPECT_CHAR('\012'); |
|
0 |
209 |
EXPECT_CHAR('\012'); |
85
|
0 |
0 |
buf = last_len < 3 ? buf : buf + last_len - 3; |
88
|
0 |
0 |
CHECK_EOF(); |
89
|
0 |
0 |
if (*buf == '\015') { |
91
|
0 |
0 |
CHECK_EOF(); |
92
|
0 |
0 |
EXPECT_CHAR('\012'); |
|
0 |
0 |
EXPECT_CHAR('\012'); |
94
|
0 |
0 |
} else if (*buf == '\012') { |
101
|
0 |
0 |
if (ret_cnt == 2) { |
115
|
0 |
56 |
CHECK_EOF(); |
116
|
56 |
0 |
if (! ('0' <= *buf && *buf <= '9')) { |
|
0 |
56 |
if (! ('0' <= *buf && *buf <= '9')) { |
122
|
0 |
112 |
CHECK_EOF(); |
123
|
56 |
56 |
if ('0' <= *buf && *buf <= '9') { |
|
56 |
0 |
if ('0' <= *buf && *buf <= '9') { |
138
|
0 |
57 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
1 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
|
0 |
56 |
EXPECT_CHAR('H'); EXPECT_CHAR('T'); EXPECT_CHAR('T'); EXPECT_CHAR('P'); |
139
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
|
0 |
56 |
EXPECT_CHAR('/'); EXPECT_CHAR('1'); EXPECT_CHAR('.'); |
149
|
1 |
264 |
CHECK_EOF(); |
150
|
55 |
209 |
if (*buf == '\015') { |
152
|
0 |
55 |
EXPECT_CHAR('\012'); |
|
0 |
55 |
EXPECT_CHAR('\012'); |
154
|
0 |
209 |
} else if (*buf == '\012') { |
158
|
0 |
209 |
if (*num_headers == max_headers) { |
162
|
154 |
55 |
if (*num_headers == 0 || ! (*buf == ' ' || *buf == '\t')) { |
|
154 |
0 |
if (*num_headers == 0 || ! (*buf == ' ' || *buf == '\t')) { |
|
154 |
0 |
if (*num_headers == 0 || ! (*buf == ' ' || *buf == '\t')) { |
167
|
0 |
1951 |
CHECK_EOF(); |
168
|
209 |
1742 |
if (*buf == ':') { |
170
|
0 |
1742 |
} else if (*buf < ' ') { |
178
|
0 |
418 |
CHECK_EOF(); |
179
|
209 |
209 |
if (! (*buf == ' ' || *buf == '\t')) { |
|
209 |
0 |
if (! (*buf == ' ' || *buf == '\t')) { |
187
|
0 |
209 |
if ((buf = get_token_to_eol(buf, buf_end, &headers[*num_headers].value, |
203
|
0 |
57 |
CHECK_EOF(); |
204
|
0 |
57 |
if (*buf == '\015') { |
206
|
0 |
0 |
EXPECT_CHAR('\012'); |
|
0 |
0 |
EXPECT_CHAR('\012'); |
207
|
0 |
57 |
} else if (*buf == '\012') { |
212
|
0 |
235 |
ADVANCE_TOKEN(*method, *method_len); |
|
57 |
178 |
ADVANCE_TOKEN(*method, *method_len); |
|
178 |
0 |
ADVANCE_TOKEN(*method, *method_len); |
|
0 |
178 |
ADVANCE_TOKEN(*method, *method_len); |
214
|
0 |
323 |
ADVANCE_TOKEN(*path, *path_len); |
|
57 |
266 |
ADVANCE_TOKEN(*path, *path_len); |
|
266 |
0 |
ADVANCE_TOKEN(*path, *path_len); |
|
0 |
266 |
ADVANCE_TOKEN(*path, *path_len); |
216
|
1 |
56 |
if ((buf = parse_http_version(buf, buf_end, minor_version, ret)) == NULL) { |
219
|
56 |
0 |
if (*buf == '\015') { |
221
|
0 |
56 |
EXPECT_CHAR('\012'); |
|
0 |
56 |
EXPECT_CHAR('\012'); |
222
|
0 |
0 |
} else if (*buf == '\012') { |
250
|
0 |
57 |
if (last_len != 0 && is_complete(buf, buf_end, last_len, &r) == NULL) { |
|
0 |
0 |
if (last_len != 0 && is_complete(buf, buf_end, last_len, &r) == NULL) { |
254
|
2 |
55 |
if ((buf = parse_request(buf, buf_end, method, method_len, path, path_len, |
272
|
0 |
0 |
if ((buf = parse_http_version(buf, buf_end, minor_version, ret)) == NULL) { |
276
|
0 |
0 |
if (*buf++ != ' ') { |
281
|
0 |
0 |
if ((buf = parse_int(buf, buf_end, status, ret)) == NULL) { |
285
|
0 |
0 |
if (*buf++ != ' ') { |
290
|
0 |
0 |
if ((buf = get_token_to_eol(buf, buf_end, msg, msg_len, ret)) == NULL) { |
314
|
0 |
0 |
if (last_len != 0 && is_complete(buf, buf_end, last_len, &r) == NULL) { |
|
0 |
0 |
if (last_len != 0 && is_complete(buf, buf_end, last_len, &r) == NULL) { |
318
|
0 |
0 |
if ((buf = parse_response(buf, buf_end, minor_version, status, msg, msg_len, |