This file is indexed.

/usr/share/doc/libpion-doc/html/classpion_1_1http_1_1response__reader.html is in libpion-doc 5.0.7+dfsg-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.12"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>pion: pion::http::response_reader Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">pion
   &#160;<span id="projectnumber">5.0.6</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.12 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>pion</b></li><li class="navelem"><b>http</b></li><li class="navelem"><a class="el" href="classpion_1_1http_1_1response__reader.html">response_reader</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classpion_1_1http_1_1response__reader-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">pion::http::response_reader Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="response__reader_8hpp_source.html">response_reader.hpp</a>&gt;</code></p>

<p>Inherits <a class="el" href="classpion_1_1http_1_1reader.html">pion::http::reader</a>, and enable_shared_from_this&lt; response_reader &gt;.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a5ca8a2f566ad6c5f6c6ae264d557944e"><td class="memItemLeft" align="right" valign="top"><a id="a5ca8a2f566ad6c5f6c6ae264d557944e"></a>
typedef boost::function3&lt; void, http::response_ptr, tcp::connection_ptr, const boost::system::error_code &amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a></td></tr>
<tr class="memdesc:a5ca8a2f566ad6c5f6c6ae264d557944e"><td class="mdescLeft">&#160;</td><td class="mdescRight">function called after the HTTP message has been parsed <br /></td></tr>
<tr class="separator:a5ca8a2f566ad6c5f6c6ae264d557944e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a056c791c4b2dda0dd4c2037dd941d5d8 inherit pub_types_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a056c791c4b2dda0dd4c2037dd941d5d8"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a056c791c4b2dda0dd4c2037dd941d5d8">error_value_t</a> { <br />
&#160;&#160;<b>ERROR_METHOD_CHAR</b> = 1, 
<b>ERROR_METHOD_SIZE</b>, 
<b>ERROR_URI_CHAR</b>, 
<b>ERROR_URI_SIZE</b>, 
<br />
&#160;&#160;<b>ERROR_QUERY_CHAR</b>, 
<b>ERROR_QUERY_SIZE</b>, 
<b>ERROR_VERSION_EMPTY</b>, 
<b>ERROR_VERSION_CHAR</b>, 
<br />
&#160;&#160;<b>ERROR_STATUS_EMPTY</b>, 
<b>ERROR_STATUS_CHAR</b>, 
<b>ERROR_HEADER_CHAR</b>, 
<b>ERROR_HEADER_NAME_SIZE</b>, 
<br />
&#160;&#160;<b>ERROR_HEADER_VALUE_SIZE</b>, 
<b>ERROR_INVALID_CONTENT_LENGTH</b>, 
<b>ERROR_CHUNK_CHAR</b>, 
<b>ERROR_MISSING_CHUNK_DATA</b>, 
<br />
&#160;&#160;<b>ERROR_MISSING_HEADER_DATA</b>, 
<b>ERROR_MISSING_TOO_MUCH_CONTENT</b>
<br />
 }<tr class="memdesc:a056c791c4b2dda0dd4c2037dd941d5d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">class-specific error code values <br /></td></tr>
