mongrel 0.3.12.3 → 0.3.12.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +1 -1
- data/ext/http11/http11.c +1 -1
- data/ext/http11/http11_parser.c +504 -334
- data/lib/mongrel.rb +3 -11
- data/lib/mongrel/debug.rb +1 -1
- data/lib/mongrel/handlers.rb +22 -14
- metadata +2 -2
data/Rakefile
CHANGED
data/ext/http11/http11.c
CHANGED
@@ -520,7 +520,7 @@ void Init_http11()
|
|
520
520
|
DEF_GLOBAL(server_protocol, "SERVER_PROTOCOL");
|
521
521
|
DEF_GLOBAL(server_protocol_value, "HTTP/1.1");
|
522
522
|
DEF_GLOBAL(http_host, "HTTP_HOST");
|
523
|
-
DEF_GLOBAL(mongrel_version, "Mongrel 0.3.12.
|
523
|
+
DEF_GLOBAL(mongrel_version, "Mongrel 0.3.12.4");
|
524
524
|
DEF_GLOBAL(server_software, "SERVER_SOFTWARE");
|
525
525
|
DEF_GLOBAL(port_80, "80");
|
526
526
|
|
data/ext/http11/http11_parser.c
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
#line 18 "ext/http11/http11_parser.c"
|
18
18
|
static int http_parser_start = 0;
|
19
19
|
|
20
|
-
static int http_parser_first_final =
|
20
|
+
static int http_parser_first_final = 51;
|
21
21
|
|
22
22
|
static int http_parser_error = 1;
|
23
23
|
|
@@ -59,17 +59,21 @@ size_t http_parser_execute(http_parser *parser, const char *buffer, size_t len)
|
|
59
59
|
{
|
60
60
|
case 0:
|
61
61
|
switch( (*p) ) {
|
62
|
-
case
|
63
|
-
case
|
64
|
-
case 72: goto tr15;
|
65
|
-
case 79: goto tr16;
|
66
|
-
case 80: goto tr17;
|
67
|
-
case 84: goto tr18;
|
62
|
+
case 36: goto tr14;
|
63
|
+
case 95: goto tr14;
|
68
64
|
}
|
65
|
+
if ( (*p) < 48 ) {
|
66
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
67
|
+
goto tr14;
|
68
|
+
} else if ( (*p) > 57 ) {
|
69
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
70
|
+
goto tr14;
|
71
|
+
} else
|
72
|
+
goto tr14;
|
69
73
|
goto st1;
|
70
74
|
st1:
|
71
75
|
goto _out1;
|
72
|
-
|
76
|
+
tr14:
|
73
77
|
#line 14 "ext/http11/http11_parser.rl"
|
74
78
|
{MARK(parser, p); }
|
75
79
|
goto st2;
|
@@ -77,183 +81,159 @@ st2:
|
|
77
81
|
if ( ++p == pe )
|
78
82
|
goto _out2;
|
79
83
|
case 2:
|
80
|
-
#line
|
81
|
-
|
82
|
-
goto
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
goto
|
94
|
-
case 4:
|
95
|
-
if ( (*p) == 69 )
|
96
|
-
goto st5;
|
97
|
-
goto st1;
|
98
|
-
st5:
|
99
|
-
if ( ++p == pe )
|
100
|
-
goto _out5;
|
101
|
-
case 5:
|
102
|
-
if ( (*p) == 84 )
|
103
|
-
goto st6;
|
104
|
-
goto st1;
|
105
|
-
st6:
|
106
|
-
if ( ++p == pe )
|
107
|
-
goto _out6;
|
108
|
-
case 6:
|
109
|
-
if ( (*p) == 69 )
|
110
|
-
goto st7;
|
111
|
-
goto st1;
|
112
|
-
st7:
|
113
|
-
if ( ++p == pe )
|
114
|
-
goto _out7;
|
115
|
-
case 7:
|
116
|
-
if ( (*p) == 32 )
|
117
|
-
goto tr33;
|
84
|
+
#line 85 "ext/http11/http11_parser.c"
|
85
|
+
switch( (*p) ) {
|
86
|
+
case 32: goto tr17;
|
87
|
+
case 36: goto st32;
|
88
|
+
case 95: goto st32;
|
89
|
+
}
|
90
|
+
if ( (*p) < 48 ) {
|
91
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
92
|
+
goto st32;
|
93
|
+
} else if ( (*p) > 57 ) {
|
94
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
95
|
+
goto st32;
|
96
|
+
} else
|
97
|
+
goto st32;
|
118
98
|
goto st1;
|
119
|
-
|
99
|
+
tr17:
|
120
100
|
#line 30 "ext/http11/http11_parser.rl"
|
121
101
|
{
|
122
102
|
assert(p - parser->mark >= 0 && "buffer overflow");
|
123
103
|
if(parser->request_method != NULL)
|
124
104
|
parser->request_method(parser->data, parser->mark, p - parser->mark);
|
125
105
|
}
|
126
|
-
goto
|
127
|
-
|
106
|
+
goto st3;
|
107
|
+
st3:
|
128
108
|
if ( ++p == pe )
|
129
|
-
goto
|
130
|
-
case
|
131
|
-
#line
|
109
|
+
goto _out3;
|
110
|
+
case 3:
|
111
|
+
#line 112 "ext/http11/http11_parser.c"
|
132
112
|
switch( (*p) ) {
|
133
|
-
case 42: goto
|
134
|
-
case 43: goto
|
135
|
-
case 47: goto
|
136
|
-
case 58: goto
|
113
|
+
case 42: goto tr10;
|
114
|
+
case 43: goto tr11;
|
115
|
+
case 47: goto tr12;
|
116
|
+
case 58: goto tr13;
|
137
117
|
}
|
138
118
|
if ( (*p) < 65 ) {
|
139
119
|
if ( 45 <= (*p) && (*p) <= 57 )
|
140
|
-
goto
|
120
|
+
goto tr11;
|
141
121
|
} else if ( (*p) > 90 ) {
|
142
122
|
if ( 97 <= (*p) && (*p) <= 122 )
|
143
|
-
goto
|
123
|
+
goto tr11;
|
144
124
|
} else
|
145
|
-
goto
|
125
|
+
goto tr11;
|
146
126
|
goto st1;
|
147
|
-
|
127
|
+
tr10:
|
148
128
|
#line 14 "ext/http11/http11_parser.rl"
|
149
129
|
{MARK(parser, p); }
|
150
|
-
goto
|
151
|
-
|
130
|
+
goto st4;
|
131
|
+
st4:
|
152
132
|
if ( ++p == pe )
|
153
|
-
goto
|
154
|
-
case
|
155
|
-
#line
|
133
|
+
goto _out4;
|
134
|
+
case 4:
|
135
|
+
#line 136 "ext/http11/http11_parser.c"
|
156
136
|
if ( (*p) == 32 )
|
157
|
-
goto
|
137
|
+
goto tr19;
|
158
138
|
goto st1;
|
159
|
-
|
139
|
+
tr19:
|
160
140
|
#line 35 "ext/http11/http11_parser.rl"
|
161
141
|
{
|
162
142
|
assert(p - parser->mark >= 0 && "buffer overflow");
|
163
143
|
if(parser->request_uri != NULL)
|
164
144
|
parser->request_uri(parser->data, parser->mark, p - parser->mark);
|
165
145
|
}
|
166
|
-
goto
|
167
|
-
|
146
|
+
goto st5;
|
147
|
+
tr31:
|
168
148
|
#line 40 "ext/http11/http11_parser.rl"
|
169
149
|
{
|
170
150
|
assert(p - parser->mark >= 0 && "buffer overflow");
|
171
151
|
if(parser->query_string != NULL)
|
172
152
|
parser->query_string(parser->data, parser->mark, p - parser->mark);
|
173
153
|
}
|
174
|
-
goto
|
175
|
-
|
154
|
+
goto st5;
|
155
|
+
st5:
|
176
156
|
if ( ++p == pe )
|
177
|
-
goto
|
178
|
-
case
|
179
|
-
#line
|
157
|
+
goto _out5;
|
158
|
+
case 5:
|
159
|
+
#line 160 "ext/http11/http11_parser.c"
|
180
160
|
if ( (*p) == 72 )
|
181
|
-
goto
|
161
|
+
goto tr3;
|
182
162
|
goto st1;
|
183
|
-
|
163
|
+
tr3:
|
184
164
|
#line 14 "ext/http11/http11_parser.rl"
|
185
165
|
{MARK(parser, p); }
|
186
|
-
goto
|
187
|
-
|
166
|
+
goto st6;
|
167
|
+
st6:
|
188
168
|
if ( ++p == pe )
|
189
|
-
goto
|
190
|
-
case
|
191
|
-
#line
|
169
|
+
goto _out6;
|
170
|
+
case 6:
|
171
|
+
#line 172 "ext/http11/http11_parser.c"
|
192
172
|
if ( (*p) == 84 )
|
193
|
-
goto
|
173
|
+
goto st7;
|
194
174
|
goto st1;
|
195
|
-
|
175
|
+
st7:
|
196
176
|
if ( ++p == pe )
|
197
|
-
goto
|
198
|
-
case
|
177
|
+
goto _out7;
|
178
|
+
case 7:
|
199
179
|
if ( (*p) == 84 )
|
200
|
-
goto
|
180
|
+
goto st8;
|
201
181
|
goto st1;
|
202
|
-
|
182
|
+
st8:
|
203
183
|
if ( ++p == pe )
|
204
|
-
goto
|
205
|
-
case
|
184
|
+
goto _out8;
|
185
|
+
case 8:
|
206
186
|
if ( (*p) == 80 )
|
207
|
-
goto
|
187
|
+
goto st9;
|
208
188
|
goto st1;
|
209
|
-
|
189
|
+
st9:
|
210
190
|
if ( ++p == pe )
|
211
|
-
goto
|
212
|
-
case
|
191
|
+
goto _out9;
|
192
|
+
case 9:
|
213
193
|
if ( (*p) == 47 )
|
214
|
-
goto
|
194
|
+
goto st10;
|
215
195
|
goto st1;
|
216
|
-
|
196
|
+
st10:
|
217
197
|
if ( ++p == pe )
|
218
|
-
goto
|
219
|
-
case
|
198
|
+
goto _out10;
|
199
|
+
case 10:
|
220
200
|
if ( 48 <= (*p) && (*p) <= 57 )
|
221
|
-
goto
|
201
|
+
goto st11;
|
222
202
|
goto st1;
|
223
|
-
|
203
|
+
st11:
|
224
204
|
if ( ++p == pe )
|
225
|
-
goto
|
226
|
-
case
|
205
|
+
goto _out11;
|
206
|
+
case 11:
|
227
207
|
if ( (*p) == 46 )
|
228
|
-
goto
|
208
|
+
goto st12;
|
229
209
|
if ( 48 <= (*p) && (*p) <= 57 )
|
230
|
-
goto
|
210
|
+
goto st11;
|
231
211
|
goto st1;
|
232
|
-
|
212
|
+
st12:
|
233
213
|
if ( ++p == pe )
|
234
|
-
goto
|
235
|
-
case
|
214
|
+
goto _out12;
|
215
|
+
case 12:
|
236
216
|
if ( 48 <= (*p) && (*p) <= 57 )
|
237
|
-
goto
|
217
|
+
goto st13;
|
238
218
|
goto st1;
|
239
|
-
|
219
|
+
st13:
|
240
220
|
if ( ++p == pe )
|
241
|
-
goto
|
242
|
-
case
|
221
|
+
goto _out13;
|
222
|
+
case 13:
|
243
223
|
if ( (*p) == 13 )
|
244
|
-
goto
|
224
|
+
goto tr22;
|
245
225
|
if ( 48 <= (*p) && (*p) <= 57 )
|
246
|
-
goto
|
226
|
+
goto st13;
|
247
227
|
goto st1;
|
248
|
-
|
228
|
+
tr22:
|
249
229
|
#line 46 "ext/http11/http11_parser.rl"
|
250
230
|
{
|
251
231
|
assert(p - parser->mark >= 0 && "buffer overflow");
|
252
232
|
if(parser->http_version != NULL)
|
253
233
|
parser->http_version(parser->data, parser->mark, p - parser->mark);
|
254
234
|
}
|
255
|
-
goto
|
256
|
-
|
235
|
+
goto st14;
|
236
|
+
tr34:
|
257
237
|
#line 22 "ext/http11/http11_parser.rl"
|
258
238
|
{
|
259
239
|
assert(p - (parser->mark - 1) >= 0 && "buffer overflow");
|
@@ -263,161 +243,161 @@ tr49:
|
|
263
243
|
parser->mark+1, p - (parser->mark +1));
|
264
244
|
}
|
265
245
|
}
|
266
|
-
goto
|
267
|
-
|
246
|
+
goto st14;
|
247
|
+
st14:
|
268
248
|
if ( ++p == pe )
|
269
|
-
goto
|
270
|
-
case
|
271
|
-
#line
|
249
|
+
goto _out14;
|
250
|
+
case 14:
|
251
|
+
#line 252 "ext/http11/http11_parser.c"
|
272
252
|
if ( (*p) == 10 )
|
273
|
-
goto
|
253
|
+
goto st15;
|
274
254
|
goto st1;
|
275
|
-
|
255
|
+
st15:
|
276
256
|
if ( ++p == pe )
|
277
|
-
goto
|
278
|
-
case
|
257
|
+
goto _out15;
|
258
|
+
case 15:
|
279
259
|
switch( (*p) ) {
|
280
|
-
case 13: goto
|
281
|
-
case 33: goto
|
282
|
-
case 124: goto
|
283
|
-
case 126: goto
|
260
|
+
case 13: goto st16;
|
261
|
+
case 33: goto tr21;
|
262
|
+
case 124: goto tr21;
|
263
|
+
case 126: goto tr21;
|
284
264
|
}
|
285
265
|
if ( (*p) < 45 ) {
|
286
266
|
if ( (*p) > 39 ) {
|
287
267
|
if ( 42 <= (*p) && (*p) <= 43 )
|
288
|
-
goto
|
268
|
+
goto tr21;
|
289
269
|
} else if ( (*p) >= 35 )
|
290
|
-
goto
|
270
|
+
goto tr21;
|
291
271
|
} else if ( (*p) > 46 ) {
|
292
272
|
if ( (*p) < 65 ) {
|
293
273
|
if ( 48 <= (*p) && (*p) <= 57 )
|
294
|
-
goto
|
274
|
+
goto tr21;
|
295
275
|
} else if ( (*p) > 90 ) {
|
296
276
|
if ( 94 <= (*p) && (*p) <= 122 )
|
297
|
-
goto
|
277
|
+
goto tr21;
|
298
278
|
} else
|
299
|
-
goto
|
279
|
+
goto tr21;
|
300
280
|
} else
|
301
|
-
goto
|
281
|
+
goto tr21;
|
302
282
|
goto st1;
|
303
|
-
|
283
|
+
st16:
|
304
284
|
if ( ++p == pe )
|
305
|
-
goto
|
306
|
-
case
|
285
|
+
goto _out16;
|
286
|
+
case 16:
|
307
287
|
if ( (*p) == 10 )
|
308
|
-
goto
|
288
|
+
goto tr25;
|
309
289
|
goto st1;
|
310
|
-
|
290
|
+
tr25:
|
311
291
|
#line 52 "ext/http11/http11_parser.rl"
|
312
292
|
{
|
313
293
|
parser->body_start = p+1;
|
314
294
|
if(parser->header_done != NULL)
|
315
295
|
parser->header_done(parser->data, p, 0);
|
316
|
-
goto
|
296
|
+
goto _out51;
|
317
297
|
}
|
318
|
-
goto
|
319
|
-
|
298
|
+
goto st51;
|
299
|
+
st51:
|
320
300
|
if ( ++p == pe )
|
321
|
-
goto
|
322
|
-
case
|
323
|
-
#line
|
301
|
+
goto _out51;
|
302
|
+
case 51:
|
303
|
+
#line 304 "ext/http11/http11_parser.c"
|
324
304
|
goto st1;
|
325
|
-
|
305
|
+
tr21:
|
326
306
|
#line 16 "ext/http11/http11_parser.rl"
|
327
307
|
{ parser->field_start = p; }
|
328
|
-
goto
|
329
|
-
|
308
|
+
goto st17;
|
309
|
+
st17:
|
330
310
|
if ( ++p == pe )
|
331
|
-
goto
|
332
|
-
case
|
333
|
-
#line
|
311
|
+
goto _out17;
|
312
|
+
case 17:
|
313
|
+
#line 314 "ext/http11/http11_parser.c"
|
334
314
|
switch( (*p) ) {
|
335
|
-
case 33: goto
|
336
|
-
case 58: goto
|
337
|
-
case 124: goto
|
338
|
-
case 126: goto
|
315
|
+
case 33: goto st17;
|
316
|
+
case 58: goto tr16;
|
317
|
+
case 124: goto st17;
|
318
|
+
case 126: goto st17;
|
339
319
|
}
|
340
320
|
if ( (*p) < 45 ) {
|
341
321
|
if ( (*p) > 39 ) {
|
342
322
|
if ( 42 <= (*p) && (*p) <= 43 )
|
343
|
-
goto
|
323
|
+
goto st17;
|
344
324
|
} else if ( (*p) >= 35 )
|
345
|
-
goto
|
325
|
+
goto st17;
|
346
326
|
} else if ( (*p) > 46 ) {
|
347
327
|
if ( (*p) < 65 ) {
|
348
328
|
if ( 48 <= (*p) && (*p) <= 57 )
|
349
|
-
goto
|
329
|
+
goto st17;
|
350
330
|
} else if ( (*p) > 90 ) {
|
351
331
|
if ( 94 <= (*p) && (*p) <= 122 )
|
352
|
-
goto
|
332
|
+
goto st17;
|
353
333
|
} else
|
354
|
-
goto
|
334
|
+
goto st17;
|
355
335
|
} else
|
356
|
-
goto
|
336
|
+
goto st17;
|
357
337
|
goto st1;
|
358
|
-
|
338
|
+
tr16:
|
359
339
|
#line 17 "ext/http11/http11_parser.rl"
|
360
340
|
{
|
361
341
|
parser->field_len = (p - parser->field_start);
|
362
342
|
}
|
363
|
-
goto
|
364
|
-
|
343
|
+
goto st18;
|
344
|
+
st18:
|
365
345
|
if ( ++p == pe )
|
366
|
-
goto
|
367
|
-
case
|
368
|
-
#line
|
346
|
+
goto _out18;
|
347
|
+
case 18:
|
348
|
+
#line 349 "ext/http11/http11_parser.c"
|
369
349
|
if ( (*p) == 13 )
|
370
|
-
goto
|
371
|
-
goto
|
372
|
-
|
350
|
+
goto tr34;
|
351
|
+
goto tr37;
|
352
|
+
tr37:
|
373
353
|
#line 21 "ext/http11/http11_parser.rl"
|
374
354
|
{ MARK(parser, p); }
|
375
|
-
goto
|
376
|
-
|
355
|
+
goto st19;
|
356
|
+
st19:
|
377
357
|
if ( ++p == pe )
|
378
|
-
goto
|
379
|
-
case
|
380
|
-
#line
|
358
|
+
goto _out19;
|
359
|
+
case 19:
|
360
|
+
#line 361 "ext/http11/http11_parser.c"
|
381
361
|
if ( (*p) == 13 )
|
382
|
-
goto
|
383
|
-
goto
|
384
|
-
|
362
|
+
goto tr34;
|
363
|
+
goto st19;
|
364
|
+
tr11:
|
385
365
|
#line 14 "ext/http11/http11_parser.rl"
|
386
366
|
{MARK(parser, p); }
|
387
|
-
goto
|
388
|
-
|
367
|
+
goto st20;
|
368
|
+
st20:
|
389
369
|
if ( ++p == pe )
|
390
|
-
goto
|
391
|
-
case
|
392
|
-
#line
|
370
|
+
goto _out20;
|
371
|
+
case 20:
|
372
|
+
#line 373 "ext/http11/http11_parser.c"
|
393
373
|
switch( (*p) ) {
|
394
|
-
case 43: goto
|
395
|
-
case 58: goto
|
374
|
+
case 43: goto st20;
|
375
|
+
case 58: goto st21;
|
396
376
|
}
|
397
377
|
if ( (*p) < 48 ) {
|
398
378
|
if ( 45 <= (*p) && (*p) <= 46 )
|
399
|
-
goto
|
379
|
+
goto st20;
|
400
380
|
} else if ( (*p) > 57 ) {
|
401
381
|
if ( (*p) > 90 ) {
|
402
382
|
if ( 97 <= (*p) && (*p) <= 122 )
|
403
|
-
goto
|
383
|
+
goto st20;
|
404
384
|
} else if ( (*p) >= 65 )
|
405
|
-
goto
|
385
|
+
goto st20;
|
406
386
|
} else
|
407
|
-
goto
|
387
|
+
goto st20;
|
408
388
|
goto st1;
|
409
|
-
|
389
|
+
tr13:
|
410
390
|
#line 14 "ext/http11/http11_parser.rl"
|
411
391
|
{MARK(parser, p); }
|
412
|
-
goto
|
413
|
-
|
392
|
+
goto st21;
|
393
|
+
st21:
|
414
394
|
if ( ++p == pe )
|
415
|
-
goto
|
416
|
-
case
|
417
|
-
#line
|
395
|
+
goto _out21;
|
396
|
+
case 21:
|
397
|
+
#line 398 "ext/http11/http11_parser.c"
|
418
398
|
switch( (*p) ) {
|
419
|
-
case 32: goto
|
420
|
-
case 37: goto
|
399
|
+
case 32: goto tr19;
|
400
|
+
case 37: goto st22;
|
421
401
|
case 60: goto st1;
|
422
402
|
case 62: goto st1;
|
423
403
|
case 127: goto st1;
|
@@ -427,49 +407,49 @@ case 26:
|
|
427
407
|
goto st1;
|
428
408
|
} else if ( (*p) >= 0 )
|
429
409
|
goto st1;
|
430
|
-
goto
|
431
|
-
|
410
|
+
goto st21;
|
411
|
+
st22:
|
432
412
|
if ( ++p == pe )
|
433
|
-
goto
|
434
|
-
case
|
413
|
+
goto _out22;
|
414
|
+
case 22:
|
435
415
|
if ( (*p) < 65 ) {
|
436
416
|
if ( 48 <= (*p) && (*p) <= 57 )
|
437
|
-
goto
|
417
|
+
goto st23;
|
438
418
|
} else if ( (*p) > 70 ) {
|
439
419
|
if ( 97 <= (*p) && (*p) <= 102 )
|
440
|
-
goto
|
420
|
+
goto st23;
|
441
421
|
} else
|
442
|
-
goto
|
422
|
+
goto st23;
|
443
423
|
goto st1;
|
444
|
-
|
424
|
+
st23:
|
445
425
|
if ( ++p == pe )
|
446
|
-
goto
|
447
|
-
case
|
426
|
+
goto _out23;
|
427
|
+
case 23:
|
448
428
|
if ( (*p) < 65 ) {
|
449
429
|
if ( 48 <= (*p) && (*p) <= 57 )
|
450
|
-
goto
|
430
|
+
goto st21;
|
451
431
|
} else if ( (*p) > 70 ) {
|
452
432
|
if ( 97 <= (*p) && (*p) <= 102 )
|
453
|
-
goto
|
433
|
+
goto st21;
|
454
434
|
} else
|
455
|
-
goto
|
435
|
+
goto st21;
|
456
436
|
goto st1;
|
457
|
-
|
437
|
+
tr12:
|
458
438
|
#line 14 "ext/http11/http11_parser.rl"
|
459
439
|
{MARK(parser, p); }
|
460
|
-
goto
|
461
|
-
|
440
|
+
goto st24;
|
441
|
+
st24:
|
462
442
|
if ( ++p == pe )
|
463
|
-
goto
|
464
|
-
case
|
465
|
-
#line
|
443
|
+
goto _out24;
|
444
|
+
case 24:
|
445
|
+
#line 446 "ext/http11/http11_parser.c"
|
466
446
|
switch( (*p) ) {
|
467
|
-
case 32: goto
|
468
|
-
case 37: goto
|
447
|
+
case 32: goto tr19;
|
448
|
+
case 37: goto st26;
|
469
449
|
case 47: goto st1;
|
470
450
|
case 60: goto st1;
|
471
451
|
case 62: goto st1;
|
472
|
-
case 63: goto
|
452
|
+
case 63: goto tr28;
|
473
453
|
case 127: goto st1;
|
474
454
|
}
|
475
455
|
if ( (*p) > 31 ) {
|
@@ -477,17 +457,17 @@ case 29:
|
|
477
457
|
goto st1;
|
478
458
|
} else if ( (*p) >= 0 )
|
479
459
|
goto st1;
|
480
|
-
goto
|
481
|
-
|
460
|
+
goto st25;
|
461
|
+
st25:
|
482
462
|
if ( ++p == pe )
|
483
|
-
goto
|
484
|
-
case
|
463
|
+
goto _out25;
|
464
|
+
case 25:
|
485
465
|
switch( (*p) ) {
|
486
|
-
case 32: goto
|
487
|
-
case 37: goto
|
466
|
+
case 32: goto tr19;
|
467
|
+
case 37: goto st26;
|
488
468
|
case 60: goto st1;
|
489
469
|
case 62: goto st1;
|
490
|
-
case 63: goto
|
470
|
+
case 63: goto tr28;
|
491
471
|
case 127: goto st1;
|
492
472
|
}
|
493
473
|
if ( (*p) > 31 ) {
|
@@ -495,49 +475,49 @@ case 30:
|
|
495
475
|
goto st1;
|
496
476
|
} else if ( (*p) >= 0 )
|
497
477
|
goto st1;
|
498
|
-
goto
|
499
|
-
|
478
|
+
goto st25;
|
479
|
+
st26:
|
500
480
|
if ( ++p == pe )
|
501
|
-
goto
|
502
|
-
case
|
481
|
+
goto _out26;
|
482
|
+
case 26:
|
503
483
|
if ( (*p) < 65 ) {
|
504
484
|
if ( 48 <= (*p) && (*p) <= 57 )
|
505
|
-
goto
|
485
|
+
goto st27;
|
506
486
|
} else if ( (*p) > 70 ) {
|
507
487
|
if ( 97 <= (*p) && (*p) <= 102 )
|
508
|
-
goto
|
488
|
+
goto st27;
|
509
489
|
} else
|
510
|
-
goto
|
490
|
+
goto st27;
|
511
491
|
goto st1;
|
512
|
-
|
492
|
+
st27:
|
513
493
|
if ( ++p == pe )
|
514
|
-
goto
|
515
|
-
case
|
494
|
+
goto _out27;
|
495
|
+
case 27:
|
516
496
|
if ( (*p) < 65 ) {
|
517
497
|
if ( 48 <= (*p) && (*p) <= 57 )
|
518
|
-
goto
|
498
|
+
goto st25;
|
519
499
|
} else if ( (*p) > 70 ) {
|
520
500
|
if ( 97 <= (*p) && (*p) <= 102 )
|
521
|
-
goto
|
501
|
+
goto st25;
|
522
502
|
} else
|
523
|
-
goto
|
503
|
+
goto st25;
|
524
504
|
goto st1;
|
525
|
-
|
505
|
+
tr28:
|
526
506
|
#line 35 "ext/http11/http11_parser.rl"
|
527
507
|
{
|
528
508
|
assert(p - parser->mark >= 0 && "buffer overflow");
|
529
509
|
if(parser->request_uri != NULL)
|
530
510
|
parser->request_uri(parser->data, parser->mark, p - parser->mark);
|
531
511
|
}
|
532
|
-
goto
|
533
|
-
|
512
|
+
goto st28;
|
513
|
+
st28:
|
534
514
|
if ( ++p == pe )
|
535
|
-
goto
|
536
|
-
case
|
537
|
-
#line
|
515
|
+
goto _out28;
|
516
|
+
case 28:
|
517
|
+
#line 518 "ext/http11/http11_parser.c"
|
538
518
|
switch( (*p) ) {
|
539
|
-
case 32: goto
|
540
|
-
case 37: goto
|
519
|
+
case 32: goto tr31;
|
520
|
+
case 37: goto tr36;
|
541
521
|
case 60: goto st1;
|
542
522
|
case 62: goto st1;
|
543
523
|
case 127: goto st1;
|
@@ -547,19 +527,19 @@ case 33:
|
|
547
527
|
goto st1;
|
548
528
|
} else if ( (*p) >= 0 )
|
549
529
|
goto st1;
|
550
|
-
goto
|
551
|
-
|
530
|
+
goto tr35;
|
531
|
+
tr35:
|
552
532
|
#line 14 "ext/http11/http11_parser.rl"
|
553
533
|
{MARK(parser, p); }
|
554
|
-
goto
|
555
|
-
|
534
|
+
goto st29;
|
535
|
+
st29:
|
556
536
|
if ( ++p == pe )
|
557
|
-
goto
|
558
|
-
case
|
559
|
-
#line
|
537
|
+
goto _out29;
|
538
|
+
case 29:
|
539
|
+
#line 540 "ext/http11/http11_parser.c"
|
560
540
|
switch( (*p) ) {
|
561
|
-
case 32: goto
|
562
|
-
case 37: goto
|
541
|
+
case 32: goto tr31;
|
542
|
+
case 37: goto st30;
|
563
543
|
case 60: goto st1;
|
564
544
|
case 62: goto st1;
|
565
545
|
case 127: goto st1;
|
@@ -569,176 +549,368 @@ case 34:
|
|
569
549
|
goto st1;
|
570
550
|
} else if ( (*p) >= 0 )
|
571
551
|
goto st1;
|
572
|
-
goto
|
573
|
-
|
552
|
+
goto st29;
|
553
|
+
tr36:
|
574
554
|
#line 14 "ext/http11/http11_parser.rl"
|
575
555
|
{MARK(parser, p); }
|
576
|
-
goto
|
577
|
-
|
556
|
+
goto st30;
|
557
|
+
st30:
|
578
558
|
if ( ++p == pe )
|
579
|
-
goto
|
580
|
-
case
|
581
|
-
#line
|
559
|
+
goto _out30;
|
560
|
+
case 30:
|
561
|
+
#line 562 "ext/http11/http11_parser.c"
|
582
562
|
if ( (*p) < 65 ) {
|
583
563
|
if ( 48 <= (*p) && (*p) <= 57 )
|
584
|
-
goto
|
564
|
+
goto st31;
|
585
565
|
} else if ( (*p) > 70 ) {
|
586
566
|
if ( 97 <= (*p) && (*p) <= 102 )
|
587
|
-
goto
|
567
|
+
goto st31;
|
588
568
|
} else
|
589
|
-
goto
|
569
|
+
goto st31;
|
590
570
|
goto st1;
|
591
|
-
|
571
|
+
st31:
|
592
572
|
if ( ++p == pe )
|
593
|
-
goto
|
594
|
-
case
|
573
|
+
goto _out31;
|
574
|
+
case 31:
|
595
575
|
if ( (*p) < 65 ) {
|
596
576
|
if ( 48 <= (*p) && (*p) <= 57 )
|
597
|
-
goto
|
577
|
+
goto st29;
|
598
578
|
} else if ( (*p) > 70 ) {
|
599
579
|
if ( 97 <= (*p) && (*p) <= 102 )
|
580
|
+
goto st29;
|
581
|
+
} else
|
582
|
+
goto st29;
|
583
|
+
goto st1;
|
584
|
+
st32:
|
585
|
+
if ( ++p == pe )
|
586
|
+
goto _out32;
|
587
|
+
case 32:
|
588
|
+
switch( (*p) ) {
|
589
|
+
case 32: goto tr17;
|
590
|
+
case 36: goto st33;
|
591
|
+
case 95: goto st33;
|
592
|
+
}
|
593
|
+
if ( (*p) < 48 ) {
|
594
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
595
|
+
goto st33;
|
596
|
+
} else if ( (*p) > 57 ) {
|
597
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
598
|
+
goto st33;
|
599
|
+
} else
|
600
|
+
goto st33;
|
601
|
+
goto st1;
|
602
|
+
st33:
|
603
|
+
if ( ++p == pe )
|
604
|
+
goto _out33;
|
605
|
+
case 33:
|
606
|
+
switch( (*p) ) {
|
607
|
+
case 32: goto tr17;
|
608
|
+
case 36: goto st34;
|
609
|
+
case 95: goto st34;
|
610
|
+
}
|
611
|
+
if ( (*p) < 48 ) {
|
612
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
613
|
+
goto st34;
|
614
|
+
} else if ( (*p) > 57 ) {
|
615
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
600
616
|
goto st34;
|
601
617
|
} else
|
602
618
|
goto st34;
|
603
619
|
goto st1;
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
620
|
+
st34:
|
621
|
+
if ( ++p == pe )
|
622
|
+
goto _out34;
|
623
|
+
case 34:
|
624
|
+
switch( (*p) ) {
|
625
|
+
case 32: goto tr17;
|
626
|
+
case 36: goto st35;
|
627
|
+
case 95: goto st35;
|
628
|
+
}
|
629
|
+
if ( (*p) < 48 ) {
|
630
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
631
|
+
goto st35;
|
632
|
+
} else if ( (*p) > 57 ) {
|
633
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
634
|
+
goto st35;
|
635
|
+
} else
|
636
|
+
goto st35;
|
637
|
+
goto st1;
|
638
|
+
st35:
|
639
|
+
if ( ++p == pe )
|
640
|
+
goto _out35;
|
641
|
+
case 35:
|
642
|
+
switch( (*p) ) {
|
643
|
+
case 32: goto tr17;
|
644
|
+
case 36: goto st36;
|
645
|
+
case 95: goto st36;
|
646
|
+
}
|
647
|
+
if ( (*p) < 48 ) {
|
648
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
649
|
+
goto st36;
|
650
|
+
} else if ( (*p) > 57 ) {
|
651
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
652
|
+
goto st36;
|
653
|
+
} else
|
654
|
+
goto st36;
|
655
|
+
goto st1;
|
656
|
+
st36:
|
657
|
+
if ( ++p == pe )
|
658
|
+
goto _out36;
|
659
|
+
case 36:
|
660
|
+
switch( (*p) ) {
|
661
|
+
case 32: goto tr17;
|
662
|
+
case 36: goto st37;
|
663
|
+
case 95: goto st37;
|
664
|
+
}
|
665
|
+
if ( (*p) < 48 ) {
|
666
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
667
|
+
goto st37;
|
668
|
+
} else if ( (*p) > 57 ) {
|
669
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
670
|
+
goto st37;
|
671
|
+
} else
|
672
|
+
goto st37;
|
673
|
+
goto st1;
|
608
674
|
st37:
|
609
675
|
if ( ++p == pe )
|
610
676
|
goto _out37;
|
611
677
|
case 37:
|
612
|
-
|
613
|
-
|
678
|
+
switch( (*p) ) {
|
679
|
+
case 32: goto tr17;
|
680
|
+
case 36: goto st38;
|
681
|
+
case 95: goto st38;
|
682
|
+
}
|
683
|
+
if ( (*p) < 48 ) {
|
684
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
685
|
+
goto st38;
|
686
|
+
} else if ( (*p) > 57 ) {
|
687
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
688
|
+
goto st38;
|
689
|
+
} else
|
614
690
|
goto st38;
|
615
691
|
goto st1;
|
616
692
|
st38:
|
617
693
|
if ( ++p == pe )
|
618
694
|
goto _out38;
|
619
695
|
case 38:
|
620
|
-
|
621
|
-
goto
|
696
|
+
switch( (*p) ) {
|
697
|
+
case 32: goto tr17;
|
698
|
+
case 36: goto st39;
|
699
|
+
case 95: goto st39;
|
700
|
+
}
|
701
|
+
if ( (*p) < 48 ) {
|
702
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
703
|
+
goto st39;
|
704
|
+
} else if ( (*p) > 57 ) {
|
705
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
706
|
+
goto st39;
|
707
|
+
} else
|
708
|
+
goto st39;
|
622
709
|
goto st1;
|
623
|
-
tr15:
|
624
|
-
#line 14 "ext/http11/http11_parser.rl"
|
625
|
-
{MARK(parser, p); }
|
626
|
-
goto st39;
|
627
710
|
st39:
|
628
711
|
if ( ++p == pe )
|
629
712
|
goto _out39;
|
630
713
|
case 39:
|
631
|
-
|
632
|
-
|
714
|
+
switch( (*p) ) {
|
715
|
+
case 32: goto tr17;
|
716
|
+
case 36: goto st40;
|
717
|
+
case 95: goto st40;
|
718
|
+
}
|
719
|
+
if ( (*p) < 48 ) {
|
720
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
721
|
+
goto st40;
|
722
|
+
} else if ( (*p) > 57 ) {
|
723
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
724
|
+
goto st40;
|
725
|
+
} else
|
633
726
|
goto st40;
|
634
727
|
goto st1;
|
635
728
|
st40:
|
636
729
|
if ( ++p == pe )
|
637
730
|
goto _out40;
|
638
731
|
case 40:
|
639
|
-
|
732
|
+
switch( (*p) ) {
|
733
|
+
case 32: goto tr17;
|
734
|
+
case 36: goto st41;
|
735
|
+
case 95: goto st41;
|
736
|
+
}
|
737
|
+
if ( (*p) < 48 ) {
|
738
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
739
|
+
goto st41;
|
740
|
+
} else if ( (*p) > 57 ) {
|
741
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
742
|
+
goto st41;
|
743
|
+
} else
|
640
744
|
goto st41;
|
641
745
|
goto st1;
|
642
746
|
st41:
|
643
747
|
if ( ++p == pe )
|
644
748
|
goto _out41;
|
645
749
|
case 41:
|
646
|
-
|
647
|
-
goto
|
750
|
+
switch( (*p) ) {
|
751
|
+
case 32: goto tr17;
|
752
|
+
case 36: goto st42;
|
753
|
+
case 95: goto st42;
|
754
|
+
}
|
755
|
+
if ( (*p) < 48 ) {
|
756
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
757
|
+
goto st42;
|
758
|
+
} else if ( (*p) > 57 ) {
|
759
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
760
|
+
goto st42;
|
761
|
+
} else
|
762
|
+
goto st42;
|
648
763
|
goto st1;
|
649
|
-
tr16:
|
650
|
-
#line 14 "ext/http11/http11_parser.rl"
|
651
|
-
{MARK(parser, p); }
|
652
|
-
goto st42;
|
653
764
|
st42:
|
654
765
|
if ( ++p == pe )
|
655
766
|
goto _out42;
|
656
767
|
case 42:
|
657
|
-
|
658
|
-
|
768
|
+
switch( (*p) ) {
|
769
|
+
case 32: goto tr17;
|
770
|
+
case 36: goto st43;
|
771
|
+
case 95: goto st43;
|
772
|
+
}
|
773
|
+
if ( (*p) < 48 ) {
|
774
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
775
|
+
goto st43;
|
776
|
+
} else if ( (*p) > 57 ) {
|
777
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
778
|
+
goto st43;
|
779
|
+
} else
|
659
780
|
goto st43;
|
660
781
|
goto st1;
|
661
782
|
st43:
|
662
783
|
if ( ++p == pe )
|
663
784
|
goto _out43;
|
664
785
|
case 43:
|
665
|
-
|
786
|
+
switch( (*p) ) {
|
787
|
+
case 32: goto tr17;
|
788
|
+
case 36: goto st44;
|
789
|
+
case 95: goto st44;
|
790
|
+
}
|
791
|
+
if ( (*p) < 48 ) {
|
792
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
793
|
+
goto st44;
|
794
|
+
} else if ( (*p) > 57 ) {
|
795
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
796
|
+
goto st44;
|
797
|
+
} else
|
666
798
|
goto st44;
|
667
799
|
goto st1;
|
668
800
|
st44:
|
669
801
|
if ( ++p == pe )
|
670
802
|
goto _out44;
|
671
803
|
case 44:
|
672
|
-
|
804
|
+
switch( (*p) ) {
|
805
|
+
case 32: goto tr17;
|
806
|
+
case 36: goto st45;
|
807
|
+
case 95: goto st45;
|
808
|
+
}
|
809
|
+
if ( (*p) < 48 ) {
|
810
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
811
|
+
goto st45;
|
812
|
+
} else if ( (*p) > 57 ) {
|
813
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
814
|
+
goto st45;
|
815
|
+
} else
|
673
816
|
goto st45;
|
674
817
|
goto st1;
|
675
818
|
st45:
|
676
819
|
if ( ++p == pe )
|
677
820
|
goto _out45;
|
678
821
|
case 45:
|
679
|
-
|
822
|
+
switch( (*p) ) {
|
823
|
+
case 32: goto tr17;
|
824
|
+
case 36: goto st46;
|
825
|
+
case 95: goto st46;
|
826
|
+
}
|
827
|
+
if ( (*p) < 48 ) {
|
828
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
829
|
+
goto st46;
|
830
|
+
} else if ( (*p) > 57 ) {
|
831
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
832
|
+
goto st46;
|
833
|
+
} else
|
680
834
|
goto st46;
|
681
835
|
goto st1;
|
682
836
|
st46:
|
683
837
|
if ( ++p == pe )
|
684
838
|
goto _out46;
|
685
839
|
case 46:
|
686
|
-
|
840
|
+
switch( (*p) ) {
|
841
|
+
case 32: goto tr17;
|
842
|
+
case 36: goto st47;
|
843
|
+
case 95: goto st47;
|
844
|
+
}
|
845
|
+
if ( (*p) < 48 ) {
|
846
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
847
|
+
goto st47;
|
848
|
+
} else if ( (*p) > 57 ) {
|
849
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
850
|
+
goto st47;
|
851
|
+
} else
|
687
852
|
goto st47;
|
688
853
|
goto st1;
|
689
854
|
st47:
|
690
855
|
if ( ++p == pe )
|
691
856
|
goto _out47;
|
692
857
|
case 47:
|
693
|
-
|
694
|
-
goto
|
858
|
+
switch( (*p) ) {
|
859
|
+
case 32: goto tr17;
|
860
|
+
case 36: goto st48;
|
861
|
+
case 95: goto st48;
|
862
|
+
}
|
863
|
+
if ( (*p) < 48 ) {
|
864
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
865
|
+
goto st48;
|
866
|
+
} else if ( (*p) > 57 ) {
|
867
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
868
|
+
goto st48;
|
869
|
+
} else
|
870
|
+
goto st48;
|
695
871
|
goto st1;
|
696
|
-
tr17:
|
697
|
-
#line 14 "ext/http11/http11_parser.rl"
|
698
|
-
{MARK(parser, p); }
|
699
|
-
goto st48;
|
700
872
|
st48:
|
701
873
|
if ( ++p == pe )
|
702
874
|
goto _out48;
|
703
875
|
case 48:
|
704
|
-
#line 705 "ext/http11/http11_parser.c"
|
705
876
|
switch( (*p) ) {
|
706
|
-
case
|
707
|
-
case
|
877
|
+
case 32: goto tr17;
|
878
|
+
case 36: goto st49;
|
879
|
+
case 95: goto st49;
|
708
880
|
}
|
881
|
+
if ( (*p) < 48 ) {
|
882
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
883
|
+
goto st49;
|
884
|
+
} else if ( (*p) > 57 ) {
|
885
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
886
|
+
goto st49;
|
887
|
+
} else
|
888
|
+
goto st49;
|
709
889
|
goto st1;
|
710
890
|
st49:
|
711
891
|
if ( ++p == pe )
|
712
892
|
goto _out49;
|
713
893
|
case 49:
|
714
|
-
|
715
|
-
goto
|
894
|
+
switch( (*p) ) {
|
895
|
+
case 32: goto tr17;
|
896
|
+
case 36: goto st50;
|
897
|
+
case 95: goto st50;
|
898
|
+
}
|
899
|
+
if ( (*p) < 48 ) {
|
900
|
+
if ( 45 <= (*p) && (*p) <= 46 )
|
901
|
+
goto st50;
|
902
|
+
} else if ( (*p) > 57 ) {
|
903
|
+
if ( 65 <= (*p) && (*p) <= 90 )
|
904
|
+
goto st50;
|
905
|
+
} else
|
906
|
+
goto st50;
|
716
907
|
goto st1;
|
717
|
-
tr18:
|
718
|
-
#line 14 "ext/http11/http11_parser.rl"
|
719
|
-
{MARK(parser, p); }
|
720
|
-
goto st50;
|
721
908
|
st50:
|
722
909
|
if ( ++p == pe )
|
723
910
|
goto _out50;
|
724
911
|
case 50:
|
725
|
-
|
726
|
-
|
727
|
-
goto st51;
|
728
|
-
goto st1;
|
729
|
-
st51:
|
730
|
-
if ( ++p == pe )
|
731
|
-
goto _out51;
|
732
|
-
case 51:
|
733
|
-
if ( (*p) == 65 )
|
734
|
-
goto st52;
|
735
|
-
goto st1;
|
736
|
-
st52:
|
737
|
-
if ( ++p == pe )
|
738
|
-
goto _out52;
|
739
|
-
case 52:
|
740
|
-
if ( (*p) == 67 )
|
741
|
-
goto st6;
|
912
|
+
if ( (*p) == 32 )
|
913
|
+
goto tr17;
|
742
914
|
goto st1;
|
743
915
|
}
|
744
916
|
_out1: cs = 1; goto _out;
|
@@ -757,12 +929,12 @@ case 52:
|
|
757
929
|
_out14: cs = 14; goto _out;
|
758
930
|
_out15: cs = 15; goto _out;
|
759
931
|
_out16: cs = 16; goto _out;
|
932
|
+
_out51: cs = 51; goto _out;
|
760
933
|
_out17: cs = 17; goto _out;
|
761
934
|
_out18: cs = 18; goto _out;
|
762
935
|
_out19: cs = 19; goto _out;
|
763
936
|
_out20: cs = 20; goto _out;
|
764
937
|
_out21: cs = 21; goto _out;
|
765
|
-
_out53: cs = 53; goto _out;
|
766
938
|
_out22: cs = 22; goto _out;
|
767
939
|
_out23: cs = 23; goto _out;
|
768
940
|
_out24: cs = 24; goto _out;
|
@@ -792,8 +964,6 @@ case 52:
|
|
792
964
|
_out48: cs = 48; goto _out;
|
793
965
|
_out49: cs = 49; goto _out;
|
794
966
|
_out50: cs = 50; goto _out;
|
795
|
-
_out51: cs = 51; goto _out;
|
796
|
-
_out52: cs = 52; goto _out;
|
797
967
|
|
798
968
|
_out: {}
|
799
969
|
}
|
@@ -804,7 +974,7 @@ case 52:
|
|
804
974
|
if(parser->body_start) {
|
805
975
|
/* final \r\n combo encountered so stop right here */
|
806
976
|
|
807
|
-
#line
|
977
|
+
#line 978 "ext/http11/http11_parser.c"
|
808
978
|
#line 140 "ext/http11/http11_parser.rl"
|
809
979
|
parser->nread++;
|
810
980
|
}
|
@@ -817,7 +987,7 @@ int http_parser_finish(http_parser *parser)
|
|
817
987
|
int cs = parser->cs;
|
818
988
|
|
819
989
|
|
820
|
-
#line
|
990
|
+
#line 991 "ext/http11/http11_parser.c"
|
821
991
|
#line 151 "ext/http11/http11_parser.rl"
|
822
992
|
|
823
993
|
parser->cs = cs;
|