</td></tr>
<tr class="separator:a056c791c4b2dda0dd4c2037dd941d5d8 inherit pub_types_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abff772b79d2a912b0f9a4932d8f03a35 inherit pub_types_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="abff772b79d2a912b0f9a4932d8f03a35"></a>
typedef boost::function2&lt; void, const char *, std::size_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#abff772b79d2a912b0f9a4932d8f03a35">payload_handler_t</a></td></tr>
<tr class="memdesc:abff772b79d2a912b0f9a4932d8f03a35 inherit pub_types_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">callback type used to consume payload content <br /></td></tr>
<tr class="separator:abff772b79d2a912b0f9a4932d8f03a35 inherit pub_types_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acbf0d25e943c1947a928970792b6a273"><td class="memItemLeft" align="right" valign="top"><a id="acbf0d25e943c1947a928970792b6a273"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#acbf0d25e943c1947a928970792b6a273">set_headers_parsed_callback</a> (<a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a> &amp;h)</td></tr>
<tr class="memdesc:acbf0d25e943c1947a928970792b6a273"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets a function to be called after HTTP headers have been parsed <br /></td></tr>
<tr class="separator:acbf0d25e943c1947a928970792b6a273"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpion_1_1http_1_1reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpion_1_1http_1_1reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classpion_1_1http_1_1reader.html">pion::http::reader</a></td></tr>
<tr class="memitem:af9f883cb767252fb9976e229e68f20ea inherit pub_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top"><a id="af9f883cb767252fb9976e229e68f20ea"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#af9f883cb767252fb9976e229e68f20ea">receive</a> (void)</td></tr>
<tr class="memdesc:af9f883cb767252fb9976e229e68f20ea inherit pub_methods_classpion_1_1http_1_1reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Incrementally reads &amp; parses the HTTP message. <br /></td></tr>
<tr class="separator:af9f883cb767252fb9976e229e68f20ea inherit pub_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6df8c9dd8f6587b49eb54ce4f7ace431 inherit pub_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top"><a id="a6df8c9dd8f6587b49eb54ce4f7ace431"></a>
tcp::connection_ptr &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#a6df8c9dd8f6587b49eb54ce4f7ace431">get_connection</a> (void)</td></tr>
<tr class="memdesc:a6df8c9dd8f6587b49eb54ce4f7ace431 inherit pub_methods_classpion_1_1http_1_1reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns a shared pointer to the TCP connection <br /></td></tr>
<tr class="separator:a6df8c9dd8f6587b49eb54ce4f7ace431 inherit pub_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabe13844673a420869d0e0fe31e198ad inherit pub_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top"><a id="aabe13844673a420869d0e0fe31e198ad"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#aabe13844673a420869d0e0fe31e198ad">set_timeout</a> (boost::uint32_t seconds)</td></tr>
<tr class="memdesc:aabe13844673a420869d0e0fe31e198ad inherit pub_methods_classpion_1_1http_1_1reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets the maximum number of seconds for read operations <br /></td></tr>
<tr class="separator:aabe13844673a420869d0e0fe31e198ad inherit pub_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a33fe9cfd9bcae8868b817332d38a9261 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a33fe9cfd9bcae8868b817332d38a9261">parser</a> (const bool is_request, std::size_t max_content_length=<a class="el" href="classpion_1_1http_1_1parser.html#a77d2e93061f62e1b7028c783145adf22">DEFAULT_CONTENT_MAX</a>)</td></tr>
<tr class="separator:a33fe9cfd9bcae8868b817332d38a9261 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9df3da159b11389dba00e222410a599 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="ac9df3da159b11389dba00e222410a599"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ac9df3da159b11389dba00e222410a599">~parser</a> ()</td></tr>
<tr class="memdesc:ac9df3da159b11389dba00e222410a599 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">default destructor <br /></td></tr>
<tr class="separator:ac9df3da159b11389dba00e222410a599 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aead5bbb8da80c78bc2de3c264e4ace9c inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aead5bbb8da80c78bc2de3c264e4ace9c">parse</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:aead5bbb8da80c78bc2de3c264e4ace9c inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae77669284c876d7b107ba30a78af6d02 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ae77669284c876d7b107ba30a78af6d02">parse_missing_data</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, std::size_t len, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:ae77669284c876d7b107ba30a78af6d02 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a260cd824b499b128b8ab66fed24f1d2b inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a260cd824b499b128b8ab66fed24f1d2b">finish</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg) const</td></tr>
<tr class="separator:a260cd824b499b128b8ab66fed24f1d2b inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71fdd1e6e681a3bd932baf2bd6a9f9c9 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a71fdd1e6e681a3bd932baf2bd6a9f9c9">set_read_buffer</a> (const char *ptr, size_t len)</td></tr>
<tr class="separator:a71fdd1e6e681a3bd932baf2bd6a9f9c9 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7621cc581f4391f0a2cf4e824ba3f260 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a7621cc581f4391f0a2cf4e824ba3f260">load_read_pos</a> (const char *&amp;read_ptr, const char *&amp;read_end_ptr) const</td></tr>
<tr class="separator:a7621cc581f4391f0a2cf4e824ba3f260 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad41eedba2dd5977ffddb1bc65dddc8fc inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ad41eedba2dd5977ffddb1bc65dddc8fc">check_premature_eof</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg)</td></tr>
<tr class="separator:ad41eedba2dd5977ffddb1bc65dddc8fc inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f7f084f396c9c912d65426883b33a38 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a1f7f084f396c9c912d65426883b33a38">parse_headers_only</a> (bool b=true)</td></tr>
<tr class="separator:a1f7f084f396c9c912d65426883b33a38 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fb8ebee189b4c3613ee67c85e2ac9ce inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a0fb8ebee189b4c3613ee67c85e2ac9ce">skip_header_parsing</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg)</td></tr>
<tr class="separator:a0fb8ebee189b4c3613ee67c85e2ac9ce inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed8cfd92c078205e38294bd8109eb2d3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="aed8cfd92c078205e38294bd8109eb2d3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aed8cfd92c078205e38294bd8109eb2d3">reset</a> (void)</td></tr>
<tr class="memdesc:aed8cfd92c078205e38294bd8109eb2d3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">resets the parser to its initial state <br /></td></tr>
<tr class="separator:aed8cfd92c078205e38294bd8109eb2d3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58e821400613910d4bb57c8a1aa63cb5 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a58e821400613910d4bb57c8a1aa63cb5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a58e821400613910d4bb57c8a1aa63cb5">eof</a> (void) const</td></tr>
<tr class="memdesc:a58e821400613910d4bb57c8a1aa63cb5 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if there are no more bytes available in the read buffer <br /></td></tr>
<tr class="separator:a58e821400613910d4bb57c8a1aa63cb5 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24be24f6c7638e5e0847dd4eb09e4ed9 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a24be24f6c7638e5e0847dd4eb09e4ed9"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a24be24f6c7638e5e0847dd4eb09e4ed9">bytes_available</a> (void) const</td></tr>
<tr class="memdesc:a24be24f6c7638e5e0847dd4eb09e4ed9 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the number of bytes available in the read buffer <br /></td></tr>
<tr class="separator:a24be24f6c7638e5e0847dd4eb09e4ed9 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa505ce5bedb7a7d92dd7bbd061e1b149 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="aa505ce5bedb7a7d92dd7bbd061e1b149"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aa505ce5bedb7a7d92dd7bbd061e1b149">gcount</a> (void) const</td></tr>
<tr class="memdesc:aa505ce5bedb7a7d92dd7bbd061e1b149 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the number of bytes read during the last parse operation <br /></td></tr>
<tr class="separator:aa505ce5bedb7a7d92dd7bbd061e1b149 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26085369b07f5ad40e0dc806269c2e86 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a26085369b07f5ad40e0dc806269c2e86"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a26085369b07f5ad40e0dc806269c2e86">get_total_bytes_read</a> (void) const</td></tr>
<tr class="memdesc:a26085369b07f5ad40e0dc806269c2e86 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the total number of bytes read while parsing the HTTP message <br /></td></tr>
<tr class="separator:a26085369b07f5ad40e0dc806269c2e86 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aeeabeb4054793b18aa0b918365edd4 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a4aeeabeb4054793b18aa0b918365edd4"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a4aeeabeb4054793b18aa0b918365edd4">get_content_bytes_read</a> (void) const</td></tr>
<tr class="memdesc:a4aeeabeb4054793b18aa0b918365edd4 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the total number of bytes read while parsing the payload content <br /></td></tr>
<tr class="separator:a4aeeabeb4054793b18aa0b918365edd4 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcfe8ee4b6fd0b48654c8f8debc31c9c inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="abcfe8ee4b6fd0b48654c8f8debc31c9c"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#abcfe8ee4b6fd0b48654c8f8debc31c9c">get_max_content_length</a> (void) const</td></tr>
<tr class="memdesc:abcfe8ee4b6fd0b48654c8f8debc31c9c inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the maximum length for HTTP payload content <br /></td></tr>
<tr class="separator:abcfe8ee4b6fd0b48654c8f8debc31c9c inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65703997294e68c14a9099f5e61043c3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a65703997294e68c14a9099f5e61043c3"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a65703997294e68c14a9099f5e61043c3">get_raw_headers</a> (void) const</td></tr>
<tr class="memdesc:a65703997294e68c14a9099f5e61043c3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the raw HTTP headers saved by the parser <br /></td></tr>
<tr class="separator:a65703997294e68c14a9099f5e61043c3 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f0960109337bd3bc0c4c94fd82c2c23 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a3f0960109337bd3bc0c4c94fd82c2c23"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a3f0960109337bd3bc0c4c94fd82c2c23">get_save_raw_headers</a> (void) const</td></tr>
<tr class="memdesc:a3f0960109337bd3bc0c4c94fd82c2c23 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if the parser is saving raw HTTP header contents <br /></td></tr>
<tr class="separator:a3f0960109337bd3bc0c4c94fd82c2c23 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37e691fd12abb6be3bf2f0dda3c412d7 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a37e691fd12abb6be3bf2f0dda3c412d7"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a37e691fd12abb6be3bf2f0dda3c412d7">get_parse_headers_only</a> (void)</td></tr>
<tr class="memdesc:a37e691fd12abb6be3bf2f0dda3c412d7 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if parsing headers only <br /></td></tr>
<tr class="separator:a37e691fd12abb6be3bf2f0dda3c412d7 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67ca2f1cfe3de70b0f36c5a3d146a2ee inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a67ca2f1cfe3de70b0f36c5a3d146a2ee"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a67ca2f1cfe3de70b0f36c5a3d146a2ee">is_parsing_request</a> (void) const</td></tr>
<tr class="memdesc:a67ca2f1cfe3de70b0f36c5a3d146a2ee inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if the parser is being used to parse an HTTP request <br /></td></tr>
<tr class="separator:a67ca2f1cfe3de70b0f36c5a3d146a2ee inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3140ad44a1c86d57643929f568ae72a2 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a3140ad44a1c86d57643929f568ae72a2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a3140ad44a1c86d57643929f568ae72a2">is_parsing_response</a> (void) const</td></tr>
<tr class="memdesc:a3140ad44a1c86d57643929f568ae72a2 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if the parser is being used to parse an HTTP response <br /></td></tr>
<tr class="separator:a3140ad44a1c86d57643929f568ae72a2 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4605c605bf452336f34d7d48fce68ef6 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a4605c605bf452336f34d7d48fce68ef6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a4605c605bf452336f34d7d48fce68ef6">set_payload_handler</a> (<a class="el" href="classpion_1_1http_1_1parser.html#abff772b79d2a912b0f9a4932d8f03a35">payload_handler_t</a> &amp;h)</td></tr>
<tr class="memdesc:a4605c605bf452336f34d7d48fce68ef6 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">defines a callback function to be used for consuming payload content <br /></td></tr>
<tr class="separator:a4605c605bf452336f34d7d48fce68ef6 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6533144b6f6d1e93dd000360748ac271 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a6533144b6f6d1e93dd000360748ac271"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a6533144b6f6d1e93dd000360748ac271">set_max_content_length</a> (std::size_t n)</td></tr>
<tr class="memdesc:a6533144b6f6d1e93dd000360748ac271 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets the maximum length for HTTP payload content <br /></td></tr>
<tr class="separator:a6533144b6f6d1e93dd000360748ac271 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8834a77e417b4127bdda4fa79ff5fe59 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a8834a77e417b4127bdda4fa79ff5fe59"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a8834a77e417b4127bdda4fa79ff5fe59">reset_max_content_length</a> (void)</td></tr>
<tr class="memdesc:a8834a77e417b4127bdda4fa79ff5fe59 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">resets the maximum length for HTTP payload content to the default value <br /></td></tr>
<tr class="separator:a8834a77e417b4127bdda4fa79ff5fe59 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06b96d27daaea9ae3dd15f188e01f70b inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a06b96d27daaea9ae3dd15f188e01f70b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a06b96d27daaea9ae3dd15f188e01f70b">set_save_raw_headers</a> (bool b)</td></tr>
<tr class="memdesc:a06b96d27daaea9ae3dd15f188e01f70b inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets parameter for saving raw HTTP header content <br /></td></tr>
<tr class="separator:a06b96d27daaea9ae3dd15f188e01f70b inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f93047d2f938a845967d22073122311 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a3f93047d2f938a845967d22073122311"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a3f93047d2f938a845967d22073122311">set_logger</a> (<a class="el" href="structpion_1_1logger.html">logger</a> log_ptr)</td></tr>
<tr class="memdesc:a3f93047d2f938a845967d22073122311 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets the logger to be used <br /></td></tr>
<tr class="separator:a3f93047d2f938a845967d22073122311 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad799af46a7b4e3f1e27c047f76849d77 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="ad799af46a7b4e3f1e27c047f76849d77"></a>
<a class="el" href="structpion_1_1logger.html">logger</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ad799af46a7b4e3f1e27c047f76849d77">get_logger</a> (void)</td></tr>
<tr class="memdesc:ad799af46a7b4e3f1e27c047f76849d77 inherit pub_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the logger currently in use <br /></td></tr>
<tr class="separator:ad799af46a7b4e3f1e27c047f76849d77 inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac707ec5cecacf3b56c151e6891c5cf9d inherit pub_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ac707ec5cecacf3b56c151e6891c5cf9d">finish_header_parsing</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:ac707ec5cecacf3b56c151e6891c5cf9d inherit pub_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:af6fc5c10d090264225b72540c2c977b8"><td class="memItemLeft" align="right" valign="top">static boost::shared_ptr&lt; <a class="el" href="classpion_1_1http_1_1response__reader.html">response_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#af6fc5c10d090264225b72540c2c977b8">create</a> (const tcp::connection_ptr &amp;tcp_conn, const <a class="el" href="classpion_1_1http_1_1request.html">http::request</a> &amp;http_request, <a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a> handler)</td></tr>
<tr class="separator:af6fc5c10d090264225b72540c2c977b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a0688e577644445e854e6e9c1d614fd25 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a0688e577644445e854e6e9c1d614fd25">parse_uri</a> (const std::string &amp;uri, std::string &amp;proto, std::string &amp;host, boost::uint16_t &amp;port, std::string &amp;path, std::string &amp;query)</td></tr>
<tr class="separator:a0688e577644445e854e6e9c1d614fd25 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cda26a67405acd5ba04ee19bca52ea7 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a3cda26a67405acd5ba04ee19bca52ea7">parse_url_encoded</a> (ihash_multimap &amp;dict, const char *ptr, const std::size_t len)</td></tr>
<tr class="separator:a3cda26a67405acd5ba04ee19bca52ea7 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa297a0f51bb5a605fb99f188066d9e15 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aa297a0f51bb5a605fb99f188066d9e15">parse_multipart_form_data</a> (ihash_multimap &amp;dict, const std::string &amp;content_type, const char *ptr, const std::size_t len)</td></tr>
<tr class="separator:aa297a0f51bb5a605fb99f188066d9e15 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9a9744b9376e79d4cc05d8c37533bec inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#af9a9744b9376e79d4cc05d8c37533bec">parse_cookie_header</a> (ihash_multimap &amp;dict, const char *ptr, const std::size_t len, bool set_cookie_header)</td></tr>
<tr class="separator:af9a9744b9376e79d4cc05d8c37533bec inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf57ebb2c31ecb126d5c4b2aba305417 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aaf57ebb2c31ecb126d5c4b2aba305417">parse_cookie_header</a> (ihash_multimap &amp;dict, const std::string &amp;cookie_header, bool set_cookie_header)</td></tr>
<tr class="separator:aaf57ebb2c31ecb126d5c4b2aba305417 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a988623311585ce6097c90586f5711ee0 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a988623311585ce6097c90586f5711ee0">parse_url_encoded</a> (ihash_multimap &amp;dict, const std::string &amp;query)</td></tr>
<tr class="separator:a988623311585ce6097c90586f5711ee0 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a456501e5a0e9b83fb3c030b003b60676 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a456501e5a0e9b83fb3c030b003b60676">parse_multipart_form_data</a> (ihash_multimap &amp;dict, const std::string &amp;content_type, const std::string &amp;form_data)</td></tr>
<tr class="separator:a456501e5a0e9b83fb3c030b003b60676 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8bd069a0ae8fb51fb8ec6c3d02c065b inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ab8bd069a0ae8fb51fb8ec6c3d02c065b">parse_forwarded_for</a> (const std::string &amp;header, std::string &amp;public_ip)</td></tr>
<tr class="separator:ab8bd069a0ae8fb51fb8ec6c3d02c065b inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9313aa230ae4af4c30702c0605a1f701 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a9313aa230ae4af4c30702c0605a1f701"></a>
static <a class="el" href="classpion_1_1http_1_1parser_1_1error__category__t.html">error_category_t</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a9313aa230ae4af4c30702c0605a1f701">get_error_category</a> (void)</td></tr>
<tr class="memdesc:a9313aa230ae4af4c30702c0605a1f701 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns an instance of <a class="el" href="classpion_1_1http_1_1parser_1_1error__category__t.html" title="class-specific error category ">parser::error_category_t</a> <br /></td></tr>
<tr class="separator:a9313aa230ae4af4c30702c0605a1f701 inherit pub_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:adb7aa322ee7f9073b748a28079935255"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#adb7aa322ee7f9073b748a28079935255">response_reader</a> (const tcp::connection_ptr &amp;tcp_conn, const <a class="el" href="classpion_1_1http_1_1request.html">http::request</a> &amp;http_request, <a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a> handler)</td></tr>
<tr class="separator:adb7aa322ee7f9073b748a28079935255"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a538144396cd3744d01972fe857902c06"><td class="memItemLeft" align="right" valign="top"><a id="a538144396cd3744d01972fe857902c06"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a538144396cd3744d01972fe857902c06">read_bytes</a> (void)</td></tr>
<tr class="memdesc:a538144396cd3744d01972fe857902c06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads more bytes from the TCP connection. <br /></td></tr>
<tr class="separator:a538144396cd3744d01972fe857902c06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0108970a1783d3983dbfa16ba5d90e31"><td class="memItemLeft" align="right" valign="top"><a id="a0108970a1783d3983dbfa16ba5d90e31"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a0108970a1783d3983dbfa16ba5d90e31">finished_parsing_headers</a> (const boost::system::error_code &amp;ec)</td></tr>
<tr class="memdesc:a0108970a1783d3983dbfa16ba5d90e31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called after we have finished parsing the HTTP message headers. <br /></td></tr>
<tr class="separator:a0108970a1783d3983dbfa16ba5d90e31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a775a668c0fa10535ca7bf28103b1fdc6"><td class="memItemLeft" align="right" valign="top"><a id="a775a668c0fa10535ca7bf28103b1fdc6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a775a668c0fa10535ca7bf28103b1fdc6">finished_reading</a> (const boost::system::error_code &amp;ec)</td></tr>
<tr class="memdesc:a775a668c0fa10535ca7bf28103b1fdc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called after we have finished reading/parsing the HTTP message. <br /></td></tr>
<tr class="separator:a775a668c0fa10535ca7bf28103b1fdc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bd4bf810cb215ddf36f6cec31f5d078"><td class="memItemLeft" align="right" valign="top"><a id="a9bd4bf810cb215ddf36f6cec31f5d078"></a>
virtual <a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a9bd4bf810cb215ddf36f6cec31f5d078">get_message</a> (void)</td></tr>
<tr class="memdesc:a9bd4bf810cb215ddf36f6cec31f5d078"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the HTTP message being parsed. <br /></td></tr>
<tr class="separator:a9bd4bf810cb215ddf36f6cec31f5d078"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpion_1_1http_1_1reader"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpion_1_1http_1_1reader')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classpion_1_1http_1_1reader.html">pion::http::reader</a></td></tr>
<tr class="memitem:af9bdf6ead8b5caeae1d481e418e4dddc inherit pro_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#af9bdf6ead8b5caeae1d481e418e4dddc">reader</a> (const bool is_request, const tcp::connection_ptr &amp;tcp_conn)</td></tr>
<tr class="separator:af9bdf6ead8b5caeae1d481e418e4dddc inherit pro_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd7a8af3a502d6863ef5c2166d3d7208 inherit pro_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#afd7a8af3a502d6863ef5c2166d3d7208">consume_bytes</a> (const boost::system::error_code &amp;read_error, std::size_t bytes_read)</td></tr>
<tr class="separator:afd7a8af3a502d6863ef5c2166d3d7208 inherit pro_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc3496a25c7bd1fb3ecc704ed752b190 inherit pro_methods_classpion_1_1http_1_1reader"><td class="memItemLeft" align="right" valign="top"><a id="acc3496a25c7bd1fb3ecc704ed752b190"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1reader.html#acc3496a25c7bd1fb3ecc704ed752b190">consume_bytes</a> (void)</td></tr>
<tr class="memdesc:acc3496a25c7bd1fb3ecc704ed752b190 inherit pro_methods_classpion_1_1http_1_1reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Consumes bytes that have been read using an HTTP parser. <br /></td></tr>
<tr class="separator:acc3496a25c7bd1fb3ecc704ed752b190 inherit pro_methods_classpion_1_1http_1_1reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a7377c221aaf546cfaf98fdb308c8739e inherit pro_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a7377c221aaf546cfaf98fdb308c8739e">parse_headers</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:a7377c221aaf546cfaf98fdb308c8739e inherit pro_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e2d8624c889e364726dcb640724a486 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a8e2d8624c889e364726dcb640724a486">update_message_with_header_data</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg) const</td></tr>
<tr class="separator:a8e2d8624c889e364726dcb640724a486 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a658f65ec298a48e01054490da841f75c inherit pro_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a658f65ec298a48e01054490da841f75c">parse_chunks</a> (<a class="el" href="classpion_1_1http_1_1message.html#a4bcf1ea1d4e7a5637d04ae109adb5e46">http::message::chunk_cache_t</a> &amp;chunk_buffers, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:a658f65ec298a48e01054490da841f75c inherit pro_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaff1b32ea824c7d7782f8e58346506a7 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">boost::tribool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aaff1b32ea824c7d7782f8e58346506a7">consume_content</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, boost::system::error_code &amp;ec)</td></tr>
<tr class="separator:aaff1b32ea824c7d7782f8e58346506a7 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7234e092bdd29379a23b720e6566f56 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ac7234e092bdd29379a23b720e6566f56">consume_content_as_next_chunk</a> (<a class="el" href="classpion_1_1http_1_1message.html#a4bcf1ea1d4e7a5637d04ae109adb5e46">http::message::chunk_cache_t</a> &amp;chunk_buffers)</td></tr>
<tr class="separator:ac7234e092bdd29379a23b720e6566f56 inherit pro_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:ac06fea6a8b6b5383dacd99c313b6f77d"><td class="memItemLeft" align="right" valign="top"><a id="ac06fea6a8b6b5383dacd99c313b6f77d"></a>
http::response_ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#ac06fea6a8b6b5383dacd99c313b6f77d">m_http_msg</a></td></tr>
<tr class="memdesc:ac06fea6a8b6b5383dacd99c313b6f77d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The new HTTP message container being created. <br /></td></tr>
<tr class="separator:ac06fea6a8b6b5383dacd99c313b6f77d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff7c50ffd2cb1748620b6051d8f9233c"><td class="memItemLeft" align="right" valign="top"><a id="aff7c50ffd2cb1748620b6051d8f9233c"></a>
<a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#aff7c50ffd2cb1748620b6051d8f9233c">m_finished</a></td></tr>
<tr class="memdesc:aff7c50ffd2cb1748620b6051d8f9233c"><td class="mdescLeft">&#160;</td><td class="mdescRight">function called after the HTTP message has been parsed <br /></td></tr>
<tr class="separator:aff7c50ffd2cb1748620b6051d8f9233c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1671bc073f332ea3c14a09af89c99c83"><td class="memItemLeft" align="right" valign="top"><a id="a1671bc073f332ea3c14a09af89c99c83"></a>
<a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1response__reader.html#a1671bc073f332ea3c14a09af89c99c83">m_parsed_headers</a></td></tr>
<tr class="memdesc:a1671bc073f332ea3c14a09af89c99c83"><td class="mdescLeft">&#160;</td><td class="mdescRight">function called after the HTTP message headers have been parsed <br /></td></tr>
<tr class="separator:a1671bc073f332ea3c14a09af89c99c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:ac0df021ba559d1af96dc9b0a5fa99df5 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="ac0df021ba559d1af96dc9b0a5fa99df5"></a>
<a class="el" href="structpion_1_1logger.html">logger</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ac0df021ba559d1af96dc9b0a5fa99df5">m_logger</a></td></tr>
<tr class="memdesc:ac0df021ba559d1af96dc9b0a5fa99df5 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">primary logging interface used by this class <br /></td></tr>
<tr class="separator:ac0df021ba559d1af96dc9b0a5fa99df5 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c24acf28ddd9c6133be4aa3127da530 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a5c24acf28ddd9c6133be4aa3127da530"></a>
const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a5c24acf28ddd9c6133be4aa3127da530">m_is_request</a></td></tr>
<tr class="memdesc:a5c24acf28ddd9c6133be4aa3127da530 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">true if the message is an HTTP request; false if it is an HTTP response <br /></td></tr>
<tr class="separator:a5c24acf28ddd9c6133be4aa3127da530 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ca52095a690cb92197755a5eea24cd7 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a3ca52095a690cb92197755a5eea24cd7"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a3ca52095a690cb92197755a5eea24cd7">m_read_ptr</a></td></tr>
<tr class="memdesc:a3ca52095a690cb92197755a5eea24cd7 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">points to the next character to be consumed in the read_buffer <br /></td></tr>
<tr class="separator:a3ca52095a690cb92197755a5eea24cd7 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6788da854f2d77ae2c92c739d0a2c191 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a6788da854f2d77ae2c92c739d0a2c191"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a6788da854f2d77ae2c92c739d0a2c191">m_read_end_ptr</a></td></tr>
<tr class="memdesc:a6788da854f2d77ae2c92c739d0a2c191 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">points to the end of the read_buffer (last byte + 1) <br /></td></tr>
<tr class="separator:a6788da854f2d77ae2c92c739d0a2c191 inherit pro_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_attribs_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a77d2e93061f62e1b7028c783145adf22 inherit pub_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a77d2e93061f62e1b7028c783145adf22"></a>
static const std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a77d2e93061f62e1b7028c783145adf22">DEFAULT_CONTENT_MAX</a> = 1024 * 1024</td></tr>
<tr class="memdesc:a77d2e93061f62e1b7028c783145adf22 inherit pub_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for HTTP payload content <br /></td></tr>
<tr class="separator:a77d2e93061f62e1b7028c783145adf22 inherit pub_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_methods_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Static Protected Member Functions inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a50628b4ffc6ab8f0cf46873d6e8075bb inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a50628b4ffc6ab8f0cf46873d6e8075bb">compute_msg_status</a> (<a class="el" href="classpion_1_1http_1_1message.html">http::message</a> &amp;http_msg, bool msg_parsed_ok)</td></tr>
<tr class="separator:a50628b4ffc6ab8f0cf46873d6e8075bb inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d8875ea346743ed37ae0cd7c2a73672 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a0d8875ea346743ed37ae0cd7c2a73672">set_error</a> (boost::system::error_code &amp;ec, <a class="el" href="classpion_1_1http_1_1parser.html#a056c791c4b2dda0dd4c2037dd941d5d8">error_value_t</a> ev)</td></tr>
<tr class="separator:a0d8875ea346743ed37ae0cd7c2a73672 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad16455747863108b62c77d89bd5dcf0d inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="ad16455747863108b62c77d89bd5dcf0d"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ad16455747863108b62c77d89bd5dcf0d">create_error_category</a> (void)</td></tr>
<tr class="memdesc:ad16455747863108b62c77d89bd5dcf0d inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">creates the unique parser <a class="el" href="classpion_1_1http_1_1parser_1_1error__category__t.html" title="class-specific error category ">error_category_t</a> <br /></td></tr>
<tr class="separator:ad16455747863108b62c77d89bd5dcf0d inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1099c00a26a33a615dfd54fd945873c inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="aa1099c00a26a33a615dfd54fd945873c"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_char</b> (int c)</td></tr>
<tr class="separator:aa1099c00a26a33a615dfd54fd945873c inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf665f61057ffc430746134b88f20d11 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="aaf665f61057ffc430746134b88f20d11"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_control</b> (int c)</td></tr>
<tr class="separator:aaf665f61057ffc430746134b88f20d11 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e5e96ae29b09b95e407eb63403fa2a3 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a0e5e96ae29b09b95e407eb63403fa2a3"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_special</b> (int c)</td></tr>
<tr class="separator:a0e5e96ae29b09b95e407eb63403fa2a3 inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add90b4c4bb8cc44eb79d2e6ba989ae9a inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="add90b4c4bb8cc44eb79d2e6ba989ae9a"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_digit</b> (int c)</td></tr>
<tr class="separator:add90b4c4bb8cc44eb79d2e6ba989ae9a inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d83fdf4309c2b57284759948b2bbc4b inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a3d83fdf4309c2b57284759948b2bbc4b"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_hex_digit</b> (int c)</td></tr>
<tr class="separator:a3d83fdf4309c2b57284759948b2bbc4b inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeb585af8111e5a5f99d1ce87f6e107b inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="abeb585af8111e5a5f99d1ce87f6e107b"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_cookie_attribute</b> (const std::string &amp;name, bool set_cookie_header)</td></tr>
<tr class="separator:abeb585af8111e5a5f99d1ce87f6e107b inherit pro_static_methods_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_classpion_1_1http_1_1parser"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classpion_1_1http_1_1parser')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classpion_1_1http_1_1parser.html">pion::http::parser</a></td></tr>
<tr class="memitem:a5480070912368dd015d72d54fcbece66 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a5480070912368dd015d72d54fcbece66"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a5480070912368dd015d72d54fcbece66">STATUS_MESSAGE_MAX</a> = 1024</td></tr>
<tr class="memdesc:a5480070912368dd015d72d54fcbece66 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for response status message <br /></td></tr>
<tr class="separator:a5480070912368dd015d72d54fcbece66 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad781cc2dcdb333a8d286a4534d4509cb inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="ad781cc2dcdb333a8d286a4534d4509cb"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#ad781cc2dcdb333a8d286a4534d4509cb">METHOD_MAX</a> = 1024</td></tr>
<tr class="memdesc:ad781cc2dcdb333a8d286a4534d4509cb inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the request method <br /></td></tr>
<tr class="separator:ad781cc2dcdb333a8d286a4534d4509cb inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf1d822b13731ee6430d5cfd8ad78a95 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="adf1d822b13731ee6430d5cfd8ad78a95"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#adf1d822b13731ee6430d5cfd8ad78a95">RESOURCE_MAX</a> = 256 * 1024</td></tr>
<tr class="memdesc:adf1d822b13731ee6430d5cfd8ad78a95 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the resource requested <br /></td></tr>
<tr class="separator:adf1d822b13731ee6430d5cfd8ad78a95 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ef9e2d01055c727c40cd6af47cbfd2a inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a2ef9e2d01055c727c40cd6af47cbfd2a"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a2ef9e2d01055c727c40cd6af47cbfd2a">QUERY_STRING_MAX</a> = 1024 * 1024</td></tr>
<tr class="memdesc:a2ef9e2d01055c727c40cd6af47cbfd2a inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the query string <br /></td></tr>
<tr class="separator:a2ef9e2d01055c727c40cd6af47cbfd2a inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d75346e6643078bb48efe9c382497d inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="aa0d75346e6643078bb48efe9c382497d"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#aa0d75346e6643078bb48efe9c382497d">HEADER_NAME_MAX</a> = 1024</td></tr>
<tr class="memdesc:aa0d75346e6643078bb48efe9c382497d inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for an HTTP header name <br /></td></tr>
<tr class="separator:aa0d75346e6643078bb48efe9c382497d inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a803490d20fadf6ee1253dd9d62844dd8 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a803490d20fadf6ee1253dd9d62844dd8"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a803490d20fadf6ee1253dd9d62844dd8">HEADER_VALUE_MAX</a> = 1024 * 1024</td></tr>
<tr class="memdesc:a803490d20fadf6ee1253dd9d62844dd8 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for an HTTP header value <br /></td></tr>
<tr class="separator:a803490d20fadf6ee1253dd9d62844dd8 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a730afd8438cd3c179bafc7d9eaad27b6 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a730afd8438cd3c179bafc7d9eaad27b6"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a730afd8438cd3c179bafc7d9eaad27b6">QUERY_NAME_MAX</a> = 1024</td></tr>
<tr class="memdesc:a730afd8438cd3c179bafc7d9eaad27b6 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the name of a query string variable <br /></td></tr>
<tr class="separator:a730afd8438cd3c179bafc7d9eaad27b6 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0039834377ba6797d6628acf59f240 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a5b0039834377ba6797d6628acf59f240"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a5b0039834377ba6797d6628acf59f240">QUERY_VALUE_MAX</a> = 1024 * 1024</td></tr>
<tr class="memdesc:a5b0039834377ba6797d6628acf59f240 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the value of a query string variable <br /></td></tr>
<tr class="separator:a5b0039834377ba6797d6628acf59f240 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12cb4b88d7debd8467cc9de786721be2 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a12cb4b88d7debd8467cc9de786721be2"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a12cb4b88d7debd8467cc9de786721be2">COOKIE_NAME_MAX</a> = 1024</td></tr>
<tr class="memdesc:a12cb4b88d7debd8467cc9de786721be2 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the name of a cookie name <br /></td></tr>
<tr class="separator:a12cb4b88d7debd8467cc9de786721be2 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50ae5c379ee3ad611fa6874bfcd8ed83 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memItemLeft" align="right" valign="top"><a id="a50ae5c379ee3ad611fa6874bfcd8ed83"></a>
static const boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpion_1_1http_1_1parser.html#a50ae5c379ee3ad611fa6874bfcd8ed83">COOKIE_VALUE_MAX</a> = 1024 * 1024</td></tr>
<tr class="memdesc:a50ae5c379ee3ad611fa6874bfcd8ed83 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum length for the value of a cookie; also used for path and domain <br /></td></tr>
<tr class="separator:a50ae5c379ee3ad611fa6874bfcd8ed83 inherit pro_static_attribs_classpion_1_1http_1_1parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classpion_1_1http_1_1response__reader.html">response_reader</a>: asynchronously reads and parses HTTP responses </p>

<p>Definition at line <a class="el" href="response__reader_8hpp_source.html#l00031">31</a> of file <a class="el" href="response__reader_8hpp_source.html">response_reader.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="adb7aa322ee7f9073b748a28079935255"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb7aa322ee7f9073b748a28079935255">&sect;&nbsp;</a></span>response_reader()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">pion::http::response_reader::response_reader </td>
          <td>(</td>
          <td class="paramtype">const tcp::connection_ptr &amp;&#160;</td>
          <td class="paramname"><em>tcp_conn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpion_1_1http_1_1request.html">http::request</a> &amp;&#160;</td>
          <td class="paramname"><em>http_request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a>&#160;</td>
          <td class="paramname"><em>handler</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>protected constructor restricts creation of objects (use <a class="el" href="classpion_1_1http_1_1response__reader.html#af6fc5c10d090264225b72540c2c977b8">create()</a>)</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">tcp_conn</td><td>TCP connection containing a new message to parse </td></tr>
    <tr><td class="paramname">http_request</td><td>the request we are responding to </td></tr>
    <tr><td class="paramname">handler</td><td>function called after the message has been parsed </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="response__reader_8hpp_source.html#l00074">74</a> of file <a class="el" href="response__reader_8hpp_source.html">response_reader.hpp</a>.</p>

<p>References <a class="el" href="response__reader_8hpp_source.html#l00108">m_http_msg</a>, and <a class="el" href="http_2parser_8hpp_source.html#l00294">pion::http::parser::set_logger()</a>.</p>

<p>Referenced by <a class="el" href="response__reader_8hpp_source.html#l00054">create()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="af6fc5c10d090264225b72540c2c977b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6fc5c10d090264225b72540c2c977b8">&sect;&nbsp;</a></span>create()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static boost::shared_ptr&lt;<a class="el" href="classpion_1_1http_1_1response__reader.html">response_reader</a>&gt; pion::http::response_reader::create </td>
          <td>(</td>
          <td class="paramtype">const tcp::connection_ptr &amp;&#160;</td>
          <td class="paramname"><em>tcp_conn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpion_1_1http_1_1request.html">http::request</a> &amp;&#160;</td>
          <td class="paramname"><em>http_request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpion_1_1http_1_1response__reader.html#a5ca8a2f566ad6c5f6c6ae264d557944e">finished_handler_t</a>&#160;</td>
          <td class="paramname"><em>handler</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>creates new <a class="el" href="classpion_1_1http_1_1response__reader.html">response_reader</a> objects</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">tcp_conn</td><td>TCP connection containing a new message to parse </td></tr>
    <tr><td class="paramname">http_request</td><td>the request we are responding to </td></tr>
    <tr><td class="paramname">handler</td><td>function called after the message has been parsed </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="response__reader_8hpp_source.html#l00054">54</a> of file <a class="el" href="response__reader_8hpp_source.html">response_reader.hpp</a>.</p>

<p>References <a class="el" href="response__reader_8hpp_source.html#l00074">response_reader()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/pion/http/<a class="el" href="response__reader_8hpp_source.html">response_reader.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.12
</small></address>
</body>
</html>