(httpd-site) 01/01: Automatic Site Publish by Buildbot

[email protected]
Newsgroups gmane.comp.apache.cvs
Message-ID <[email protected]>
This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch preview/docs-project-20260525-staging
in repository https://gitbox.apache.org/repos/asf/httpd-site.git

commit 1bbea6d6b47a40b4bbae5e0ba39ccb3cce4adf70
Author: buildbot <[email protected]>
AuthorDate: Tue May 26 22:20:23 2026 +0000

    Automatic Site Publish by Buildbot
---
 .asf.yaml                                          |    29 +
 output/ABOUT_APACHE.html                           |   280 +
 output/announcelist.html                           |    36 +
 output/apache_pb.gif                               |   Bin 0 -> 2326 bytes
 output/apreq/Apache-Cookie.html                    |   195 +
 output/apreq/Apache-Request.html                   |   380 +
 ...n_httpd_apreq-2_2include_2apreq_8h-example.html |   248 +
 output/apreq/docs/libapreq2/annotated.html         |    94 +
 output/apreq/docs/libapreq2/apreq_8h.html          |   946 +
 .../apreq/docs/libapreq2/apreq_8h__dep__incl.map   |    12 +
 .../apreq/docs/libapreq2/apreq_8h__dep__incl.md5   |     1 +
 .../apreq/docs/libapreq2/apreq_8h__dep__incl.png   |   Bin 0 -> 30645 bytes
 output/apreq/docs/libapreq2/apreq_8h__incl.map     |     5 +
 output/apreq/docs/libapreq2/apreq_8h__incl.md5     |     1 +
 output/apreq/docs/libapreq2/apreq_8h__incl.png     |   Bin 0 -> 5319 bytes
 output/apreq/docs/libapreq2/apreq_8h_source.html   |   248 +
 output/apreq/docs/libapreq2/apreq__cookie_8h.html  |   769 +
 .../docs/libapreq2/apreq__cookie_8h__dep__incl.map |     6 +
 .../docs/libapreq2/apreq__cookie_8h__dep__incl.md5 |     1 +
 .../docs/libapreq2/apreq__cookie_8h__dep__incl.png |   Bin 0 -> 8758 bytes
 .../docs/libapreq2/apreq__cookie_8h__incl.map      |     7 +
 .../docs/libapreq2/apreq__cookie_8h__incl.md5      |     1 +
 .../docs/libapreq2/apreq__cookie_8h__incl.png      |   Bin 0 -> 9379 bytes
 .../docs/libapreq2/apreq__cookie_8h_source.html    |   261 +
 output/apreq/docs/libapreq2/apreq__error_8h.html   |   491 +
 .../docs/libapreq2/apreq__error_8h__dep__incl.map  |     6 +
 .../docs/libapreq2/apreq__error_8h__dep__incl.md5  |     1 +
 .../docs/libapreq2/apreq__error_8h__dep__incl.png  |   Bin 0 -> 8641 bytes
 .../apreq/docs/libapreq2/apreq__error_8h__incl.map |     7 +
 .../apreq/docs/libapreq2/apreq__error_8h__incl.md5 |     1 +
 .../apreq/docs/libapreq2/apreq__error_8h__incl.png |   Bin 0 -> 9193 bytes
 .../docs/libapreq2/apreq__error_8h_source.html     |   154 +
 output/apreq/docs/libapreq2/apreq__module_8h.html  |  1210 +
 .../docs/libapreq2/apreq__module_8h__dep__incl.map |     5 +
 .../docs/libapreq2/apreq__module_8h__dep__incl.md5 |     1 +
 .../docs/libapreq2/apreq__module_8h__dep__incl.png |   Bin 0 -> 7194 bytes
 .../docs/libapreq2/apreq__module_8h__incl.map      |    13 +
 .../docs/libapreq2/apreq__module_8h__incl.md5      |     1 +
 .../docs/libapreq2/apreq__module_8h__incl.png      |   Bin 0 -> 22421 bytes
 .../docs/libapreq2/apreq__module_8h_source.html    |   364 +
 .../apreq__module__apache2_8h_source.html          |   139 +
 .../libapreq2/apreq__module__apache_8h_source.html |   133 +
 output/apreq/docs/libapreq2/apreq__param_8h.html   |   712 +
 .../docs/libapreq2/apreq__param_8h__dep__incl.map  |     7 +
 .../docs/libapreq2/apreq__param_8h__dep__incl.md5  |     1 +
 .../docs/libapreq2/apreq__param_8h__dep__incl.png  |   Bin 0 -> 10778 bytes
 .../apreq/docs/libapreq2/apreq__param_8h__incl.map |     7 +
 .../apreq/docs/libapreq2/apreq__param_8h__incl.md5 |     1 +
 .../apreq/docs/libapreq2/apreq__param_8h__incl.png |   Bin 0 -> 9725 bytes
 .../docs/libapreq2/apreq__param_8h_source.html     |   243 +
 output/apreq/docs/libapreq2/apreq__parser_8h.html  |   819 +
 .../docs/libapreq2/apreq__parser_8h__dep__incl.map |     6 +
 .../docs/libapreq2/apreq__parser_8h__dep__incl.md5 |     1 +
 .../docs/libapreq2/apreq__parser_8h__dep__incl.png |   Bin 0 -> 8678 bytes
 .../docs/libapreq2/apreq__parser_8h__incl.map      |     8 +
 .../docs/libapreq2/apreq__parser_8h__incl.md5      |     1 +
 .../docs/libapreq2/apreq__parser_8h__incl.png      |   Bin 0 -> 10534 bytes
 .../docs/libapreq2/apreq__parser_8h_source.html    |   261 +
 output/apreq/docs/libapreq2/apreq__util_8h.html    |  1137 +
 .../apreq/docs/libapreq2/apreq__util_8h__incl.map  |     8 +
 .../apreq/docs/libapreq2/apreq__util_8h__incl.md5  |     1 +
 .../apreq/docs/libapreq2/apreq__util_8h__incl.png  |   Bin 0 -> 11396 bytes
 .../docs/libapreq2/apreq__util_8h_source.html      |   299 +
 output/apreq/docs/libapreq2/apreq__version_8h.html |   280 +
 .../docs/libapreq2/apreq__version_8h__incl.map     |     7 +
 .../docs/libapreq2/apreq__version_8h__incl.md5     |     1 +
 .../docs/libapreq2/apreq__version_8h__incl.png     |   Bin 0 -> 9915 bytes
 .../docs/libapreq2/apreq__version_8h_source.html   |   155 +
 output/apreq/docs/libapreq2/apreq_changes.html     |   406 +
 output/apreq/docs/libapreq2/apreq_faq.html         |   155 +
 output/apreq/docs/libapreq2/apreq_install.html     |   143 +
 output/apreq/docs/libapreq2/apreq_license.html     |   285 +
 output/apreq/docs/libapreq2/apreq_notice.html      |    85 +
 output/apreq/docs/libapreq2/apreq_status.html      |   179 +
 output/apreq/docs/libapreq2/bc_s.png               |   Bin 0 -> 676 bytes
 output/apreq/docs/libapreq2/bdwn.png               |   Bin 0 -> 147 bytes
 output/apreq/docs/libapreq2/classes.html           |    88 +
 output/apreq/docs/libapreq2/closed.png             |   Bin 0 -> 132 bytes
 output/apreq/docs/libapreq2/customdoxygen.css      |  1843 +
 output/apreq/docs/libapreq2/dir_000002_000000.html |    82 +
 output/apreq/docs/libapreq2/dir_000003_000000.html |    82 +
 .../dir_a7b0466279106ea0b8f86f609f621680.html      |   103 +
 .../dir_a7b0466279106ea0b8f86f609f621680_dep.map   |     8 +
 .../dir_a7b0466279106ea0b8f86f609f621680_dep.md5   |     1 +
 .../dir_a7b0466279106ea0b8f86f609f621680_dep.png   |   Bin 0 -> 5557 bytes
 .../dir_b9a38c20fd386f968f52d9fe1a11fa5c.html      |    97 +
 .../dir_b9a38c20fd386f968f52d9fe1a11fa5c_dep.map   |     6 +
 .../dir_b9a38c20fd386f968f52d9fe1a11fa5c_dep.md5   |     1 +
 .../dir_b9a38c20fd386f968f52d9fe1a11fa5c_dep.png   |   Bin 0 -> 3891 bytes
 .../dir_cdd8a03ded30941fff17be6eb886221f.html      |    97 +
 .../dir_cdd8a03ded30941fff17be6eb886221f_dep.map   |     6 +
 .../dir_cdd8a03ded30941fff17be6eb886221f_dep.md5   |     1 +
 .../dir_cdd8a03ded30941fff17be6eb886221f_dep.png   |   Bin 0 -> 3398 bytes
 .../dir_d44c64559bbebec7f509842c48db8b23.html      |   114 +
 output/apreq/docs/libapreq2/doc.png                |   Bin 0 -> 746 bytes
 output/apreq/docs/libapreq2/doxygen.svg            |    26 +
 output/apreq/docs/libapreq2/dynsections.js         |   121 +
 output/apreq/docs/libapreq2/examples.html          |    86 +
 output/apreq/docs/libapreq2/feather.png            |   Bin 0 -> 21145 bytes
 output/apreq/docs/libapreq2/files.html             |   100 +
 output/apreq/docs/libapreq2/folderclosed.png       |   Bin 0 -> 616 bytes
 output/apreq/docs/libapreq2/folderopen.png         |   Bin 0 -> 597 bytes
 output/apreq/docs/libapreq2/functions.html         |   266 +
 output/apreq/docs/libapreq2/functions_vars.html    |   266 +
 output/apreq/docs/libapreq2/globals.html           |   571 +
 output/apreq/docs/libapreq2/globals_defs.html      |   244 +
 output/apreq/docs/libapreq2/globals_enum.html      |    92 +
 output/apreq/docs/libapreq2/globals_eval.html      |   104 +
 output/apreq/docs/libapreq2/globals_func.html      |   349 +
 output/apreq/docs/libapreq2/globals_type.html      |   110 +
 output/apreq/docs/libapreq2/graph_legend.html      |   142 +
 output/apreq/docs/libapreq2/graph_legend.md5       |     1 +
 output/apreq/docs/libapreq2/graph_legend.png       |   Bin 0 -> 20615 bytes
 .../apreq/docs/libapreq2/group__apreq__lang.html   |   106 +
 output/apreq/docs/libapreq2/group__apreq__lang.map |     4 +
 output/apreq/docs/libapreq2/group__apreq__lang.md5 |     1 +
 output/apreq/docs/libapreq2/group__apreq__lang.png |   Bin 0 -> 2426 bytes
 .../apreq/docs/libapreq2/group__apreq__module.html |   106 +
 .../apreq/docs/libapreq2/group__apreq__module.map  |     4 +
 .../apreq/docs/libapreq2/group__apreq__module.md5  |     1 +
 .../apreq/docs/libapreq2/group__apreq__module.png  |   Bin 0 -> 3312 bytes
 output/apreq/docs/libapreq2/group__apreq__xs.html  |   129 +
 output/apreq/docs/libapreq2/group__apreq__xs.map   |    13 +
 output/apreq/docs/libapreq2/group__apreq__xs.md5   |     1 +
 output/apreq/docs/libapreq2/group__apreq__xs.png   |   Bin 0 -> 34104 bytes
 .../libapreq2/group__apreq__xs__apr__request.html  |   530 +
 .../libapreq2/group__apreq__xs__apr__request.map   |     4 +
 .../libapreq2/group__apreq__xs__apr__request.md5   |     1 +
 .../libapreq2/group__apreq__xs__apr__request.png   |   Bin 0 -> 2285 bytes
 .../group__apreq__xs__apr__request__apache2.html   |   155 +
 .../group__apreq__xs__apr__request__apache2.map    |     4 +
 .../group__apreq__xs__apr__request__apache2.md5    |     1 +
 .../group__apreq__xs__apr__request__apache2.png    |   Bin 0 -> 3043 bytes
 .../group__apreq__xs__apr__request__cgi.html       |   155 +
 .../group__apreq__xs__apr__request__cgi.map        |     4 +
 .../group__apreq__xs__apr__request__cgi.md5        |     1 +
 .../group__apreq__xs__apr__request__cgi.png        |   Bin 0 -> 2452 bytes
 .../group__apreq__xs__apr__request__cookie.html    |   400 +
 .../group__apreq__xs__apr__request__cookie.map     |     4 +
 .../group__apreq__xs__apr__request__cookie.md5     |     1 +
 .../group__apreq__xs__apr__request__cookie.png     |   Bin 0 -> 2618 bytes
 .../group__apreq__xs__apr__request__error.html     |   233 +
 .../group__apreq__xs__apr__request__error.map      |     4 +
 .../group__apreq__xs__apr__request__error.md5      |     1 +
 .../group__apreq__xs__apr__request__error.png      |   Bin 0 -> 2361 bytes
 .../group__apreq__xs__apr__request__param.html     |   366 +
 .../group__apreq__xs__apr__request__param.map      |     4 +
 .../group__apreq__xs__apr__request__param.md5      |     1 +
 .../group__apreq__xs__apr__request__param.png      |   Bin 0 -> 2462 bytes
 .../docs/libapreq2/group__apreq__xs__cookie.html   |   426 +
 .../docs/libapreq2/group__apreq__xs__cookie.map    |     4 +
 .../docs/libapreq2/group__apreq__xs__cookie.md5    |     1 +
 .../docs/libapreq2/group__apreq__xs__cookie.png    |   Bin 0 -> 2523 bytes
 .../docs/libapreq2/group__apreq__xs__request.html  |   400 +
 .../docs/libapreq2/group__apreq__xs__request.map   |     4 +
 .../docs/libapreq2/group__apreq__xs__request.md5   |     1 +
 .../docs/libapreq2/group__apreq__xs__request.png   |   Bin 0 -> 2626 bytes
 .../docs/libapreq2/group__apreq__xs__upload.html   |   321 +
 .../docs/libapreq2/group__apreq__xs__upload.map    |     4 +
 .../docs/libapreq2/group__apreq__xs__upload.md5    |     1 +
 .../docs/libapreq2/group__apreq__xs__upload.png    |   Bin 0 -> 2445 bytes
 output/apreq/docs/libapreq2/group__libapreq2.html  |   121 +
 .../apreq/docs/libapreq2/group__mod__apreq2.html   |   196 +
 output/apreq/docs/libapreq2/group__mod__apreq2.map |     4 +
 output/apreq/docs/libapreq2/group__mod__apreq2.md5 |     1 +
 output/apreq/docs/libapreq2/group__mod__apreq2.png |   Bin 0 -> 3355 bytes
 output/apreq/docs/libapreq2/index.html             |   198 +
 output/apreq/docs/libapreq2/jquery.js              |    35 +
 output/apreq/docs/libapreq2/menu.js                |    51 +
 output/apreq/docs/libapreq2/menudata.js            |    76 +
 output/apreq/docs/libapreq2/modules.html           |   100 +
 output/apreq/docs/libapreq2/nav_f.png              |   Bin 0 -> 153 bytes
 output/apreq/docs/libapreq2/nav_g.png              |   Bin 0 -> 95 bytes
 output/apreq/docs/libapreq2/nav_h.png              |   Bin 0 -> 98 bytes
 output/apreq/docs/libapreq2/open.png               |   Bin 0 -> 123 bytes
 output/apreq/docs/libapreq2/pages.html             |    93 +
 output/apreq/docs/libapreq2/splitbar.png           |   Bin 0 -> 314 bytes
 .../docs/libapreq2/structapreq__cookie__t.html     |   244 +
 .../structapreq__cookie__t__coll__graph.map        |     4 +
 .../structapreq__cookie__t__coll__graph.md5        |     1 +
 .../structapreq__cookie__t__coll__graph.png        |   Bin 0 -> 3673 bytes
 .../docs/libapreq2/structapreq__handle__t.html     |   160 +
 .../structapreq__handle__t__coll__graph.map        |     8 +
 .../structapreq__handle__t__coll__graph.md5        |     1 +
 .../structapreq__handle__t__coll__graph.png        |   Bin 0 -> 14476 bytes
 .../structapreq__hook__find__param__ctx__t.html    |   116 +
 ...req__hook__find__param__ctx__t__coll__graph.map |     7 +
 ...req__hook__find__param__ctx__t__coll__graph.md5 |     1 +
 ...req__hook__find__param__ctx__t__coll__graph.png |   Bin 0 -> 13566 bytes
 .../apreq/docs/libapreq2/structapreq__hook__t.html |   172 +
 .../structapreq__hook__t__coll__graph.map          |     3 +
 .../structapreq__hook__t__coll__graph.md5          |     1 +
 .../structapreq__hook__t__coll__graph.png          |   Bin 0 -> 2677 bytes
 .../docs/libapreq2/structapreq__module__t.html     |   400 +
 .../structapreq__module__t__coll__graph.map        |     7 +
 .../structapreq__module__t__coll__graph.md5        |     1 +
 .../structapreq__module__t__coll__graph.png        |   Bin 0 -> 13415 bytes
 .../docs/libapreq2/structapreq__param__t.html      |   174 +
 .../structapreq__param__t__coll__graph.map         |     5 +
 .../structapreq__param__t__coll__graph.md5         |     1 +
 .../structapreq__param__t__coll__graph.png         |   Bin 0 -> 6677 bytes
 .../docs/libapreq2/structapreq__parser__t.html     |   241 +
 .../structapreq__parser__t__coll__graph.map        |     4 +
 .../structapreq__parser__t__coll__graph.md5        |     1 +
 .../structapreq__parser__t__coll__graph.png        |   Bin 0 -> 4782 bytes
 .../docs/libapreq2/structapreq__value__t.html      |   178 +
 output/apreq/docs/libapreq2/sync_off.png           |   Bin 0 -> 853 bytes
 output/apreq/docs/libapreq2/sync_on.png            |   Bin 0 -> 845 bytes
 output/apreq/docs/libapreq2/tab_a.png              |   Bin 0 -> 142 bytes
 output/apreq/docs/libapreq2/tab_b.png              |   Bin 0 -> 169 bytes
 output/apreq/docs/libapreq2/tab_h.png              |   Bin 0 -> 177 bytes
 output/apreq/docs/libapreq2/tab_s.png              |   Bin 0 -> 184 bytes
 output/apreq/docs/libapreq2/tabs.css               |     1 +
 output/apreq/docs/libapreq2/todo.html              |    91 +
 output/apreq/download.cgi                          |     6 +
 output/apreq/download.html                         |   140 +
 output/apreq/index.html                            |   138 +
 output/apreq/libapreq.html                         |   447 +
 output/bug_report.html                             |   181 +
 output/contribute/index.html                       |   139 +
 output/contributors/index.html                     |  1018 +
 output/css/apsite.css                              |  1262 +
 output/dev/API-dict.html                           | 15726 +++++++
 output/dev/API.html                                |   806 +
 output/dev/debugging.html                          |   529 +
 output/dev/devnotes.html                           |   243 +
 output/dev/fetch-from-cvs.txt                      |    42 +
 output/dev/footer.html                             |     1 +
 output/dev/guidelines.html                         |   494 +
 output/dev/header.html                             |     3 +
 output/dev/images/apache_feather_bullet.gif        |   Bin 0 -> 719 bytes
 output/dev/images/apache_logo.gif                  |   Bin 0 -> 23991 bytes
 output/dev/index.html                              |   191 +
 output/dev/patches.html                            |   266 +
 output/dev/platforms.html                          |    81 +
 output/dev/ports.html                              |    87 +
 output/dev/project-plan.html                       |    94 +
 output/dev/release.html                            |   466 +
 output/dev/robots.txt                              |     0
 output/dev/styleguide.html                         |   262 +
 output/dev/todo.html                               |    99 +
 output/dev/verification.html                       |   260 +
 output/dev/voting.html                             |   400 +
 output/dev/whiteboard/README                       |     6 +
 output/dev/whiteboard/api-middle.txt               |   104 +
 output/dev/whiteboard/overview_aek                 |   172 +
 output/dev/whiteboard/page_io                      |   166 +
 output/dev/whiteboard/process-model.html           |   431 +
 output/dev/whiteboard/process_model                |    23 +
 output/dev/whiteboard/some_reasons_for_layered_io  |    37 +
 output/dev/whiteboard/stacked_io                   |   554 +
 output/doap.rdf                                    |    81 +
 output/docs-project/avail_translations.html        |  2269 +
 output/docs-project/contribute.html                |   194 +
 output/docs-project/contributors.html              |   230 +
 output/docs-project/docsformat.html                |   230 +
 output/docs-project/goingfurther.html              |   183 +
 output/docs-project/index.html                     |   183 +
 output/docs-project/mod_template.txt               |   192 +
 output/docs-project/modifs-detection               |    39 +
 output/docs-project/style-guide.html               |   543 +
 output/docs-project/svn.html                       |   185 +
 output/docs-project/tools.html                     |   268 +
 output/docs-project/translations.html              |   205 +
 output/docs/index.html                             |   138 +
 output/download.cgi                                |     6 +
 output/download.html                               |   253 +
 output/extpaths.txt                                |     1 +
 output/favicon.ico                                 |   Bin 0 -> 15406 bytes
 output/images/99POYlede.gif                        |   Bin 0 -> 6124 bytes
 output/images/ACNA2010_120x240_basic.gif           |   Bin 0 -> 9490 bytes
 output/images/ACNA2010_125x125_basic.gif           |   Bin 0 -> 6992 bytes
 output/images/ACNA2010_234x60_basic.gif            |   Bin 0 -> 6547 bytes
 output/images/ACNA2010_468x60_basic.gif            |   Bin 0 -> 9766 bytes
 output/images/SWTopFame.gif                        |   Bin 0 -> 8094 bytes
 output/images/SWTopFame00.gif                      |   Bin 0 -> 5391 bytes
 output/images/SWTopFame98.gif                      |   Bin 0 -> 8094 bytes
 output/images/SWTopFame99.gif                      |   Bin 0 -> 8074 bytes
 output/images/SWshowcase.gif                       |   Bin 0 -> 12477 bytes
 output/images/acna-glossy-wide.png                 |   Bin 0 -> 19895 bytes
 output/images/apache_email.gif                     |   Bin 0 -> 1519 bytes
 output/images/apache_feather.gif                   |   Bin 0 -> 979 bytes
 output/images/apache_feather_bullet.gif            |   Bin 0 -> 719 bytes
 output/images/apache_feather_promo.gif             |   Bin 0 -> 974 bytes
 output/images/apache_home.gif                      |   Bin 0 -> 1465 bytes
 output/images/apache_index.gif                     |   Bin 0 -> 1540 bytes
 output/images/apache_logo.gif                      |   Bin 0 -> 23439 bytes
 output/images/apache_pb.gif                        |   Bin 0 -> 2326 bytes
 output/images/apache_pb3.gif                       |   Bin 0 -> 1314 bytes
 output/images/apache_pb_1.0.gif                    |   Bin 0 -> 1743 bytes
 output/images/apache_sub.gif                       |   Bin 0 -> 6083 bytes
 output/images/asf_logo_wide.gif                    |   Bin 0 -> 5866 bytes
 output/images/chuck.jpg                            |   Bin 0 -> 10016 bytes
 output/images/coar.gif                             |   Bin 0 -> 18136 bytes
 output/images/erik.jpg                             |   Bin 0 -> 7106 bytes
 output/images/graybar.gif                          |   Bin 0 -> 197 bytes
 output/images/httpd_logo_wide.ai                   |   690 +
 output/images/httpd_logo_wide.gif                  |   Bin 0 -> 9777 bytes
 output/images/httpd_logo_wide.png                  |   Bin 0 -> 10152 bytes
 output/images/httpd_logo_wide.psd                  |   Bin 0 -> 106481 bytes
 output/images/httpd_logo_wide_new.png              |   Bin 0 -> 19597 bytes
 output/images/httpd_logo_wide_old.png              |   Bin 0 -> 32355 bytes
 output/images/icing.png                            |   Bin 0 -> 61029 bytes
 output/images/kess.gif                             |   Bin 0 -> 14446 bytes
 output/images/noirin.jpg                           |   Bin 0 -> 18110 bytes
 output/images/orange_ball.gif                      |   Bin 0 -> 187 bytes
 output/images/pctony.jpg                           |   Bin 0 -> 18585 bytes
 output/images/powered_by.gif                       |   Bin 0 -> 2705 bytes
 output/images/rasmus.jpg                           |   Bin 0 -> 14628 bytes
 output/images/rbowen.jpg                           |   Bin 0 -> 13285 bytes
 output/images/small_feather.gif                    |   Bin 0 -> 1933 bytes
 output/images/smiley.xbm                           |     6 +
 output/images/stein.jpg                            |   Bin 0 -> 6851 bytes
 output/index.html                                  |   145 +
 output/info/apache_books.html                      |    31 +
 output/info/apache_on_linux.html                   |    60 +
 output/info/apache_users.html                      |   740 +
 .../info/css-security/apache_1.3.11_css_patch.txt  |   581 +
 output/info/css-security/apache_specific.html      |   105 +
 output/info/css-security/encoding_examples.html    |   167 +
 output/info/css-security/index.html                |   147 +
 output/info/index.html                             |   126 +
 output/info/security_bulletin_20020617.txt         |    82 +
 output/info/security_bulletin_20020620.txt         |    99 +
 output/info/security_bulletin_20020809a.txt        |    67 +
 output/library/index.html                          |    71 +
 output/lists.html                                  |   313 +
 output/mod_fcgid/index.html                        |   157 +
 output/mod_ftp/doap.rdf                            |   101 +
 output/mod_ftp/index.html                          |   153 +
 output/mod_mbox/index.html                         |   168 +
 output/mod_mbox/install.html                       |   190 +
 output/mod_mbox/ref.html                           |   166 +
 output/mod_smtpd/index.html                        |   162 +
 output/mod_smtpd/install.html                      |   155 +
 output/modules/index.html                          |   280 +
 output/press/04apr96.txt                           |    52 +
 output/press/05Jan98.txt                           |    92 +
 output/press/22Jun98.html                          |   110 +
 output/press/22Jun98.txt                           |    79 +
 output/robots.txt                                  |     3 +
 output/security/CVE-2011-3192.txt                  |   266 +
 output/security/impact_levels.html                 |   151 +
 output/security/json/CVE-1999-1199.json            |    86 +
 output/security/json/CVE-2000-0505.json            |   121 +
 output/security/json/CVE-2000-0913.json            |   127 +
 output/security/json/CVE-2000-1204.json            |    91 +
 output/security/json/CVE-2000-1205.json            |   116 +
 output/security/json/CVE-2000-1206.json            |   111 +
 output/security/json/CVE-2001-0729.json            |    92 +
 output/security/json/CVE-2001-0730.json            |   147 +
 output/security/json/CVE-2001-0731.json            |   147 +
 output/security/json/CVE-2001-0925.json            |    96 +
 output/security/json/CVE-2001-1342.json            |   141 +
 output/security/json/CVE-2002-0061.json            |   151 +
 output/security/json/CVE-2002-0392.json            |   177 +
 output/security/json/CVE-2002-0654.json            |   107 +
 output/security/json/CVE-2002-0661.json            |   107 +
 output/security/json/CVE-2002-0839.json            |   167 +
 output/security/json/CVE-2002-0840.json            |   202 +
 output/security/json/CVE-2002-0843.json            |   167 +
 output/security/json/CVE-2002-1156.json            |    81 +
 output/security/json/CVE-2002-1592.json            |    87 +
 output/security/json/CVE-2002-1593.json            |   107 +
 output/security/json/CVE-2003-0016.json            |   122 +
 output/security/json/CVE-2003-0017.json            |   122 +
 output/security/json/CVE-2003-0020.json            |   247 +
 output/security/json/CVE-2003-0083.json            |   212 +
 output/security/json/CVE-2003-0132.json            |   122 +
 output/security/json/CVE-2003-0134.json            |   127 +
 output/security/json/CVE-2003-0189.json            |   112 +
 output/security/json/CVE-2003-0192.json            |   137 +
 output/security/json/CVE-2003-0245.json            |   122 +
 output/security/json/CVE-2003-0253.json            |   137 +
 output/security/json/CVE-2003-0254.json            |   137 +
 output/security/json/CVE-2003-0460.json            |   172 +
 output/security/json/CVE-2003-0542.json            |   237 +
 output/security/json/CVE-2003-0789.json            |   142 +
 output/security/json/CVE-2003-0987.json            |   182 +
 output/security/json/CVE-2003-0993.json            |   182 +
 output/security/json/CVE-2004-0113.json            |   147 +
 output/security/json/CVE-2004-0174.json            |   247 +
 output/security/json/CVE-2004-0488.json            |   147 +
 output/security/json/CVE-2004-0492.json            |   112 +
 output/security/json/CVE-2004-0493.json            |   152 +
 output/security/json/CVE-2004-0747.json            |   163 +
 output/security/json/CVE-2004-0748.json            |   157 +
 output/security/json/CVE-2004-0751.json            |   122 +
 output/security/json/CVE-2004-0786.json            |   157 +
 output/security/json/CVE-2004-0809.json            |   157 +
 output/security/json/CVE-2004-0811.json            |    92 +
 output/security/json/CVE-2004-0885.json            |   167 +
 output/security/json/CVE-2004-0940.json            |   192 +
 output/security/json/CVE-2004-0942.json            |   167 +
 output/security/json/CVE-2004-1834.json            |   167 +
 output/security/json/CVE-2005-1268.json            |   172 +
 output/security/json/CVE-2005-2088.json            |   172 +
 output/security/json/CVE-2005-2491.json            |   172 +
 output/security/json/CVE-2005-2700.json            |   177 +
 output/security/json/CVE-2005-2728.json            |   177 +
 output/security/json/CVE-2005-2970.json            |   161 +
 output/security/json/CVE-2005-3352.json            |   312 +
 output/security/json/CVE-2005-3357.json            |   192 +
 output/security/json/CVE-2006-20001.json           |   108 +
 output/security/json/CVE-2006-3747.json            |   202 +
 output/security/json/CVE-2006-3918.json            |   187 +
 output/security/json/CVE-2006-5752.json            |   342 +
 output/security/json/CVE-2007-1862.json            |    92 +
 output/security/json/CVE-2007-1863.json            |   207 +
 output/security/json/CVE-2007-3304.json            |   352 +
 output/security/json/CVE-2007-3847.json            |   217 +
 output/security/json/CVE-2007-5000.json            |   372 +
 output/security/json/CVE-2007-6388.json            |   362 +
 output/security/json/CVE-2007-6420.json            |   122 +
 output/security/json/CVE-2007-6421.json            |   117 +
 output/security/json/CVE-2007-6422.json            |   117 +
 output/security/json/CVE-2008-0005.json            |   232 +
 output/security/json/CVE-2008-0456.json            |   137 +
 output/security/json/CVE-2008-2364.json            |   242 +
 output/security/json/CVE-2008-2939.json            |   247 +
 output/security/json/CVE-2009-0023.json            |   137 +
 output/security/json/CVE-2009-1191.json            |    92 +
 output/security/json/CVE-2009-1195.json            |   137 +
 output/security/json/CVE-2009-1890.json            |   137 +
 output/security/json/CVE-2009-1891.json            |   257 +
 output/security/json/CVE-2009-1955.json            |   137 +
 output/security/json/CVE-2009-1956.json            |   137 +
 output/security/json/CVE-2009-2412.json            |   262 +
 output/security/json/CVE-2009-2699.json            |   147 +
 output/security/json/CVE-2009-3094.json            |   267 +
 output/security/json/CVE-2009-3095.json            |   267 +
 output/security/json/CVE-2009-3560.json            |   282 +
 output/security/json/CVE-2009-3720.json            |   282 +
 output/security/json/CVE-2010-0010.json            |   217 +
 output/security/json/CVE-2010-0408.json            |   158 +
 output/security/json/CVE-2010-0425.json            |   268 +
 output/security/json/CVE-2010-0434.json            |   278 +
 output/security/json/CVE-2010-1452.json            |   283 +
 output/security/json/CVE-2010-1623.json            |   282 +
 output/security/json/CVE-2010-2068.json            |   138 +
 output/security/json/CVE-2010-2791.json            |    92 +
 output/security/json/CVE-2011-0419.json            |   303 +
 output/security/json/CVE-2011-3192.json            |   302 +
 output/security/json/CVE-2011-3348.json            |   132 +
 output/security/json/CVE-2011-3368.json            |   458 +
 output/security/json/CVE-2011-3607.json            |   318 +
 output/security/json/CVE-2011-4317.json            |   193 +
 output/security/json/CVE-2012-0021.json            |   112 +
 output/security/json/CVE-2012-0031.json            |   318 +
 output/security/json/CVE-2012-0053.json            |   318 +
 output/security/json/CVE-2012-0883.json            |   202 +
 output/security/json/CVE-2012-2687.json            |   207 +
 output/security/json/CVE-2012-3499.json            |   223 +
 output/security/json/CVE-2012-3502.json            |    97 +
 output/security/json/CVE-2012-4557.json            |   137 +
 output/security/json/CVE-2012-4558.json            |   223 +
 output/security/json/CVE-2013-1862.json            |   328 +
 output/security/json/CVE-2013-1896.json            |   228 +
 output/security/json/CVE-2013-2249.json            |   113 +
 output/security/json/CVE-2013-4352.json            |    92 +
 output/security/json/CVE-2013-5704.json            |   268 +
 output/security/json/CVE-2013-6438.json            |   253 +
 output/security/json/CVE-2014-0098.json            |   253 +
 output/security/json/CVE-2014-0117.json            |   108 +
 output/security/json/CVE-2014-0118.json            |   263 +
 output/security/json/CVE-2014-0226.json            |   263 +
 output/security/json/CVE-2014-0231.json            |   263 +
 output/security/json/CVE-2014-3523.json            |   128 +
 output/security/json/CVE-2014-3581.json            |   127 +
 output/security/json/CVE-2014-3583.json            |    98 +
 output/security/json/CVE-2014-8109.json            |   127 +
 output/security/json/CVE-2015-0228.json            |   113 +
 output/security/json/CVE-2015-0253.json            |    92 +
 output/security/json/CVE-2015-3183.json            |   278 +
 output/security/json/CVE-2015-3185.json            |   148 +
 output/security/json/CVE-2016-0736.json            |   163 +
 output/security/json/CVE-2016-1546.json            |   103 +
 output/security/json/CVE-2016-2161.json            |   163 +
 output/security/json/CVE-2016-4975.json            |   308 +
 output/security/json/CVE-2016-4979.json            |   103 +
 output/security/json/CVE-2016-5387.json            |   308 +
 output/security/json/CVE-2016-8740.json            |   113 +
 output/security/json/CVE-2016-8743.json            |   308 +
 output/security/json/CVE-2017-15710.json           |   188 +
 output/security/json/CVE-2017-15715.json           |   188 +
 output/security/json/CVE-2017-3167.json            |   318 +
 output/security/json/CVE-2017-3169.json            |   318 +
 output/security/json/CVE-2017-7659.json            |    98 +
 output/security/json/CVE-2017-7668.json            |   108 +
 output/security/json/CVE-2017-7679.json            |   318 +
 output/security/json/CVE-2017-9788.json            |   323 +
 output/security/json/CVE-2017-9789.json            |    98 +
 output/security/json/CVE-2017-9798.json            |   333 +
 output/security/json/CVE-2018-11763.json           |   148 +
 output/security/json/CVE-2018-1283.json            |   188 +
 output/security/json/CVE-2018-1301.json            |   188 +
 output/security/json/CVE-2018-1302.json            |   138 +
 output/security/json/CVE-2018-1303.json            |   168 +
 output/security/json/CVE-2018-1312.json            |   188 +
 output/security/json/CVE-2018-1333.json            |   138 +
 output/security/json/CVE-2018-17189.json           |   163 +
 output/security/json/CVE-2018-17199.json           |   218 +
 output/security/json/CVE-2018-8011.json            |    98 +
 output/security/json/CVE-2019-0190.json            |    98 +
 output/security/json/CVE-2019-0196.json            |   168 +
 output/security/json/CVE-2019-0197.json            |   113 +
 output/security/json/CVE-2019-0211.json            |   168 +
 output/security/json/CVE-2019-0215.json            |   103 +
 output/security/json/CVE-2019-0217.json            |   223 +
 output/security/json/CVE-2019-0220.json            |   223 +
 output/security/json/CVE-2019-10081.json           |   163 +
 output/security/json/CVE-2019-10082.json           |   168 +
 output/security/json/CVE-2019-10092.json           |   228 +
 output/security/json/CVE-2019-10097.json           |   118 +
 output/security/json/CVE-2019-10098.json           |   228 +
 output/security/json/CVE-2019-17567.json           |   213 +
 output/security/json/CVE-2019-9517.json            |   163 +
 output/security/json/CVE-2020-11984.json           |   123 +
 output/security/json/CVE-2020-11985.json           |   163 +
 output/security/json/CVE-2020-11993.json           |   168 +
 output/security/json/CVE-2020-13938.json           |   238 +
 output/security/json/CVE-2020-13950.json           |   108 +
 output/security/json/CVE-2020-1927.json            |   238 +
 output/security/json/CVE-2020-1934.json            |   238 +
 output/security/json/CVE-2020-35452.json           |   238 +
 output/security/json/CVE-2020-9490.json            |   168 +
 output/security/json/CVE-2021-26690.json           |   238 +
 output/security/json/CVE-2021-26691.json           |   238 +
 output/security/json/CVE-2021-30641.json           |   113 +
 output/security/json/CVE-2021-31618.json           |   127 +
 output/security/json/CVE-2021-33193.json           |   107 +
 output/security/json/CVE-2021-34798.json           |    87 +
 output/security/json/CVE-2021-36160.json           |    97 +
 output/security/json/CVE-2021-39275.json           |    87 +
 output/security/json/CVE-2021-40438.json           |    87 +
 output/security/json/CVE-2021-41524.json           |   102 +
 output/security/json/CVE-2021-41773.json           |   124 +
 output/security/json/CVE-2021-42013.json           |   114 +
 output/security/json/CVE-2021-44224.json           |   106 +
 output/security/json/CVE-2021-44790.json           |    97 +
 output/security/json/CVE-2022-22719.json           |    97 +
 output/security/json/CVE-2022-22720.json           |    97 +
 output/security/json/CVE-2022-22721.json           |    97 +
 output/security/json/CVE-2022-23943.json           |   105 +
 output/security/json/CVE-2022-26377.json           |   119 +
 output/security/json/CVE-2022-28330.json           |   114 +
 output/security/json/CVE-2022-28614.json           |   122 +
 output/security/json/CVE-2022-28615.json           |   114 +
 output/security/json/CVE-2022-29404.json           |   114 +
 output/security/json/CVE-2022-30522.json           |   114 +
 output/security/json/CVE-2022-30556.json           |   114 +
 output/security/json/CVE-2022-31813.json           |   114 +
 output/security/json/CVE-2022-36760.json           |   101 +
 output/security/json/CVE-2022-37436.json           |   101 +
 output/security/json/CVE-2023-25690.json           |   108 +
 output/security/json/CVE-2023-27522.json           |   106 +
 output/security/json/CVE-2023-31122.json           |    98 +
 output/security/json/CVE-2023-38709.json           |    99 +
 output/security/json/CVE-2023-43622.json           |   108 +
 output/security/json/CVE-2023-45802.json           |    98 +
 output/security/json/CVE-2024-24795.json           |    96 +
 output/security/json/CVE-2024-27316.json           |    93 +
 output/security/json/CVE-2024-36387.json           |    98 +
 output/security/json/CVE-2024-38472.json           |    98 +
 output/security/json/CVE-2024-38473.json           |    98 +
 output/security/json/CVE-2024-38474.json           |    98 +
 output/security/json/CVE-2024-38475.json           |    98 +
 output/security/json/CVE-2024-38476.json           |   106 +
 output/security/json/CVE-2024-38477.json           |    98 +
 output/security/json/CVE-2024-39573.json           |    93 +
 output/security/json/CVE-2024-39884.json           |    95 +
 output/security/json/CVE-2024-40725.json           |    91 +
 output/security/json/CVE-2024-40898.json           |   103 +
 output/security/json/CVE-2024-42516.json           |    94 +
 output/security/json/CVE-2024-43204.json           |   108 +
 output/security/json/CVE-2024-43394.json           |    93 +
 output/security/json/CVE-2024-47252.json           |   101 +
 output/security/json/CVE-2025-23048.json           |   101 +
 output/security/json/CVE-2025-49630.json           |    93 +
 output/security/json/CVE-2025-49812.json           |   128 +
 output/security/json/CVE-2025-53020.json           |    98 +
 output/security/json/CVE-2025-54090.json           |    85 +
 output/security/json/CVE-2025-55753.json           |    93 +
 output/security/json/CVE-2025-58098.json           |    93 +
 output/security/json/CVE-2025-59775.json           |    93 +
 output/security/json/CVE-2025-65082.json           |    93 +
 output/security/json/CVE-2025-66200.json           |    91 +
 output/security/json/CVE-2026-23918.json           |   102 +
 output/security/json/CVE-2026-24072.json           |    93 +
 output/security/json/CVE-2026-28780.json           |   118 +
 output/security/json/CVE-2026-29168.json           |   109 +
 output/security/json/CVE-2026-29169.json           |   114 +
 output/security/json/CVE-2026-33006.json           |   114 +
 output/security/json/CVE-2026-33007.json           |   119 +
 output/security/json/CVE-2026-33523.json           |   124 +
 output/security/json/CVE-2026-33857.json           |    93 +
 output/security/json/CVE-2026-34032.json           |   108 +
 output/security/json/CVE-2026-34059.json           |    93 +
 output/security/vulnerabilities-httpd.json         | 41252 +++++++++++++++++++
 output/security/vulnerabilities_13.html            |   422 +
 output/security/vulnerabilities_20.html            |   746 +
 output/security/vulnerabilities_22.html            |   808 +
 output/security/vulnerabilities_24.html            |  1546 +
 output/security_report.html                        |   164 +
 output/support.html                                |   138 +
 output/test/flood/building.html                    |   146 +
 output/test/flood/faq.html                         |   137 +
 output/test/flood/index.html                       |   164 +
 output/test/index.html                             |   176 +
 output/usersdelist.html                            |   181 +
 output/userslist.html                              |   195 +
 611 files changed, 145470 insertions(+)

diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 0000000..8142507
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,29 @@
+# See https://github.com/apache/infrastructure-asfyaml for .asf.yaml docs
+
+github:
+  features:
+    issues: false
+  enabled_merge_buttons:
+    squash: true
+    merge: false
+    rebase: true
+
+notifications:
+  commits: [email protected]
+  issues: [email protected]
+  pullrequests: [email protected]
+
+pelican:
+  notify: [email protected]
+  autobuild: preview/*
+  target: asf-site
+  theme: theme/apache
+  whoami: main
+
+staging:
+  profile: ~
+  whoami: asf-site
+  autostage: preview/*
+  
+publish:
+  whoami: asf-site
diff --git a/output/ABOUT_APACHE.html b/output/ABOUT_APACHE.html
new file mode 100644
index 0000000..f5ca038
--- /dev/null
+++ b/output/ABOUT_APACHE.html
@@ -0,0 +1,280 @@
+<!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/html; charset=utf-8"/>
+        <meta name="viewport" content="width=device-width, initial-scale=1" />
+        <link href="/css/apsite.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+        <meta name="author" content="Documentation Group" /><meta name="email" content="[email protected]" />
+        <title>About the Apache HTTP Server Project - The Apache HTTP Server Project</title>
+	<style>
+.headerlink {
+  visibility: hidden;
+}
+h1:hover > .headerlink, h2:hover > .headerlink, h3:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, h6:hover > .headerlink, li:hover > .headerlink {
+  visibility: visible
+}
+	</style>
+    </head>
+    <body>
+        <div id="page-header">
+            <p class="menu">&nbsp;</p>
+            <p class="apache">&nbsp;</p>
+            <a href="/">
+            <img alt="Apache HTTP Server" src="/images/httpd_logo_wide_new.png" id="site-logo" />
+            </a>
+            <a class="badge" href="https://www.apache.org/foundation/contributing.html">
+                <img src="https://www.apache.org/images/SupportApache-small.png">
+            </a>
+            <button id="menu-toggle" aria-label="Toggle navigation menu">&#9776;</button>
+        </div>
+        <div id="site-wrapper">
+        <div id="apmenu">
+	  <script type="text/javascript" src="https://www.apachecon.com/event-images/snippet.js"></script>
+	  <p style="margin-top: -10px;">
+	    <!-- Apachecon! -->
+	    <a class="acevent" data-format="wide" data-mode="light" data-width="160"></a>
+	  </p>
+	  <h1 id="essentials">Essentials<a class="headerlink" href="#essentials" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/download.cgi">Download!</a></li>
+	    <li><a href="/ABOUT_APACHE.html">About</a></li>
+	    <li><a href="https://www.apache.org/licenses/">License</a></li>
+	    <li><a href="https://wiki.apache.org/httpd/FAQ">FAQ</a></li>
+	    <li><a href="/security_report.html">Security Reports</a></li>
+	  </ul>
+	  <h1 id="source-repositories">Source Repositories<a class="headerlink" href="#source-repositories" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/dev/devnotes.html">General Information</a></li>
+	    <li><a href="https://svn.apache.org/viewvc/httpd/httpd/trunk/">Trunk</a></li>
+	    <li><a href="https://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/">2.4</a></li>
+	  </ul>
+	  <h1 id="documentation"><a href="/docs/">Documentation</a><a class="headerlink" href="#documentation" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/docs/2.4/">Version 2.4</a></li>
+	    <li><a href="/docs/trunk/">Trunk (dev)</a></li>
+	    <li><a href="https://wiki.apache.org/httpd/">Wiki</a></li>
+	  </ul>
+	  <h1 id="get-involved"><a href="/contribute/">Get Involved</a><a class="headerlink" href="#get-involved" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/lists.html">Mailing Lists</a></li>
+	    <li><a href="/bug_report.html">Bug Reports</a></li>
+	    <li><a href="/dev/">Developer Info</a></li>
+	    <li><a href="/support.html">User Support</a></li>
+	  </ul>
+	  <h1 id="subprojects">Subprojects<a class="headerlink" href="#subprojects" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/docs-project/">Docs</a></li>
+	    <li><a href="/test/">Test</a></li>
+	    <li><a href="/test/flood/">Flood</a></li>
+	    <li><a href="/modules">Modules</a></li>
+	    <li><a href="/mod_fcgid/">mod_fcgid</a></li>
+	  </ul>
+	  <h1 id="related-projects">Related Projects<a class="headerlink" href="#related-projects" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="https://trafficserver.apache.org/">Apache Traffic Server</a></li>
+	    <li><a href="https://trafficcontrol.apache.org/">Apache Traffic Control</a></li>
+	    <li><a href="https://tomcat.apache.org/">Tomcat</a></li>
+	    <li><a href="https://apr.apache.org/">APR</a></li>
+	    <li><a href="https://perl.apache.org/">mod_perl</a></li>
+	  </ul>
+	  <h1 id="miscellaneous"><a href="/info/">Miscellaneous</a><a class="headerlink" href="#miscellaneous" title="Permanent link">&para;</a></h1>
+	  <ul>
+	    <li><a href="/contributors/">Contributors</a></li>
+	    <li><a href="https://www.apache.org/foundation/thanks.html">Thanks!</a></li>
+	    <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+	    <li><a href="https://www.apache.org/foundation/policies/privacy.html">Privacy</a></li>
+	  </ul>
+        </div>
+        <!-- RIGHT SIDE INFORMATION -->
+        <div id="apcontents">
+    <h1 id="What">What is the Apache HTTP Server Project?<a class="headerlink" href="#What" title="Permalink">&para;</a></h1>
+<p>The Apache HTTP Server Project is a collaborative software development
+effort aimed at creating a robust, commercial-grade, feature-rich, and
+freely-available source code implementation of an HTTP (Web) server. The
+project is jointly managed by a group of volunteers located around the
+world, using the Internet and the Web to communicate, plan, and develop the
+server and its related documentation. This project is part of the Apache
+Software Foundation. In addition, hundreds of users have contributed ideas,
+code, and documentation to the project. This file is intended to briefly
+describe the history of the Apache HTTP Server and recognize the many
+contributors.</p>
+<h1 id="How">How Apache Came to Be<a class="headerlink" href="#How" title="Permalink">&para;</a></h1>
+<p>In February of 1995, the most popular server software on the Web was the
+public domain HTTP daemon developed by Rob McCool at the National Center
+for Supercomputing Applications, University of Illinois, Urbana-Champaign.
+However, development of that httpd had stalled after Rob left NCSA in
+mid-1994, and many webmasters had developed their own extensions and bug
+fixes that were in need of a common distribution. A small group of these
+webmasters, contacted via private e-mail, gathered together for the purpose
+of coordinating their changes (in the form of "patches"). Brian Behlendorf
+and Cliff Skolnick put together a mailing list, shared information space,
+and logins for the core developers on a machine in the California Bay Area,
+with bandwidth donated by HotWired. By the end of February, eight core
+contributors formed the foundation of the original Apache Group:</p>
+<ul>
+<li>Brian Behlendorf</li>
+<li>Roy T. Fielding</li>
+<li>Rob Hartill</li>
+<li>David Robinson</li>
+<li>Cliff Skolnick</li>
+<li>Randy Terbush</li>
+<li>Robert S. Thau</li>
+<li>Andrew Wilson</li>
+</ul>
+<p>with additional contributions from</p>
+<ul>
+<li>Eric Hagberg</li>
+<li>Frank Peters</li>
+<li>Nicolas Pioch</li>
+</ul>
+<p>Using NCSA httpd 1.3 as a base, we added all of the published bug fixes and
+worthwhile enhancements we could find, tested the result on our own
+servers, and made the first official public release (0.6.2) of the Apache
+server in April 1995. By coincidence, NCSA restarted their own development
+during the same period, and Brandon Long and Beth Frank of the NCSA Server
+Development Team joined the list in March as honorary members so that the
+two projects could share ideas and fixes.</p>
+<p>The early Apache server was a big hit, but we all knew that the codebase
+needed a general overhaul and redesign. During May-June 1995, while Rob
+Hartill and the rest of the group focused on implementing new features for
+0.7.x (like pre-forked child processes) and supporting the rapidly growing
+Apache user community, Robert Thau designed a new server architecture
+(code-named Shambhala) which included a modular structure and API for
+better extensibility, pool-based memory allocation, and an adaptive
+pre-forking process model. The group switched to this new server base in
+July and added the features from 0.7.x, resulting in Apache 0.8.8 (and its
+brethren) in August.</p>
+<p>After extensive beta testing, many ports to obscure platforms, a new set of
+documentation (by David Robinson), and the addition of many features in the
+form of our standard modules, Apache 1.0 was released on December 1, 1995.</p>
+<p>Less than a year after the group was formed, the Apache server passed
+NCSA's httpd as the #1 server on the Internet, according to the
+Netcraft Web Server Survey (1996).</p>
+<p>In 1999, members of the Apache Group formed the <a href="http://www.apache.org/">Apache Software
+Foundation</a> to provide organizational, legal, and
+financial support for the Apache HTTP Server. The foundation has placed the
+software on a solid footing for future development, and greatly expanded
+the number of Open Source software projects, which fall under this
+Foundation's umbrella.</p>
+<h1 id="Involved">Getting Involved<a class="headerlink" href="#Involved" title="Permalink">&para;</a></h1>
+<p>If you just want to send in an occasional suggestion/fix, then you can
+simply use the bug reporting form at &lt;
+<a href="https://httpd.apache.org/bug_report.html">https://httpd.apache.org/bug_report.html</a> &gt;. You can also subscribe to
+the announcements mailing list (<code>[email protected]</code>)
+which we use to broadcast information about new releases, bugfixes, and
+upcoming events. There's a lot of information about the development process
+(much of it in serious need of updating) to be found at &lt;
+<a href="https://httpd.apache.org/dev/">https://httpd.apache.org/dev/</a> &gt;.</p>
+<blockquote>
+<p><strong>NOTE:</strong> The developer mailing list is NOT a user support forum; it is
+for people actively working on development of the server code. There is
+also a 'docs' subproject for those who are actively developing and
+translating the documentation. If you have user/configuration questions,
+subscribe to the <a href="../userslist.html">Users list</a>.</p>
+</blockquote>
+<h1 id="Development">Development<a class="headerlink" href="#Development" title="Permalink">&para;</a></h1>
+<p>There is a core group of contributors, initially comprising the project
+founders, and augmented from time to time by other outstanding
+contributors. There are 'committers', who are granted access to the source
+code control repositories to help maintain the project or docs, and the
+core group now managing the project, which is called the Apache HTTP
+Project Management Committee (PMC, for short). In fact, each Apache
+Software Foundation project has its own PMC, to determine committers,
+project direction and overall management. The terms "The Apache Group" or
+"Apache Core" are no longer used.</p>
+<p>The project is a meritocracy -- the more work you have done, the more you
+will be allowed to do. The group founders set the original rules, but they
+can be changed by vote of the active PMC members. There is a group of
+people who have logins on our server and access to the source code
+repositories. Everyone has read-only access to the repositories. Changes to
+the code are proposed on the mailing list and usually voted on by active
+members -- three +1 ('yes' votes) and no -1 ('no' votes, or vetoes) are
+needed to commit a code change during a release cycle; docs are usually
+committed first and then changed as needed, with conflicts resolved by
+majority vote.</p>
+<p>Our primary method of communication is our mailing list. Approximately 40
+messages a day flow over the list, and are typically very conversational in
+tone. We discuss new features to add, bug fixes, user problems,
+developments in the web server community, release dates, etc. The actual
+code development takes place on the developers' local machines, with
+proposed changes communicated using a patch (output of a unified "diff -u
+oldfile newfile" command), and then applied to the source code control
+repositories by one of the committers. Anyone on the mailing list can vote
+on a particular issue, but only those made by active members or people who
+are known to be experts on that part of the server are counted towards the
+requirements for committing. Vetoes must be accompanied by a convincing
+technical justification.</p>
+<p>New members of the Apache HTTP Project Management Committee are added when
+a frequent contributor is nominated by one member and unanimously approved
+by the voting members. In most cases, this "new" member has been actively
+contributing to the group's work for over six months, so it's usually an
+easy decision.</p>
+<p>The project guidelines continuously evolve under the oversight of the PMC,
+as the membership of the group changes and our development/coordination
+tools improve.</p>
+<h1 id="why-free">Why Apache Software is Free<a class="headerlink" href="#why-free" title="Permalink">&para;</a></h1>
+<p>Apache Software exists to provide robust and commercial-grade reference
+implementations of many types of software. It must remain a platform upon
+which individuals and institutions can build reliable systems, both for
+experimental purposes and for mission-critical purposes. We believe that
+the tools of online publishing should be in the hands of everyone, and that
+software companies should make their money by providing value-added
+services such as specialized modules and support, among other things. We
+realize that it is often seen as an economic advantage for one company to
+"own" a market - in the software industry, that means to control tightly a
+particular conduit such that all others must pay for its use. This is
+typically done by "owning" the protocols through which companies conduct
+business, at the expense of all those other companies. To the extent that
+the protocols of the World Wide Web remain "unowned" by a single company,
+the Web will remain a level playing field for companies large and small.
+Thus, "ownership" of the protocols must be prevented. To this end, the
+existence of robust reference implementations of various protocols and
+application programming interfaces, available free to all companies and
+individuals, is a tremendously good thing.</p>
+<p>Furthermore, the Apache Software Foundation is an organic entity; those who
+benefit from this software by using it often contribute back to it by
+providing feature enhancements, bug fixes, and support for others in public
+lists. The effort expended by any particular individual is
+usually fairly light, but the resulting product is made very strong. These
+kinds of communities can only happen with freely available software -- when
+someone has paid for software, they usually aren't willing to fix its bugs
+for free. One can argue, then, that Apache's strength comes from the fact
+that it's free, and if it were made "not free" it would suffer
+tremendously, even if that money were spent on a real development team.</p>
+<p>We want to see Apache Software used very widely -- by large companies,
+small companies, research institutions, schools, individuals, in the
+intranet environment, everywhere -- even though this may mean that
+companies who could afford commercial software, and would pay for it
+without blinking, might get a "free ride" by using Apache. We are even
+happy when some commercial software companies completely drop their own
+HTTP server development plans and use Apache as a base, with the proper
+attributions as described in the
+<a href="http://www.apache.org/licenses/">LICENSE</a>. That is to say, the Apache HTTP
+Server only comes from the Apache Software Foundation, but many vendors ship
+their own product "based on the Apache {Project}". There is no "{Vendor}
+Apache {Product}", this is an abuse of the Apache Software Foundation's
+marks.</p>
+
+            <!-- FOOTER -->
+            <div id="footer">
+	      <p>Copyright &copy; 1997-2026 The Apache Software Foundation.<br />
+		Apache HTTP Server, Apache, the Apache logo and the Apache HTTP Server logo are
+ either registered trademarks or trademarks of The Apache Software Foundation in the United States
+ and other countries.</p>
+            </div>
+        </div>
+        </div><!-- /#site-wrapper -->
+        <script>
+        (function() {
+            var toggle = document.getElementById('menu-toggle');
+            var menu = document.getElementById('apmenu');
+            if (toggle && menu) {
+                toggle.addEventListener('click', function() {
+                    menu.classList.toggle('open');
+                });
+            }
+        })();
+        </script>
+    </body>
+</html>
\ No newline at end of file
diff --git a/output/announcelist.html b/output/announcelist.html
new file mode 100644
index 0000000..8817f6e
--- /dev/null
+++ b/output/announcelist.html
@@ -0,0 +1,36 @@
+<HTML>
+<HEAD>
+<TITLE>Join the Apache-Users Mailing List</TITLE>
+</HEAD>
+
+<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
+<BODY
+ BGCOLOR="#FFFFFF"
+ TEXT="#000000"
+ LINK="#0000FF"
+ VLINK="#000080"
+ ALINK="#FF0000"
+>
+<IMG SRC="images/apache_sub.gif" ALT="">
+<H1>Join the Apache Announcements Mailing List</H1>
+
+The <CODE>[email protected]</CODE> mailing list has been set up to inform
+people of new code releases, bug fixes, security fixes, and general
+news and information about the Apache server.  Most of this
+information will also be posted to comp.infosystems.www.servers.unix,
+but this provides a more timely way of accessing that information.
+The mailing list is one-way, announcements only.
+
+<P>
+
+To subscribe, send a message (blank, or anything, doesn't matter) to
+<CODE><STRONG>[email protected]</STRONG></CODE>.  You'll
+get back a confirmation message with instructions on how to validate
+your subscription.
+
+<P>
+
+<A HREF="index.html"><IMG SRC="images/apache_home.gif" ALT="Home"></A>
+
+</BODY></HTML>
+
diff --git a/output/apache_pb.gif b/output/apache_pb.gif
new file mode 100644
index 0000000..3a1c139
Binary files /dev/null and b/output/apache_pb.gif differ
diff --git a/output/apreq/Apache-Cookie.html b/output/apreq/Apache-Cookie.html
new file mode 100644
index 0000000..1dbc6e0
--- /dev/null
+++ b/output/apreq/Apache-Cookie.html
@@ -0,0 +1,195 @@
+<HTML>
+<HEAD>
+<TITLE>Apache::Cookie - HTTP Cookies Class</TITLE>
+<LINK REV="made" HREF="mailto:[email protected]">
+</HEAD>
+
+<BODY>
+
+<!-- INDEX BEGIN -->
+
+<UL>
+
+	<LI><A HREF="#NAME">NAME</A>
+	<LI><A HREF="#SYNOPSIS">SYNOPSIS</A>
+	<LI><A HREF="#DESCRIPTION">DESCRIPTION</A>
+	<LI><A HREF="#METHODS">METHODS</A>
+	<UL>
+
+		<LI><A HREF="#new">new</A>
+		<LI><A HREF="#bake">bake</A>
+		<LI><A HREF="#parse">parse</A>
+		<LI><A HREF="#fetch">fetch</A>
+		<LI><A HREF="#as_string">as_string</A>
+		<LI><A HREF="#name">name</A>
+		<LI><A HREF="#value">value</A>
+		<LI><A HREF="#domain">domain</A>
+		<LI><A HREF="#path">path</A>
+		<LI><A HREF="#expires">expires</A>
+		<LI><A HREF="#secure">secure</A>
+	</UL>
+
+	<LI><A HREF="#BUGS">BUGS</A>
+	<LI><A HREF="#SEE_ALSO">SEE ALSO</A>
+	<LI><A HREF="#AUTHOR">AUTHOR</A>
+</UL>
+<!-- INDEX END -->
+
+<HR>
+<P>
+<H1><A NAME="NAME">NAME</A></H1>
+<P>
+Apache::Cookie - HTTP Cookies Class
+
+<P>
+<HR>
+<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1>
+<P>
+<PRE>    use Apache::Cookie ();
+    my $r = Apache-&gt;request;
+    my $cookie = Apache::Cookie-&gt;new($r, ...);
+</PRE>
+<P>
+<HR>
+<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1>
+<P>
+The Apache::Cookie module is a Perl interface to the cookie routines in <EM>libapreq</EM>. The interface is based on Lincoln Stein's CGI::Cookie module.
+
+<P>
+<HR>
+<H1><A NAME="METHODS">METHODS</A></H1>
+<P>
+<EM>Apache::Cookie</EM> does not export any symbols to the caller's namespace. Except for the
+request object passed to <CODE>Apache::Cookie::new</CODE>, the OO interface is identical to <EM>CGI::Cookie</EM>. Please consult the <A HREF="/CGI/Cookie.html">CGI::Cookie</A>
+documentation for more details.
+
+<H2><A NAME="new">new</A></H2>
+<P>
+Just like CGI::Cookie::new, but requires an <EM>Apache</EM> request object:
+
+<P>
+<PRE>        my $cookie = Apache::Cookie-&gt;new($r,
+                             -name    =&gt;  'foo', 
+                             -value   =&gt;  'bar', 
+                             -expires =&gt;  '+3M', 
+                             -domain  =&gt;  '.capricorn.com', 
+                             -path    =&gt;  '/cgi-bin/database',
+                             -secure  =&gt;  1 
+                            ); 
+</PRE>
+<H2><A NAME="bake">bake</A></H2>
+<P>
+Put cookie in the oven to bake. (Add a <EM>Set-Cookie</EM> header to the outgoing headers table.) 
+
+<P>
+<PRE>    $cookie-&gt;bake;
+</PRE>
+<H2><A NAME="parse">parse</A></H2>
+<P>
+This method parses the given string if present, otherwise, the incoming 
+<EM>Cookie</EM> header:
+
+<P>
+<PRE>    my $cookies = $cookie-&gt;parse; #hash ref
+</PRE>
+<P>
+<PRE>    my %cookies = $cookie-&gt;parse;
+</PRE>
+<P>
+<PRE>    my %cookies = $cookie-&gt;parse($cookie_string);
+</PRE>
+<H2><A NAME="fetch">fetch</A></H2>
+<P>
+Fetch and parse the incoming <EM>Cookie</EM> header:
+
+<P>
+<PRE>    my $cookies = Apache::Cookie-&gt;fetch; #hash ref
+</PRE>
+<P>
+<PRE>    my %cookies = Apache::Cookie-&gt;fetch;
+</PRE>
+<H2><A NAME="as_string">as_string</A></H2>
+<P>
+Format the cookie object as a string:
+
+<P>
+<PRE> #same as $cookie-&gt;bake
+ $r-&gt;err_headers_out-&gt;add(&quot;Set-Cookie&quot; =&gt; $cookie-&gt;as_string);
+</PRE>
+<H2><A NAME="name">name</A></H2>
+<P>
+Get or set the name of the cookie:
+
+<P>
+<PRE> my $name = $cookie-&gt;name;
+</PRE>
+<P>
+<PRE> $cookie-&gt;name(&quot;Foo&quot;);
+</PRE>
+<H2><A NAME="value">value</A></H2>
+<P>
+Get or set the values of the cookie:
+
+<P>
+<PRE> my $value = $cookie-&gt;value;
+ my @values = $cookie-&gt;value;
+</PRE>
+<P>
+<PRE> $cookie-&gt;value(&quot;string&quot;);
+ $cookie-&gt;value(\@array);
+</PRE>
+<H2><A NAME="domain">domain</A></H2>
+<P>
+Get or set the domain for the cookie:
+
+<P>
+<PRE> my $domain = $cookie-&gt;domain;
+ $cookie-&gt;domain(&quot;.cp.net&quot;);
+</PRE>
+<H2><A NAME="path">path</A></H2>
+<P>
+Get or set the path for the cookie:
+
+<P>
+<PRE> my $path = $cookie-&gt;path;
+ $cookie-&gt;path(&quot;/&quot;);
+</PRE>
+<H2><A NAME="expires">expires</A></H2>
+<P>
+Get or set the expire time for the cookie:
+
+<P>
+<PRE> my $expires = $cookie-&gt;expires;
+ $cookie-&gt;expires(&quot;+3h&quot;);
+</PRE>
+<H2><A NAME="secure">secure</A></H2>
+<P>
+Get or set the secure flag for the cookie:
+
+<P>
+<PRE> my $secure = $cookie-&gt;secure;
+ $cookie-&gt;secure(1);
+</PRE>
+
+<P>
+<HR>
+<H1><A NAME="BUGS">BUGS</A></H1>
+<DL>
+<DT><STRONG><A NAME="item_RFC">RFC 2964-5 are not fully implemented.</A></STRONG><DD>
+<DT><STRONG><A NAME="item_value">value should also accept a hash ref as argument.</A></STRONG><DD>
+<DT><STRONG><A NAME="item_Reportedly">Reportedly does not run (linking problem?) on Apple's OSX</A></STRONG><DD>
+</DL>
+<P>
+<HR>
+<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1>
+<P>
+<CODE>Apache(3),</CODE> Apache::Request(3), CGI::Cookie(3)
+
+<P>
+<HR>
+<H1><A NAME="AUTHOR">AUTHOR</A></H1>
+<P>
+Doug MacEachern, updated for v1.0 by Joe Schaefer
+</BODY>
+
+</HTML>
diff --git a/output/apreq/Apache-Request.html b/output/apreq/Apache-Request.html
new file mode 100644
index 0000000..606e5c6
--- /dev/null
+++ b/output/apreq/Apache-Request.html
@@ -0,0 +1,380 @@
+<HTML>
+<HEAD>
+<TITLE>Apache::Request - Methods for dealing with client request data</TITLE>
+<LINK REV="made" HREF="mailto:[email protected]">
+</HEAD>
+
+<BODY>
+
+<!-- INDEX BEGIN -->
+
+<UL>
+
+	<LI><A HREF="#NAME">NAME</A>
+	<LI><A HREF="#SYNOPSIS">SYNOPSIS</A>
+	<LI><A HREF="#DESCRIPTION">DESCRIPTION</A>
+	<LI><A HREF="#Apache_Request_METHODS">Apache::Request METHODS</A>
+	<UL>
+
+		<LI><A HREF="#new">new</A>
+		<LI><A HREF="#instance">instance</A>
+		<LI><A HREF="#parse">parse</A>
+		<LI><A HREF="#param">param</A>
+		<LI><A HREF="#parms">parms</A>
+		<LI><A HREF="#upload">upload</A>
+	</UL>
+
+	<LI><A HREF="#Apache_Upload_METHODS">Apache::Upload METHODS</A>
+	<UL>
+
+		<LI><A HREF="#name">name</A>
+		<LI><A HREF="#filename">filename</A>
+		<LI><A HREF="#fh">fh</A>
+		<LI><A HREF="#size">size</A>
+		<LI><A HREF="#info">info</A>
+		<LI><A HREF="#type">type</A>
+		<LI><A HREF="#next">next</A>
+		<LI><A HREF="#tempname">tempname</A>
+		<LI><A HREF="#link">link</A>
+	</UL>
+
+	<LI><A HREF="#SEE_ALSO">SEE ALSO</A>
+	<LI><A HREF="#CREDITS">CREDITS</A>
+	<LI><A HREF="#AUTHOR">AUTHOR</A>
+</UL>
+<!-- INDEX END -->
+
+<HR>
+<P>
+<H1><A NAME="NAME">NAME</A></H1>
+<P>
+Apache::Request - Methods for dealing with client request data
+
+<P>
+<HR>
+<H1><A NAME="SYNOPSIS">SYNOPSIS</A></H1>
+<P>
+<PRE>    use Apache::Request ();
+    my $apr = Apache::Request-&gt;new($r);
+</PRE>
+<P>
+<HR>
+<H1><A NAME="DESCRIPTION">DESCRIPTION</A></H1>
+<P>
+<EM>Apache::Request</EM> is a subclass of the <EM>Apache</EM> class, which adds methods for parsing <STRONG>GET</STRONG> requests and <STRONG>POST</STRONG> requests where <EM>Content-type</EM>
+is one of <EM>application/x-www-form-urlencoded</EM> or 
+<EM>multipart/form-data</EM>. See the <CODE>libapreq(3)</CODE> manpage for more details.
+
+<P>
+<HR>
+<H1><A NAME="Apache_Request_METHODS">Apache::Request METHODS</A></H1>
+<P>
+The interface is designed to mimic CGI.pm 's routines for parsing query
+parameters. The main differences are 
+
+<UL>
+<LI><STRONG><A NAME="item_Apache">Apache::Request::new takes an Apache object as (second) argument.</A></STRONG>
+<LI><STRONG><A NAME="item_The">The query parameters are stored as Apache::Table objects,
+and are therefore parsed using case-insensitive keys.</A></STRONG>
+<LI><STRONG><A NAME="item__attr_gt_val_type_arguments_a">-attr =gt $val -type arguments are not supported.</A></STRONG>
+<LI><STRONG><A NAME="item_The">The query string is always parsed, even for POST requests.</A></STRONG>
+</UL>
+<H2><A NAME="new">new</A></H2>
+<P>
+Create a new <EM>Apache::Request</EM> object with an <EM>Apache</EM> request_rec object:
+
+<P>
+<PRE>    my $apr = Apache::Request-&gt;new($r);
+</PRE>
+<P>
+All methods from the <EM>Apache</EM> class are inherited.
+
+<P>
+The following attributes are optional:
+
+<DL>
+<DT><STRONG><A NAME="item_POST_MAX">POST_MAX</A></STRONG><DD>
+<P>
+Limit the size of POST data (in bytes).  <EM>Apache::Request::parse</EM> will return an error code if the size is exceeded:
+
+<P>
+<PRE> my $apr = Apache::Request-&gt;new($r, POST_MAX =&gt; 1024);
+ my $status = $apr-&gt;parse;
+</PRE>
+<P>
+<PRE> if ($status) {
+     my $errmsg = $apr-&gt;notes(&quot;error-notes&quot;);
+     ...
+     return $status;
+ }
+</PRE>
+<DT><STRONG><A NAME="item_DISABLE_UPLOADS">DISABLE_UPLOADS</A></STRONG><DD>
+<P>
+Disable file uploads.  <EM>Apache::Request::parse</EM> will return an error code if a file upload is attempted:
+
+<P>
+<PRE> my $apr = Apache::Request-&gt;new($r, DISABLE_UPLOADS =&gt; 1);
+ my $status = $apr-&gt;parse;
+</PRE>
+<P>
+<PRE> if ($status) {
+     my $errmsg = $apr-&gt;notes(&quot;error-notes&quot;);
+     ...
+     return $status;
+ }
+</PRE>
+<DT><STRONG><A NAME="item_TEMP_DIR">TEMP_DIR</A></STRONG><DD>
+<P>
+Sets the directory where upload files are spooled. On a *nix-like that
+supports <CODE>link(2),</CODE> the TEMP_DIR should be located on the same
+file system as the final destination file:
+
+<P>
+<PRE> my $apr = Apache::Request-&gt;new($r, TEMP_DIR =&gt; &quot;/home/httpd/tmp&quot;);
+ my $upload = $apr-&gt;upload('file');
+ $upload-&gt;link(&quot;/home/user/myfile&quot;) || warn &quot;link failed: $!&quot;;
+</PRE>
+<DT><STRONG><A NAME="item_HOOK_DATA">HOOK_DATA</A></STRONG><DD>
+<P>
+Extra configuration info passed to an upload hook. See the description for
+the next item, <EM>UPLOAD_HOOK</EM>.
+
+<DT><STRONG><A NAME="item_UPLOAD_HOOK">UPLOAD_HOOK</A></STRONG><DD>
+<P>
+Sets up a callback to run whenever file upload data is read. This can be
+used to provide an upload progress meter during file uploads. Apache will
+automatically continue writing the original data to $upload-&gt;fh after
+the hook exits.
+
+<P>
+<PRE> my $transparent_hook = sub {
+   my ($upload, $buf, $len, $hook_data) = @_;
+   warn &quot;$hook_data: got $len bytes for &quot; . $upload-&gt;name;
+ };
+</PRE>
+<P>
+<PRE> my $apr = Apache::Request-&gt;new($r, 
+                                HOOK_DATA =&gt; &quot;Note&quot;,
+                                UPLOAD_HOOK =&gt; $transparent_hook,
+                               );
+ $apr-&gt;parse;
+</PRE>
+
+<H2><A NAME="instance">instance</A></H2>
+<P>
+The <CODE>instance()</CODE> class method allows Apache::Request to be a
+singleton. This means that whenever you call Apache::Request-&gt;instance()
+within a single request you always get the same Apache::Request object
+back. This solves the problem with creating the Apache::Request object
+twice within the same request - the symptoms being that the second
+Apache::Request object will not contain the form parameters because they
+have already been read and parsed.
+
+<P>
+<PRE>  my $apr = Apache::Request-&gt;instance($r, DISABLE_UPLOADS =&gt; 1);
+</PRE>
+<P>
+Note that <CODE>instance()</CODE> call will take the same parameters as the above call to <CODE>new()</CODE>, however the parameters will only have an effect the first time <CODE>instance()</CODE> is called within a single request. Extra parameters will be ignored on
+subsequent calls to <CODE>instance()</CODE> within the same request.
+
+<P>
+Subrequests receive a new Apache::Request object when they call
+<CODE>instance()</CODE> - the parent request's Apache::Request object is
+not copied into the subrequest.
+
+<P>
+Also note that it is unwise to use the <CODE>parse()</CODE> method when using
+<CODE>instance()</CODE> because you may end up trying to call it twice, and detecting errors where
+there are none.
+
+<H2><A NAME="parse">parse</A></H2>
+<P>
+The <EM>parse</EM> method does the actual work of parsing the request. It is called for you by
+the accessor methods, so it is not required but can be useful to provide a
+more user-friendly message should an error occur: my <CODE>$r</CODE> =
+shift; my <CODE>$apr</CODE> = Apache::Request-&gt;new($r); my
+<CODE>$status</CODE> = $apr-&gt;parse; unless ($status == OK) {
+$apr-&gt;custom_response($status, $apr-&gt;notes(``error-notes'')); return
+$status; } 
+
+<H2><A NAME="param">param</A></H2>
+<P>
+Get or set request parameters (using case-insensitive keys) by mimicing the
+OO interface of <CODE>CGI::param</CODE>. Unlike the CGI.pm version, Apache::Request's param method is <EM>very</EM> fast- it's now quicker than even mod_perl's native Apache-&gt;args method.
+However, CGI.pm's
+<CODE>-attr =&amp;gt; $val</CODE> type arguments are not supported.
+
+<P>
+<PRE>    # similar to CGI.pm
+</PRE>
+<P>
+<PRE>    my $value = $apr-&gt;param('foo');
+    my @values = $apr-&gt;param('foo');
+    my @params = $apr-&gt;param;
+</PRE>
+<P>
+<PRE>    # the following differ slightly from CGI.pm
+</PRE>
+<P>
+<PRE>    # assigns multiple values to 'foo'
+    $apr-&gt;param('foo' =&gt; [qw(one two three)]);
+</PRE>
+<P>
+<PRE>    # returns ref to underlying apache table object
+    my $table = $apr-&gt;param; # identical to $apr-&gt;parms - see below
+</PRE>
+<H2><A NAME="parms">parms</A></H2>
+<P>
+Get or set the underlying apache parameter table of the <EM>Apache::Request</EM>
+object. When invoked without arguments, <CODE>parms</CODE> returns a reference to an <EM>Apache::Table</EM> object that is tied to the Apache::Request object's parameter table. If
+called with an Apache::Table reference as as argument, the Apache::Request
+object's parameter table is replaced by the argument's table.
+
+<P>
+<PRE>   # $apache_table references an Apache::Table object
+   $apr-&gt;parms($apache_table); # sets $apr's parameter table
+</PRE>
+<P>
+<PRE>   # returns ref to Apache::Table object provided by $apache_table
+   my $table = $apr-&gt;parms;
+</PRE>
+<H2><A NAME="upload">upload</A></H2>
+<P>
+Returns a single <EM>Apache::Upload</EM> object in a scalar context or all <EM>Apache::Upload</EM> objects in a list context: 
+
+<P>
+<PRE>    my $upload = $apr-&gt;upload;
+    my $fh = $upload-&gt;fh;
+    my $lines = 0; 
+    while(&lt;$fh&gt;) { 
+        ++$lines; 
+        ...
+    } 
+</PRE>
+<P>
+An optional name parameter can be passed to return the <EM>Apache::Upload</EM>
+object associated with the given name:
+
+<P>
+<PRE>    my $upload = $apr-&gt;upload($name);
+</PRE>
+
+<P>
+<HR>
+<H1><A NAME="Apache_Upload_METHODS">Apache::Upload METHODS</A></H1>
+<H2><A NAME="name">name</A></H2>
+<P>
+The name of the filefield parameter:
+
+<P>
+<PRE>    my $name = $upload-&gt;name;
+</PRE>
+<H2><A NAME="filename">filename</A></H2>
+<P>
+The filename of the uploaded file:
+
+<P>
+<PRE>    my $filename = $upload-&gt;filename;
+</PRE>
+<H2><A NAME="fh">fh</A></H2>
+<P>
+The filehandle pointing to the uploaded file:
+
+<P>
+<PRE>    my $fh = $upload-&gt;fh;
+    while (&lt;$fh&gt;) {
+        ...
+    }
+</PRE>
+<H2><A NAME="size">size</A></H2>
+<P>
+The size of the file in bytes:
+
+<P>
+<PRE>    my $size = $upload-&gt;size;
+</PRE>
+<H2><A NAME="info">info</A></H2>
+<P>
+The additional header information for the uploaded file. Returns a hash
+reference tied to the <EM>Apache::Table</EM> class. An optional <EM>key</EM> argument can be passed to return the value of a given header rather than a
+hash reference. Examples:
+
+<P>
+<PRE>    my $info = $upload-&gt;info;
+    while (my($key, $val) = each %$info) {
+        ...
+    }
+</PRE>
+<P>
+<PRE>    my $val = $upload-&gt;info(&quot;Content-type&quot;);
+</PRE>
+<H2><A NAME="type">type</A></H2>
+<P>
+Returns the <EM>Content-Type</EM> for the given <EM>Apache::Upload</EM> object:
+
+<P>
+<PRE>    my $type = $upload-&gt;type;
+    #same as
+    my $type = $upload-&gt;info(&quot;Content-Type&quot;);
+</PRE>
+<H2><A NAME="next">next</A></H2>
+<P>
+Upload objects are implemented as a linked list by libapreq; the
+<EM>next</EM> method provides an alternative to using the <EM>Apache::Request</EM>
+
+<EM>upload</EM> method in a list context:
+
+<P>
+<PRE>    for (my $upload = $apr-&gt;upload; $upload; $upload = $upload-&gt;next) {
+        ...
+    }
+</PRE>
+<P>
+<PRE>    #functionally the same as:
+</PRE>
+<P>
+<PRE>    for my $upload ($apr-&gt;upload) {
+        ...
+    }
+</PRE>
+<H2><A NAME="tempname">tempname</A></H2>
+<P>
+Provides the name of the spool file. This method is reserved for debugging
+purposes, and is possibly subject to change in a future version of
+Apache::Request.
+
+<H2><A NAME="link">link</A></H2>
+<P>
+To avoid recopying the spool file on a *nix-like system,
+<EM>link</EM> will create a hard link to it:
+
+<P>
+<PRE>  my $upload = $apr-&gt;upload('file');
+  $upload-&gt;link(&quot;/path/to/newfile&quot;) or
+      die sprintf &quot;link from '%s' failed: $!&quot;, $upload-&gt;tempname;
+</PRE>
+<P>
+Typically the new name must lie on the same file system as the spool file.
+Check your system's <CODE>link(2)</CODE> manpage for details.
+
+
+<P>
+<HR>
+<H1><A NAME="SEE_ALSO">SEE ALSO</A></H1>
+<P>
+<CODE>libapreq(3),</CODE> Apache::Table(3)
+
+<P>
+<HR>
+<H1><A NAME="CREDITS">CREDITS</A></H1>
+<P>
+This interface is based on the original pure Perl version by Lincoln Stein.
+
+<P>
+<HR>
+<H1><A NAME="AUTHOR">AUTHOR</A></H1>
+<P>
+Doug MacEachern, updated for v1.0 by Joe Schaefer
+</BODY>
+
+</HTML>
diff --git a/output/apreq/docs/libapreq2/_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html b/output/apreq/docs/libapreq2/_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html
new file mode 100644
index 0000000..d81f92f
--- /dev/null
+++ b/output/apreq/docs/libapreq2/_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html
@@ -0,0 +1,248 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: /home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<p>The public APEQ functions using variable arguments are declared with APEQ_DECLARE_NONSTD(), as they must follow the C language calling convention. </p><dl class="section see"><dt>See also</dt><dd>APEQ_DECLARE </dd>
+<dd>
+APEQ_DECLARE_DATA </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Both the declaration and implementations must use the same macro.</dd></dl>
+<div class="fragment"><div class="line"><span class="comment">/*</span></div>
+<div class="line"><span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><span class="comment">**</span></div>
+<div class="line"><span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><span class="comment">**</span></div>
+<div class="line"><span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><span class="comment">**  limitations under the License.</span></div>
+<div class="line"><span class="comment">*/</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#ifndef APREQ_H</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_H</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#ifdef APREQ_DEBUG</span></div>
+<div class="line"><span class="preprocessor">#include &lt;assert.h&gt;</span></div>
+<div class="line"><span class="preprocessor">#endif</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html">apr_tables.h</a>&quot;</span></div>
+<div class="line"><span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"> <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><span class="preprocessor">#endif</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#ifndef WIN32</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE(d)                APR_DECLARE(d)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_NONSTD(d)         APR_DECLARE_NONSTD(d)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_DATA</span></div>
+<div class="line"><span class="preprocessor">#elif defined (APREQ_DECLARE_STATIC)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE(type)             type __stdcall</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      type</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_DATA</span></div>
+<div class="line"><span class="preprocessor">#elif defined (APREQ_DECLARE_EXPORT)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE(type)             __declspec(dllexport) type __stdcall</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      __declspec(dllexport) type</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_DATA              __declspec(dllexport)</span></div>
+<div class="line"><span class="preprocessor">#else</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE(type)             __declspec(dllimport) type __stdcall</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      __declspec(dllimport) type</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DECLARE_DATA              __declspec(dllimport)</span></div>
+<div class="line"><span class="preprocessor">#endif</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_DEFAULT_READ_BLOCK_SIZE   (64  * 1024)</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_DEFAULT_READ_LIMIT        (64 * 1024 * 1024)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_DEFAULT_BRIGADE_LIMIT     (256 * 1024)</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_DEFAULT_NELTS              8</span></div>
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_FLAGS_OFF(f, name) ((f) &amp;= ~(name##_MASK &lt;&lt; name##_BIT))</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_FLAGS_ON(f, name)  ((f) |=  (name##_MASK &lt;&lt; name##_BIT))</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_FLAGS_GET(f, name) (((f) &gt;&gt; name##_BIT) &amp; name##_MASK)</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_FLAGS_SET(f, name, value)                 \</span></div>
+<div class="line"><span class="preprocessor">    ((f) = (((f) &amp; ~(name##_MASK &lt;&lt; name##_BIT))        \</span></div>
+<div class="line"><span class="preprocessor">            | ((name##_MASK &amp; (value)) &lt;&lt; name##_BIT)))</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_CHARSET_BIT           0</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_CHARSET_MASK        255</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_TAINTED_BIT           8</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_TAINTED_MASK          1</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_VERSION_BIT   11</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_VERSION_MASK   3</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_SECURE_BIT    13</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_SECURE_MASK    1</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_HTTPONLY_BIT    14</span></div>
+<div class="line"><span class="preprocessor">#define APREQ_COOKIE_HTTPONLY_MASK    1</span></div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line">    APREQ_CHARSET_ASCII  =0,</div>
+<div class="line">    APREQ_CHARSET_LATIN1 =1, <span class="comment">/* ISO-8859-1   */</span></div>
+<div class="line">    APREQ_CHARSET_CP1252 =2, <span class="comment">/* Windows-1252 */</span></div>
+<div class="line">    APREQ_CHARSET_UTF8   =8</div>
+<div class="line">} <a name="a0"></a><a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>;</div>
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line">    <a name="a1"></a><a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">APREQ_JOIN_AS_IS</a>,      </div>
+<div class="line">    <a name="a2"></a><a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">APREQ_JOIN_ENCODE</a>,     </div>
+<div class="line">    <a name="a3"></a><a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">APREQ_JOIN_DECODE</a>,     </div>
+<div class="line">    <a name="a4"></a><a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">APREQ_JOIN_QUOTE</a>       </div>
+<div class="line">} <a name="a5"></a><a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a>;</div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line">    <a name="a6"></a><a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">APREQ_MATCH_FULL</a>,       </div>
+<div class="line">    <a name="a7"></a><a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">APREQ_MATCH_PARTIAL</a>     </div>
+<div class="line">} <a name="a8"></a><a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a>;</div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line">    <a name="a9"></a><a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">APREQ_EXPIRES_HTTP</a>,       </div>
+<div class="line">    <a name="a10"></a><a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">APREQ_EXPIRES_NSCOOKIE</a>    </div>
+<div class="line">} <a name="a11"></a><a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a>;</div>
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span><a name="_a12"></a><a class="code" href="structapreq__value__t.html">apreq_value_t</a> {</div>
+<div class="line">    <span class="keywordtype">char</span>             *<a name="a13"></a><a class="code" href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">name</a>;    </div>
+<div class="line">    apr_size_t        <a name="a14"></a><a class="code" href="structapreq__value__t.html#ae0d07fb5f672d1bd32c9bb53b4da941a">nlen</a>;    </div>
+<div class="line">    apr_size_t        <a name="a15"></a><a class="code" href="structapreq__value__t.html#a7881ecfbe424c4708792fe4b2b1bd4a7">dlen</a>;    </div>
+<div class="line">    <span class="keywordtype">char</span>              <a name="a16"></a><a class="code" href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">data</a>[1]; </div>
+<div class="line">} <a name="a17"></a><a class="code" href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">apreq_value_t</a>;</div>
+<div class="line"> </div>
+<div class="line"><span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><span class="keywordtype">void</span> <a name="a18"></a><a class="code" href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">apreq_value_table_add</a>(<span class="keyword">const</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *v, <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *t) {</div>
+<div class="line">    <a name="a19"></a><a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gaff9fdbd8f499f0dfb07123230e19ea54">apr_table_addn</a>(t, v-&gt;<a class="code" href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">name</a>, v-&gt;<a class="code" href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">data</a>);</div>
+<div class="line">}</div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#define apreq_attr_to_type(T,A,P) ( (T*) ((char*)(P)-offsetof(T,A)) )</span></div>
+<div class="line"> </div>
+<div class="line"><a name="a20"></a><a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a name="a21"></a><a class="code" href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">apreq_initialize</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">a [...]
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"><a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a name="a22"></a><a class="code" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>  [...]
+<div class="line"> </div>
+<div class="line"><a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a name="a23"></a><a class="code" href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apreq_post_initialize</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> [...]
+<div class="line"> </div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"> }</div>
+<div class="line"><span class="preprocessor">#endif</span></div>
+<div class="line"> </div>
+<div class="line"><span class="preprocessor">#endif </span><span class="comment">/* APREQ_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="aapr__tables_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html">apr_tables.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq_8h_html_a0d27c51db1532fa3f829838ed90f6226"><div class="ttname"><a href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">apreq_value_table_add</a></div><div class="ttdeci">static APR_INLINE void apreq_value_table_add(const apreq_value_t *v, apr_table_t *t)</div><div class="ttdef"><b>Definition:</b> apreq.h:254</div></div>
+<div class="ttc" id="aapreq_8h_html_a163e7aaee57baa89b4d7e00a4279b035"><div class="ttname"><a href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">apreq_initialize</a></div><div class="ttdeci">apr_status_t apreq_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a></div><div class="ttdeci">apreq_match_t</div><div class="ttdef"><b>Definition:</b> apreq.h:222</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">APREQ_MATCH_PARTIAL</a></div><div class="ttdeci">@ APREQ_MATCH_PARTIAL</div><div class="ttdef"><b>Definition:</b> apreq.h:224</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">APREQ_MATCH_FULL</a></div><div class="ttdeci">@ APREQ_MATCH_FULL</div><div class="ttdef"><b>Definition:</b> apreq.h:223</div></div>
+<div class="ttc" id="aapreq_8h_html_a6607dfa756796989c15014870b48c8cd"><div class="ttname"><a href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a></div><div class="ttdeci">apreq_charset_t</div><div class="ttdef"><b>Definition:</b> apreq.h:205</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473e"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a></div><div class="ttdeci">apreq_join_t</div><div class="ttdef"><b>Definition:</b> apreq.h:214</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">APREQ_JOIN_ENCODE</a></div><div class="ttdeci">@ APREQ_JOIN_ENCODE</div><div class="ttdef"><b>Definition:</b> apreq.h:216</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">APREQ_JOIN_AS_IS</a></div><div class="ttdeci">@ APREQ_JOIN_AS_IS</div><div class="ttdef"><b>Definition:</b> apreq.h:215</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">APREQ_JOIN_DECODE</a></div><div class="ttdeci">@ APREQ_JOIN_DECODE</div><div class="ttdef"><b>Definition:</b> apreq.h:217</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">APREQ_JOIN_QUOTE</a></div><div class="ttdeci">@ APREQ_JOIN_QUOTE</div><div class="ttdef"><b>Definition:</b> apreq.h:218</div></div>
+<div class="ttc" id="aapreq_8h_html_acecad02f3b9982190143d1097bbfa555"><div class="ttname"><a href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apreq_post_initialize</a></div><div class="ttdeci">apr_status_t apreq_post_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq_8h_html_ad1d0e6fa5f9cdecb695541c697789f3e"><div class="ttname"><a href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">apreq_value_t</a></div><div class="ttdeci">struct apreq_value_t apreq_value_t</div><div class="ttdoc">libapreq's pre-extensible string type</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a></div><div class="ttdeci">apreq_expires_t</div><div class="ttdef"><b>Definition:</b> apreq.h:228</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">APREQ_EXPIRES_NSCOOKIE</a></div><div class="ttdeci">@ APREQ_EXPIRES_NSCOOKIE</div><div class="ttdef"><b>Definition:</b> apreq.h:230</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">APREQ_EXPIRES_HTTP</a></div><div class="ttdeci">@ APREQ_EXPIRES_HTTP</div><div class="ttdef"><b>Definition:</b> apreq.h:229</div></div>
+<div class="ttc" id="aapreq_8h_html_aff013107e72c94b917617fd42dce79e8"><div class="ttname"><a href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize</a></div><div class="ttdeci">apr_status_t apreq_pre_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gaff9fdbd8f499f0dfb07123230e19ea54"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gaff9fdbd8f499f0dfb07123230e19ea54">apr_table_addn</a></div><div class="ttdeci">void apr_table_addn(apr_table_t *t, const char *key, const char *val)</div></div>
+<div class="ttc" id="astructapreq__value__t_html"><div class="ttname"><a href="structapreq__value__t.html">apreq_value_t</a></div><div class="ttdoc">libapreq's pre-extensible string type</div><div class="ttdef"><b>Definition:</b> apreq.h:235</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a3015440cd334584cafa3e19078cbf778"><div class="ttname"><a href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">apreq_value_t::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> apreq.h:236</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a4aab05328f30a972ae6cd56235a4350e"><div class="ttname"><a href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">apreq_value_t::data</a></div><div class="ttdeci">char data[1]</div><div class="ttdef"><b>Definition:</b> apreq.h:239</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a7881ecfbe424c4708792fe4b2b1bd4a7"><div class="ttname"><a href="structapreq__value__t.html#a7881ecfbe424c4708792fe4b2b1bd4a7">apreq_value_t::dlen</a></div><div class="ttdeci">apr_size_t dlen</div><div class="ttdef"><b>Definition:</b> apreq.h:238</div></div>
+<div class="ttc" id="astructapreq__value__t_html_ae0d07fb5f672d1bd32c9bb53b4da941a"><div class="ttname"><a href="structapreq__value__t.html#ae0d07fb5f672d1bd32c9bb53b4da941a">apreq_value_t::nlen</a></div><div class="ttdeci">apr_size_t nlen</div><div class="ttdef"><b>Definition:</b> apreq.h:237</div></div>
+</div><!-- fragment --> </div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/annotated.html b/output/apreq/docs/libapreq2/annotated.html
new file mode 100644
index 0000000..da8ac59
--- /dev/null
+++ b/output/apreq/docs/libapreq2/annotated.html
@@ -0,0 +1,94 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: Data Structures</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Data Structures</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__cookie__t.html" target="_self">apreq_cookie_t</a></td><td class="desc">Cookie type, supporting both Netscape and RFC cookie specifications </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__handle__t.html" target="_self">apreq_handle_t</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__hook__find__param__ctx__t.html" target="_self">apreq_hook_find_param_ctx_t</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__hook__t.html" target="_self">apreq_hook_t</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__module__t.html" target="_self">apreq_module_t</a></td><td class="desc">Vtable describing the necessary module functions </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__param__t.html" target="_self">apreq_param_t</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__parser__t.html" target="_self">apreq_parser_t</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structapreq__value__t.html" target="_self">apreq_value_t</a></td><td class="desc">Libapreq's pre-extensible string type </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq_8h.html b/output/apreq/docs/libapreq2/apreq_8h.html
new file mode 100644
index 0000000..a06524a
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h.html
@@ -0,0 +1,946 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Main header file...  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html">apr_tables.h</a>&quot;</code><br />
+<code>#include &lt;stddef.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq_8h__incl.png" border="0" usemap="#ainclude_2apreq_8h" alt=""/></div>
+<map name="ainclude_2apreq_8h" id="ainclude_2apreq_8h">
+<area shape="rect" title="Main header file..." alt="" coords="51,5,174,32"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="5,80,108,107"/>
+<area shape="rect" title=" " alt="" coords="133,80,207,107"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq_8hdep" alt=""/></div>
+<map name="ainclude_2apreq_8hdep" id="ainclude_2apreq_8hdep">
+<area shape="rect" title="Main header file..." alt="" coords="342,5,465,32"/>
+<area shape="rect" href="apreq__cookie_8h.html" title="Cookies and Jars." alt="" coords="5,155,177,181"/>
+<area shape="rect" href="apreq__error_8h.html" title="Error status codes." alt="" coords="201,155,360,181"/>
+<area shape="rect" href="apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="318,80,489,107"/>
+<area shape="rect" href="apreq__util_8h.html" title="Utility functions for apreq." alt="" coords="513,80,664,107"/>
+<area shape="rect" href="apreq__version_8h.html" title="Versioning API for libapreq." alt="" coords="688,80,865,107"/>
+<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="191,229,370,256"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="105,304,267,345"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="291,304,462,345"/>
+<area shape="rect" href="apreq__parser_8h.html" title="Request body parser API." alt="" coords="384,155,553,181"/>
+</map>
+</div>
+</div>
+<p><a href="apreq_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__value__t.html">apreq_value_t</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">libapreq's pre-extensible string type  <a href="structapreq__value__t.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a02bf89714a74397155a11b9ccb942b0d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(d)&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__platform.html#gad7b91b811a172bfa802603c2fb688f98">APR_DECLARE</a>(d)</td></tr>
+<tr class="separator:a02bf89714a74397155a11b9ccb942b0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a1e7333187fdbc476473ac72d2ff38b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">APREQ_DECLARE_NONSTD</a>(d)&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__platform.html#ga3ad5e45fabbda0ec5f106c334f1a0ae5">APR_DECLARE_NONSTD</a>(d)</td></tr>
+<tr class="separator:a8a1e7333187fdbc476473ac72d2ff38b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a142563500999527d486a2eac8c3a0973"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a142563500999527d486a2eac8c3a0973">APREQ_DECLARE_DATA</a></td></tr>
+<tr class="separator:a142563500999527d486a2eac8c3a0973"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73bfd1896ab59181f8e052fb8cc147cd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a73bfd1896ab59181f8e052fb8cc147cd">APREQ_DEFAULT_READ_BLOCK_SIZE</a>&#160;&#160;&#160;(64  * 1024)</td></tr>
+<tr class="separator:a73bfd1896ab59181f8e052fb8cc147cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a744fa55285c4a3868a9154f473d58ac4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a744fa55285c4a3868a9154f473d58ac4">APREQ_DEFAULT_READ_LIMIT</a>&#160;&#160;&#160;(64 * 1024 * 1024)</td></tr>
+<tr class="separator:a744fa55285c4a3868a9154f473d58ac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af54c8645b8266fa7c9b2e261c608744f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#af54c8645b8266fa7c9b2e261c608744f">APREQ_DEFAULT_BRIGADE_LIMIT</a>&#160;&#160;&#160;(256 * 1024)</td></tr>
+<tr class="separator:af54c8645b8266fa7c9b2e261c608744f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a253093cc2fffe7094828714ade120466"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a253093cc2fffe7094828714ade120466">APREQ_DEFAULT_NELTS</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:a253093cc2fffe7094828714ade120466"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bcc4e81747b13b7bfbb946648453f9e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a>(f,  name)&#160;&#160;&#160;((f) &amp;= ~(name##_MASK &lt;&lt; name##_BIT))</td></tr>
+<tr class="separator:a5bcc4e81747b13b7bfbb946648453f9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf8584e758a62fe0a79023821c359222"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a>(f,  name)&#160;&#160;&#160;((f) |=  (name##_MASK &lt;&lt; name##_BIT))</td></tr>
+<tr class="separator:adf8584e758a62fe0a79023821c359222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07141b4d0c7daa6d5aba5ff33d52a31f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(f,  name)&#160;&#160;&#160;(((f) &gt;&gt; name##_BIT) &amp; name##_MASK)</td></tr>
+<tr class="separator:a07141b4d0c7daa6d5aba5ff33d52a31f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a817a3e293b1ae4210ee68871d6b67e1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a>(f,  name,  value)</td></tr>
+<tr class="separator:a817a3e293b1ae4210ee68871d6b67e1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9a11ce4168273452b3fde6e42221d74"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#aa9a11ce4168273452b3fde6e42221d74">APREQ_CHARSET_BIT</a>&#160;&#160;&#160;0</td></tr>
+<tr class="separator:aa9a11ce4168273452b3fde6e42221d74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a901fbcbe68a29cfce368b6640bd5bcde"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a901fbcbe68a29cfce368b6640bd5bcde">APREQ_CHARSET_MASK</a>&#160;&#160;&#160;255</td></tr>
+<tr class="separator:a901fbcbe68a29cfce368b6640bd5bcde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acecc7cc6c676725990e0be5f14179ca7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#acecc7cc6c676725990e0be5f14179ca7">APREQ_TAINTED_BIT</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:acecc7cc6c676725990e0be5f14179ca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b151396d29841edc92a2889a38fda79"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a3b151396d29841edc92a2889a38fda79">APREQ_TAINTED_MASK</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:a3b151396d29841edc92a2889a38fda79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16af9730d0124fef7849c36121d63141"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a16af9730d0124fef7849c36121d63141">APREQ_COOKIE_VERSION_BIT</a>&#160;&#160;&#160;11</td></tr>
+<tr class="separator:a16af9730d0124fef7849c36121d63141"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae70e687e9866ea4a61ed3594c97bf5ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#ae70e687e9866ea4a61ed3594c97bf5ce">APREQ_COOKIE_VERSION_MASK</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:ae70e687e9866ea4a61ed3594c97bf5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79ac15b3b3d9905367b9758514513dc0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a79ac15b3b3d9905367b9758514513dc0">APREQ_COOKIE_SECURE_BIT</a>&#160;&#160;&#160;13</td></tr>
+<tr class="separator:a79ac15b3b3d9905367b9758514513dc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbe05bd23b067595cae2318473f42d9a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#acbe05bd23b067595cae2318473f42d9a">APREQ_COOKIE_SECURE_MASK</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:acbe05bd23b067595cae2318473f42d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fc978fd97cc558ff5f51a14503daab7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a9fc978fd97cc558ff5f51a14503daab7">APREQ_COOKIE_HTTPONLY_BIT</a>&#160;&#160;&#160;14</td></tr>
+<tr class="separator:a9fc978fd97cc558ff5f51a14503daab7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71f0dc8a9004339edfa279266fab50e8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a71f0dc8a9004339edfa279266fab50e8">APREQ_COOKIE_HTTPONLY_MASK</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:a71f0dc8a9004339edfa279266fab50e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6355f965e8eabf742537bfd8da534376"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a>(T,  A,  P)&#160;&#160;&#160;( (T*) ((char*)(P)-offsetof(T,A)) )</td></tr>
+<tr class="separator:a6355f965e8eabf742537bfd8da534376"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad1d0e6fa5f9cdecb695541c697789f3e"><td class="memItemLeft" align="right" valign="top"><a id="ad1d0e6fa5f9cdecb695541c697789f3e"></a>
+typedef struct <a class="el" href="structapreq__value__t.html">apreq_value_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">apreq_value_t</a></td></tr>
+<tr class="memdesc:ad1d0e6fa5f9cdecb695541c697789f3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">libapreq's pre-extensible string type <br /></td></tr>
+<tr class="separator:ad1d0e6fa5f9cdecb695541c697789f3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a6607dfa756796989c15014870b48c8cd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> { <b>APREQ_CHARSET_ASCII</b> =0
+, <b>APREQ_CHARSET_LATIN1</b> =1
+, <b>APREQ_CHARSET_CP1252</b> =2
+, <b>APREQ_CHARSET_UTF8</b> =8
+ }</td></tr>
+<tr class="separator:a6607dfa756796989c15014870b48c8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3784c04255e92629350505d35b0473e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a> { <a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">APREQ_JOIN_AS_IS</a>
+, <a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">APREQ_JOIN_ENCODE</a>
+, <a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">APREQ_JOIN_DECODE</a>
+, <a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">APREQ_JOIN_QUOTE</a>
+ }</td></tr>
+<tr class="separator:ac3784c04255e92629350505d35b0473e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a590d7bfd9cd294f652d388c4f37fc8d5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a> { <a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">APREQ_MATCH_FULL</a>
+, <a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">APREQ_MATCH_PARTIAL</a>
+ }</td></tr>
+<tr class="separator:a590d7bfd9cd294f652d388c4f37fc8d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb51f7cb925e3218c622ff82b8ee2f70"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a> { <a class="el" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">APREQ_EXPIRES_HTTP</a>
+, <a class="el" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">APREQ_EXPIRES_NSCOOKIE</a>
+ }</td></tr>
+<tr class="separator:aeb51f7cb925e3218c622ff82b8ee2f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0d27c51db1532fa3f829838ed90f6226"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">apreq_value_table_add</a> (const <a class="el" href="structapreq__value__t.html">apreq_value_t</a> *v, <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *t)</td></tr>
+<tr class="separator:a0d27c51db1532fa3f829838ed90f6226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a163e7aaee57baa89b4d7e00a4279b035"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">apreq_initialize</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7 [...]
+<tr class="separator:a163e7aaee57baa89b4d7e00a4279b035"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff013107e72c94b917617fd42dce79e8"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c [...]
+<tr class="separator:aff013107e72c94b917617fd42dce79e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acecad02f3b9982190143d1097bbfa555"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apreq_post_initialize</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36 [...]
+<tr class="separator:acecad02f3b9982190143d1097bbfa555"><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>Main header file... </p>
+<p>Define the generic APREQ_ macros and common data structures. </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a6355f965e8eabf742537bfd8da534376"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6355f965e8eabf742537bfd8da534376">&#9670;&nbsp;</a></span>apreq_attr_to_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define apreq_attr_to_type</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">T, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">A, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">P&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td>&#160;&#160;&#160;( (T*) ((char*)(P)-offsetof(T,A)) )</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">T</td><td>type </td></tr>
+    <tr><td class="paramname">A</td><td>attribute </td></tr>
+    <tr><td class="paramname">P</td><td>XXX </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a id="aa9a11ce4168273452b3fde6e42221d74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9a11ce4168273452b3fde6e42221d74">&#9670;&nbsp;</a></span>APREQ_CHARSET_BIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_CHARSET_BIT&#160;&#160;&#160;0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Charset Bit </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a901fbcbe68a29cfce368b6640bd5bcde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a901fbcbe68a29cfce368b6640bd5bcde">&#9670;&nbsp;</a></span>APREQ_CHARSET_MASK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_CHARSET_MASK&#160;&#160;&#160;255</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Charset Mask </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a9fc978fd97cc558ff5f51a14503daab7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fc978fd97cc558ff5f51a14503daab7">&#9670;&nbsp;</a></span>APREQ_COOKIE_HTTPONLY_BIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_HTTPONLY_BIT&#160;&#160;&#160;14</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookie's HttpOnly Bit </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a71f0dc8a9004339edfa279266fab50e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71f0dc8a9004339edfa279266fab50e8">&#9670;&nbsp;</a></span>APREQ_COOKIE_HTTPONLY_MASK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_HTTPONLY_MASK&#160;&#160;&#160;1</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookie's HttpOnly Mask </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a79ac15b3b3d9905367b9758514513dc0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79ac15b3b3d9905367b9758514513dc0">&#9670;&nbsp;</a></span>APREQ_COOKIE_SECURE_BIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_SECURE_BIT&#160;&#160;&#160;13</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookie's Secure Bit </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="acbe05bd23b067595cae2318473f42d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acbe05bd23b067595cae2318473f42d9a">&#9670;&nbsp;</a></span>APREQ_COOKIE_SECURE_MASK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_SECURE_MASK&#160;&#160;&#160;1</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookie's Secure Mask </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a16af9730d0124fef7849c36121d63141"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16af9730d0124fef7849c36121d63141">&#9670;&nbsp;</a></span>APREQ_COOKIE_VERSION_BIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_VERSION_BIT&#160;&#160;&#160;11</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookier Version Bit </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="ae70e687e9866ea4a61ed3594c97bf5ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae70e687e9866ea4a61ed3594c97bf5ce">&#9670;&nbsp;</a></span>APREQ_COOKIE_VERSION_MASK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_VERSION_MASK&#160;&#160;&#160;3</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Cookie Version Mask </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a02bf89714a74397155a11b9ccb942b0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02bf89714a74397155a11b9ccb942b0d">&#9670;&nbsp;</a></span>APREQ_DECLARE</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DECLARE</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">d</td><td>)</td>
+          <td>&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__platform.html#gad7b91b811a172bfa802603c2fb688f98">APR_DECLARE</a>(d)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The public APREQ functions are declared with <a class="el" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE()</a>, so they may use the most appropriate calling convention. Public APR functions with variable arguments must use <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__platform.html#ga3ad5e45fabbda0ec5f106c334f1a0ae5">APR_DECLARE_NONSTD()</a>.</p>
+<dl class="section remark"><dt>Remarks</dt><dd>Both the declaration and implementations must use the same macro. <a class="el" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE(rettype)</a> apeq_func(args) </dd></dl>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a20">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="a142563500999527d486a2eac8c3a0973"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a142563500999527d486a2eac8c3a0973">&#9670;&nbsp;</a></span>APREQ_DECLARE_DATA</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DECLARE_DATA</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The public APREQ variables are declared with APREQ_DECLARE_DATA. This assures the appropriate indirection is invoked at compile time. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">APREQ_DECLARE_NONSTD</a> </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Note that the declaration and implementations use different forms, but both must include the macro. extern APREQ_DECLARE_DATA type apr_variable;<br  />
+APREQ_DECLARE_DATA type apr_variable = value; </dd></dl>
+
+</div>
+</div>
+<a id="a8a1e7333187fdbc476473ac72d2ff38b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a1e7333187fdbc476473ac72d2ff38b">&#9670;&nbsp;</a></span>APREQ_DECLARE_NONSTD</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DECLARE_NONSTD</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">d</td><td>)</td>
+          <td>&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__platform.html#ga3ad5e45fabbda0ec5f106c334f1a0ae5">APR_DECLARE_NONSTD</a>(d)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>APEQ_DECLARE_NONSTD(rettype) apr_func(args, ...); </p>
+
+</div>
+</div>
+<a id="af54c8645b8266fa7c9b2e261c608744f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af54c8645b8266fa7c9b2e261c608744f">&#9670;&nbsp;</a></span>APREQ_DEFAULT_BRIGADE_LIMIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DEFAULT_BRIGADE_LIMIT&#160;&#160;&#160;(256 * 1024)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Maximum number of bytes mod_apreq2 will let accumulate within the heap-buckets in a brigade. Excess data will be spooled to an appended file bucket </p><dl class="section see"><dt>See also</dt><dd>ap_set_brigade_read_limit </dd></dl>
+
+</div>
+</div>
+<a id="a253093cc2fffe7094828714ade120466"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a253093cc2fffe7094828714ade120466">&#9670;&nbsp;</a></span>APREQ_DEFAULT_NELTS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DEFAULT_NELTS&#160;&#160;&#160;8</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Number of elements in the initial apr_table </p><dl class="section see"><dt>See also</dt><dd><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#ga7b0a16a1388c68e66bff32190cf092f6">apr_table_make</a> </dd></dl>
+
+</div>
+</div>
+<a id="a73bfd1896ab59181f8e052fb8cc147cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73bfd1896ab59181f8e052fb8cc147cd">&#9670;&nbsp;</a></span>APREQ_DEFAULT_READ_BLOCK_SIZE</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DEFAULT_READ_BLOCK_SIZE&#160;&#160;&#160;(64  * 1024)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Read chucks of data in 64k blocks from the request </p>
+
+</div>
+</div>
+<a id="a744fa55285c4a3868a9154f473d58ac4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a744fa55285c4a3868a9154f473d58ac4">&#9670;&nbsp;</a></span>APREQ_DEFAULT_READ_LIMIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DEFAULT_READ_LIMIT&#160;&#160;&#160;(64 * 1024 * 1024)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Maximum number of bytes mod_apreq2 will send off to libapreq2 for parsing. mod_apreq2 will log this event and subsequently remove itself from the filter chain. <br  />
+ </p><dl class="section see"><dt>See also</dt><dd>ap_set_read_limit <br  />
+ </dd></dl>
+
+</div>
+</div>
+<a id="a07141b4d0c7daa6d5aba5ff33d52a31f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07141b4d0c7daa6d5aba5ff33d52a31f">&#9670;&nbsp;</a></span>APREQ_FLAGS_GET</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_FLAGS_GET</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">name&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td>&#160;&#160;&#160;(((f) &gt;&gt; name##_BIT) &amp; name##_MASK)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get specified bit f in bitfield name </p>
+
+</div>
+</div>
+<a id="a5bcc4e81747b13b7bfbb946648453f9e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5bcc4e81747b13b7bfbb946648453f9e">&#9670;&nbsp;</a></span>APREQ_FLAGS_OFF</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_FLAGS_OFF</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">name&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td>&#160;&#160;&#160;((f) &amp;= ~(name##_MASK &lt;&lt; name##_BIT))</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check to see if specified bit f is off in bitfield name </p>
+
+</div>
+</div>
+<a id="adf8584e758a62fe0a79023821c359222"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf8584e758a62fe0a79023821c359222">&#9670;&nbsp;</a></span>APREQ_FLAGS_ON</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_FLAGS_ON</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">name&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td>&#160;&#160;&#160;((f) |=  (name##_MASK &lt;&lt; name##_BIT))</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check to see if specified bit f is on in bitfield name </p>
+
+</div>
+</div>
+<a id="a817a3e293b1ae4210ee68871d6b67e1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a817a3e293b1ae4210ee68871d6b67e1f">&#9670;&nbsp;</a></span>APREQ_FLAGS_SET</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_FLAGS_SET</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">name, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">value&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">    ((f) = (((f) &amp; ~(name##_MASK &lt;&lt; name##_BIT))        \</div>
+<div class="line">            | ((name##_MASK &amp; (value)) &lt;&lt; name##_BIT)))</div>
+</div><!-- fragment --><p>Set specified bit f in bitfield name to value Note the below BIT/Mask defines are used sans the _BIT, _MASK because of the this define's ##_MASK, ##_BIT usage. Each come in a pair </p>
+
+</div>
+</div>
+<a id="acecc7cc6c676725990e0be5f14179ca7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acecc7cc6c676725990e0be5f14179ca7">&#9670;&nbsp;</a></span>APREQ_TAINTED_BIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_TAINTED_BIT&#160;&#160;&#160;8</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Tainted Bit </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<a id="a3b151396d29841edc92a2889a38fda79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b151396d29841edc92a2889a38fda79">&#9670;&nbsp;</a></span>APREQ_TAINTED_MASK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_TAINTED_MASK&#160;&#160;&#160;1</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Tainted Mask </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a> </dd>
+<dd>
+<a class="el" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a> </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a6607dfa756796989c15014870b48c8cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6607dfa756796989c15014870b48c8cd">&#9670;&nbsp;</a></span>apreq_charset_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Character encodings. </p>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a0">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="aeb51f7cb925e3218c622ff82b8ee2f70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb51f7cb925e3218c622ff82b8ee2f70">&#9670;&nbsp;</a></span>apreq_expires_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Expiration date format </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5"></a>APREQ_EXPIRES_HTTP&#160;</td><td class="fielddoc"><p>Use date formatting consistent with RFC 2616 </p>
+</td></tr>
+<tr><td class="fieldname"><a id="aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1"></a>APREQ_EXPIRES_NSCOOKIE&#160;</td><td class="fielddoc"><p>Use format consistent with Netscape's Cookie Spec </p>
+</td></tr>
+</table>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a11">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="ac3784c04255e92629350505d35b0473e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3784c04255e92629350505d35b0473e">&#9670;&nbsp;</a></span>apreq_join_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Join type </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08"></a>APREQ_JOIN_AS_IS&#160;</td><td class="fielddoc"><p>Join the strings without modification </p>
+</td></tr>
+<tr><td class="fieldname"><a id="ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36"></a>APREQ_JOIN_ENCODE&#160;</td><td class="fielddoc"><p>Url-encode the strings before joining them </p>
+</td></tr>
+<tr><td class="fieldname"><a id="ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6"></a>APREQ_JOIN_DECODE&#160;</td><td class="fielddoc"><p>Url-decode the strings before joining them </p>
+</td></tr>
+<tr><td class="fieldname"><a id="ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9"></a>APREQ_JOIN_QUOTE&#160;</td><td class="fielddoc"><p>Quote the strings, backslashing existing quote marks. </p>
+</td></tr>
+</table>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a5">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="a590d7bfd9cd294f652d388c4f37fc8d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a590d7bfd9cd294f652d388c4f37fc8d5">&#9670;&nbsp;</a></span>apreq_match_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Match type </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba"></a>APREQ_MATCH_FULL&#160;</td><td class="fielddoc"><p>Full match only. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9"></a>APREQ_MATCH_PARTIAL&#160;</td><td class="fielddoc"><p>Partial matches are ok. </p>
+</td></tr>
+</table>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a8">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a163e7aaee57baa89b4d7e00a4279b035"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a163e7aaee57baa89b4d7e00a4279b035">&#9670;&nbsp;</a></span>apreq_initialize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_initialize </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Initialize libapreq2. Applications (except apache modules using mod_apreq) should call this exactly once before they use any libapreq2 modules. If you want to modify the list of default parsers with <a class="el" href="apreq__parser_8h.html#a595f05be3d241a5b339fd6ef948bfbc8">apreq_register_parser()</a>, please use <a class="el" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize()</a> and <a class="el" href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apre [...]
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>a base pool persisting while libapreq2 is used </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section remark"><dt>Remarks</dt><dd>after you destroy the pool, you have to call this function again with a new pool if you still plan to use libapreq2 </dd></dl>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a21">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="acecad02f3b9982190143d1097bbfa555"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acecad02f3b9982190143d1097bbfa555">&#9670;&nbsp;</a></span>apreq_post_initialize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_post_initialize </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Post-initialize libapreq2. Applications (except apache modules using mod_apreq2) should this exactly once before they use any libapreq2 modules for parsing.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>the same pool that was used in <a class="el" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize()</a>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a23">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="aff013107e72c94b917617fd42dce79e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff013107e72c94b917617fd42dce79e8">&#9670;&nbsp;</a></span>apreq_pre_initialize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_pre_initialize </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Pre-initialize libapreq2. Applications (except apache modules using mod_apreq2) should call this exactly once before they register custom parsers with libapreq2. mod_apreq2 does this automatically during the post-config phase, so modules that need call apreq_register_parser should create a post-config hook using APR_HOOK_MIDDLE.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>a base pool persisting while libapreq2 is used </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section remark"><dt>Remarks</dt><dd>after you destroyed the pool, you have to call this function again with a new pool if you still plan to use libapreq2 </dd></dl>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a22">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+<a id="a0d27c51db1532fa3f829838ed90f6226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d27c51db1532fa3f829838ed90f6226">&#9670;&nbsp;</a></span>apreq_value_table_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_value_table_add </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__value__t.html">apreq_value_t</a> *&#160;</td>
+          <td class="paramname"><em>v</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>t</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Adds the specified <a class="el" href="structapreq__value__t.html" title="libapreq&#39;s pre-extensible string type">apreq_value_t</a> to the apr_table_t.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">v</td><td>value to add </td></tr>
+    <tr><td class="paramname">t</td><td>add v to this table</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
+<p>@ see apr_table_t </p><dl class="section see"><dt>See also</dt><dd>apr_value_t </dd></dl>
+<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_2home_2tititou36_2Dev_2svn_httpd_apreq-2_2include_2apreq_8h-example.html#a18">/home/tititou36/Dev/svn_httpd_apreq-2/include/apreq.h</a>.</dd>
+</dl>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.map
new file mode 100644
index 0000000..06596f7
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.map
@@ -0,0 +1,12 @@
+<map id="include/apreq.h" name="include/apreq.h">
+<area shape="rect" id="node1" title="Main header file..." alt="" coords="342,5,465,32"/>
+<area shape="rect" id="node2" href="$apreq__cookie_8h.html" title="Cookies and Jars." alt="" coords="5,155,177,181"/>
+<area shape="rect" id="node6" href="$apreq__error_8h.html" title="Error status codes." alt="" coords="201,155,360,181"/>
+<area shape="rect" id="node7" href="$apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="318,80,489,107"/>
+<area shape="rect" id="node9" href="$apreq__util_8h.html" title="Utility functions for apreq." alt="" coords="513,80,664,107"/>
+<area shape="rect" id="node10" href="$apreq__version_8h.html" title="Versioning API for libapreq." alt="" coords="688,80,865,107"/>
+<area shape="rect" id="node3" href="$apreq__module_8h.html" title="Module API." alt="" coords="191,229,370,256"/>
+<area shape="rect" id="node4" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="105,304,267,345"/>
+<area shape="rect" id="node5" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="291,304,462,345"/>
+<area shape="rect" id="node8" href="$apreq__parser_8h.html" title="Request body parser API." alt="" coords="384,155,553,181"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.md5
new file mode 100644
index 0000000..61a9f59
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.md5
@@ -0,0 +1 @@
+23864cb81acd1b1aaec7712c1d7cdd1b
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.png
new file mode 100644
index 0000000..d9adf61
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq_8h__incl.map b/output/apreq/docs/libapreq2/apreq_8h__incl.map
new file mode 100644
index 0000000..f1fc3af
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h__incl.map
@@ -0,0 +1,5 @@
+<map id="include/apreq.h" name="include/apreq.h">
+<area shape="rect" id="node1" title="Main header file..." alt="" coords="51,5,174,32"/>
+<area shape="rect" id="node2" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="5,80,108,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="133,80,207,107"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq_8h__incl.md5
new file mode 100644
index 0000000..525e2f6
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h__incl.md5
@@ -0,0 +1 @@
+2b9985fbf77406ab811c04053498742c
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq_8h__incl.png b/output/apreq/docs/libapreq2/apreq_8h__incl.png
new file mode 100644
index 0000000..d49a126
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq_8h_source.html b/output/apreq/docs/libapreq2/apreq_8h_source.html
new file mode 100644
index 0000000..3144ec3
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq_8h_source.html
@@ -0,0 +1,248 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifdef APREQ_DEBUG</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;assert.h&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html">apr_tables.h</a>&quot;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#ifndef WIN32</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">   50</a></span>&#160;<span class="preprocessor">#define APREQ_DECLARE(d)                APR_DECLARE(d)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">   60</a></span>&#160;<span class="preprocessor">#define APREQ_DECLARE_NONSTD(d)         APR_DECLARE_NONSTD(d)</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="apreq_8h.html#a142563500999527d486a2eac8c3a0973">   71</a></span>&#160;<span class="preprocessor">#define APREQ_DECLARE_DATA</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">#elif defined (APREQ_DECLARE_STATIC)</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#define APREQ_DECLARE(type)             type __stdcall</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      type</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_DATA</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#elif defined (APREQ_DECLARE_EXPORT)</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#define APREQ_DECLARE(type)             __declspec(dllexport) type __stdcall</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      __declspec(dllexport) type</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_DATA              __declspec(dllexport)</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#define APREQ_DECLARE(type)             __declspec(dllimport) type __stdcall</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_NONSTD(type)      __declspec(dllimport) type</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#define APREQ_DECLARE_DATA              __declspec(dllimport)</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="apreq_8h.html#a73bfd1896ab59181f8e052fb8cc147cd">   90</a></span>&#160;<span class="preprocessor">#define APREQ_DEFAULT_READ_BLOCK_SIZE   (64  * 1024)</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="apreq_8h.html#a744fa55285c4a3868a9154f473d58ac4">   98</a></span>&#160;<span class="preprocessor">#define APREQ_DEFAULT_READ_LIMIT        (64 * 1024 * 1024)</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="apreq_8h.html#af54c8645b8266fa7c9b2e261c608744f">  105</a></span>&#160;<span class="preprocessor">#define APREQ_DEFAULT_BRIGADE_LIMIT     (256 * 1024)</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="apreq_8h.html#a253093cc2fffe7094828714ade120466">  111</a></span>&#160;<span class="preprocessor">#define APREQ_DEFAULT_NELTS              8</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">  118</a></span>&#160;<span class="preprocessor">#define APREQ_FLAGS_OFF(f, name) ((f) &amp;= ~(name##_MASK &lt;&lt; name##_BIT))</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">  122</a></span>&#160;<span class="preprocessor">#define APREQ_FLAGS_ON(f, name)  ((f) |=  (name##_MASK &lt;&lt; name##_BIT))</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">  126</a></span>&#160;<span class="preprocessor">#define APREQ_FLAGS_GET(f, name) (((f) &gt;&gt; name##_BIT) &amp; name##_MASK)</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">  133</a></span>&#160;<span class="preprocessor">#define APREQ_FLAGS_SET(f, name, value)                 \</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">    ((f) = (((f) &amp; ~(name##_MASK &lt;&lt; name##_BIT))        \</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">            | ((name##_MASK &amp; (value)) &lt;&lt; name##_BIT)))</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="apreq_8h.html#aa9a11ce4168273452b3fde6e42221d74">  142</a></span>&#160;<span class="preprocessor">#define APREQ_CHARSET_BIT           0</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="apreq_8h.html#a901fbcbe68a29cfce368b6640bd5bcde">  149</a></span>&#160;<span class="preprocessor">#define APREQ_CHARSET_MASK        255</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="apreq_8h.html#acecc7cc6c676725990e0be5f14179ca7">  156</a></span>&#160;<span class="preprocessor">#define APREQ_TAINTED_BIT           8</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="apreq_8h.html#a3b151396d29841edc92a2889a38fda79">  162</a></span>&#160;<span class="preprocessor">#define APREQ_TAINTED_MASK          1</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="apreq_8h.html#a16af9730d0124fef7849c36121d63141">  170</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_VERSION_BIT   11</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="apreq_8h.html#ae70e687e9866ea4a61ed3594c97bf5ce">  176</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_VERSION_MASK   3</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="apreq_8h.html#a79ac15b3b3d9905367b9758514513dc0">  183</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_SECURE_BIT    13</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="apreq_8h.html#acbe05bd23b067595cae2318473f42d9a">  189</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_SECURE_MASK    1</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160; </div>
+<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="apreq_8h.html#a9fc978fd97cc558ff5f51a14503daab7">  196</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_HTTPONLY_BIT    14</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="apreq_8h.html#a71f0dc8a9004339edfa279266fab50e8">  202</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_HTTPONLY_MASK    1</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160; </div>
+<div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">  205</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    APREQ_CHARSET_ASCII  =0,</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    APREQ_CHARSET_LATIN1 =1, <span class="comment">/* ISO-8859-1   */</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    APREQ_CHARSET_CP1252 =2, <span class="comment">/* Windows-1252 */</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    APREQ_CHARSET_UTF8   =8</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;} <a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160; </div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">  214</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">  215</a></span>&#160;    <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">APREQ_JOIN_AS_IS</a>,      </div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">  216</a></span>&#160;    <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">APREQ_JOIN_ENCODE</a>,     </div>
+<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">  217</a></span>&#160;    <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">APREQ_JOIN_DECODE</a>,     </div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">APREQ_JOIN_QUOTE</a>       </div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">  219</a></span>&#160;} <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a>;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">  222</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">  223</a></span>&#160;    <a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">APREQ_MATCH_FULL</a>,       </div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">APREQ_MATCH_PARTIAL</a>     </div>
+<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">  225</a></span>&#160;} <a class="code" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a>;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160; </div>
+<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">  228</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">  229</a></span>&#160;    <a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">APREQ_EXPIRES_HTTP</a>,       </div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">APREQ_EXPIRES_NSCOOKIE</a>    </div>
+<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">  231</a></span>&#160;} <a class="code" href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a>;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160; </div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; </div>
+<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="structapreq__value__t.html">  235</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__value__t.html">apreq_value_t</a> {</div>
+<div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">  236</a></span>&#160;    <span class="keywordtype">char</span>             *<a class="code" href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">name</a>;    </div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="structapreq__value__t.html#ae0d07fb5f672d1bd32c9bb53b4da941a">  237</a></span>&#160;    apr_size_t        <a class="code" href="structapreq__value__t.html#ae0d07fb5f672d1bd32c9bb53b4da941a">nlen</a>;    </div>
+<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structapreq__value__t.html#a7881ecfbe424c4708792fe4b2b1bd4a7">  238</a></span>&#160;    apr_size_t        <a class="code" href="structapreq__value__t.html#a7881ecfbe424c4708792fe4b2b1bd4a7">dlen</a>;    </div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">  239</a></span>&#160;    <span class="keywordtype">char</span>              <a class="code" href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">data</a>[1]; </div>
+<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">  240</a></span>&#160;} <a class="code" href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">apreq_value_t</a>;</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160; </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">  254</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">apreq_value_table_add</a>(<span class="keyword">const</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a> *v, <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608 [...]
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gaff9fdbd8f499f0dfb07123230e19ea54">apr_table_addn</a>(t, v-&gt;<a class="code" href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">name</a>, v-&gt;<a class="code" href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">data</a>);</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;}</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160; </div>
+<div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">  265</a></span>&#160;<span class="preprocessor">#define apreq_attr_to_type(T,A,P) ( (T*) ((char*)(P)-offsetof(T,A)) )</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160; </div>
+<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">  278</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">apreq_initialize</a>(<a class="codeRef" hr [...]
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160; </div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160; </div>
+<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">  292</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize</a>(<a class="codeRef [...]
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160; </div>
+<div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">  301</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apreq_post_initialize</a>(<a class="codeRe [...]
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160; </div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; }</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160; </div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APREQ_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="aapr__tables_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html">apr_tables.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq_8h_html_a0d27c51db1532fa3f829838ed90f6226"><div class="ttname"><a href="apreq_8h.html#a0d27c51db1532fa3f829838ed90f6226">apreq_value_table_add</a></div><div class="ttdeci">static APR_INLINE void apreq_value_table_add(const apreq_value_t *v, apr_table_t *t)</div><div class="ttdef"><b>Definition:</b> apreq.h:254</div></div>
+<div class="ttc" id="aapreq_8h_html_a163e7aaee57baa89b4d7e00a4279b035"><div class="ttname"><a href="apreq_8h.html#a163e7aaee57baa89b4d7e00a4279b035">apreq_initialize</a></div><div class="ttdeci">apr_status_t apreq_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a></div><div class="ttdeci">apreq_match_t</div><div class="ttdef"><b>Definition:</b> apreq.h:222</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a2fbd9432fdb0e8bec90bd9ec76dcb3f9">APREQ_MATCH_PARTIAL</a></div><div class="ttdeci">@ APREQ_MATCH_PARTIAL</div><div class="ttdef"><b>Definition:</b> apreq.h:224</div></div>
+<div class="ttc" id="aapreq_8h_html_a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba"><div class="ttname"><a href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5a6ff614170217cfafb5c32c1cefd6caba">APREQ_MATCH_FULL</a></div><div class="ttdeci">@ APREQ_MATCH_FULL</div><div class="ttdef"><b>Definition:</b> apreq.h:223</div></div>
+<div class="ttc" id="aapreq_8h_html_a6607dfa756796989c15014870b48c8cd"><div class="ttname"><a href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a></div><div class="ttdeci">apreq_charset_t</div><div class="ttdef"><b>Definition:</b> apreq.h:205</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473e"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a></div><div class="ttdeci">apreq_join_t</div><div class="ttdef"><b>Definition:</b> apreq.h:214</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea6cc82b38c229380cc7fbb274b7e3cf36">APREQ_JOIN_ENCODE</a></div><div class="ttdeci">@ APREQ_JOIN_ENCODE</div><div class="ttdef"><b>Definition:</b> apreq.h:216</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9b74c73cbfdf7aad3effc0627018ff08">APREQ_JOIN_AS_IS</a></div><div class="ttdeci">@ APREQ_JOIN_AS_IS</div><div class="ttdef"><b>Definition:</b> apreq.h:215</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473ea9dd8468f9547f1dee0709f906e98cdc6">APREQ_JOIN_DECODE</a></div><div class="ttdeci">@ APREQ_JOIN_DECODE</div><div class="ttdef"><b>Definition:</b> apreq.h:217</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473eab22a5a8f345963488381335b2f909fb9">APREQ_JOIN_QUOTE</a></div><div class="ttdeci">@ APREQ_JOIN_QUOTE</div><div class="ttdef"><b>Definition:</b> apreq.h:218</div></div>
+<div class="ttc" id="aapreq_8h_html_acecad02f3b9982190143d1097bbfa555"><div class="ttname"><a href="apreq_8h.html#acecad02f3b9982190143d1097bbfa555">apreq_post_initialize</a></div><div class="ttdeci">apr_status_t apreq_post_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq_8h_html_ad1d0e6fa5f9cdecb695541c697789f3e"><div class="ttname"><a href="apreq_8h.html#ad1d0e6fa5f9cdecb695541c697789f3e">apreq_value_t</a></div><div class="ttdeci">struct apreq_value_t apreq_value_t</div><div class="ttdoc">libapreq's pre-extensible string type</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70">apreq_expires_t</a></div><div class="ttdeci">apreq_expires_t</div><div class="ttdef"><b>Definition:</b> apreq.h:228</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70aa7e0989ec9839a8494ea328ff30eb5a1">APREQ_EXPIRES_NSCOOKIE</a></div><div class="ttdeci">@ APREQ_EXPIRES_NSCOOKIE</div><div class="ttdef"><b>Definition:</b> apreq.h:230</div></div>
+<div class="ttc" id="aapreq_8h_html_aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5"><div class="ttname"><a href="apreq_8h.html#aeb51f7cb925e3218c622ff82b8ee2f70ad0fecca3f99d74b155630437504119f5">APREQ_EXPIRES_HTTP</a></div><div class="ttdeci">@ APREQ_EXPIRES_HTTP</div><div class="ttdef"><b>Definition:</b> apreq.h:229</div></div>
+<div class="ttc" id="aapreq_8h_html_aff013107e72c94b917617fd42dce79e8"><div class="ttname"><a href="apreq_8h.html#aff013107e72c94b917617fd42dce79e8">apreq_pre_initialize</a></div><div class="ttdeci">apr_status_t apreq_pre_initialize(apr_pool_t *pool)</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gaff9fdbd8f499f0dfb07123230e19ea54"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gaff9fdbd8f499f0dfb07123230e19ea54">apr_table_addn</a></div><div class="ttdeci">void apr_table_addn(apr_table_t *t, const char *key, const char *val)</div></div>
+<div class="ttc" id="astructapreq__value__t_html"><div class="ttname"><a href="structapreq__value__t.html">apreq_value_t</a></div><div class="ttdoc">libapreq's pre-extensible string type</div><div class="ttdef"><b>Definition:</b> apreq.h:235</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a3015440cd334584cafa3e19078cbf778"><div class="ttname"><a href="structapreq__value__t.html#a3015440cd334584cafa3e19078cbf778">apreq_value_t::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> apreq.h:236</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a4aab05328f30a972ae6cd56235a4350e"><div class="ttname"><a href="structapreq__value__t.html#a4aab05328f30a972ae6cd56235a4350e">apreq_value_t::data</a></div><div class="ttdeci">char data[1]</div><div class="ttdef"><b>Definition:</b> apreq.h:239</div></div>
+<div class="ttc" id="astructapreq__value__t_html_a7881ecfbe424c4708792fe4b2b1bd4a7"><div class="ttname"><a href="structapreq__value__t.html#a7881ecfbe424c4708792fe4b2b1bd4a7">apreq_value_t::dlen</a></div><div class="ttdeci">apr_size_t dlen</div><div class="ttdef"><b>Definition:</b> apreq.h:238</div></div>
+<div class="ttc" id="astructapreq__value__t_html_ae0d07fb5f672d1bd32c9bb53b4da941a"><div class="ttname"><a href="structapreq__value__t.html#ae0d07fb5f672d1bd32c9bb53b4da941a">apreq_value_t::nlen</a></div><div class="ttdeci">apr_size_t nlen</div><div class="ttdef"><b>Definition:</b> apreq.h:237</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h.html b/output/apreq/docs/libapreq2/apreq__cookie_8h.html
new file mode 100644
index 0000000..ad7c7fb
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h.html
@@ -0,0 +1,769 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_cookie.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_cookie.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Cookies and Jars.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="el" href="apreq_8h_source.html">apreq.h</a>&quot;</code><br />
+<code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html">apr_time.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_cookie.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__cookie_8h__incl.png" border="0" usemap="#ainclude_2apreq__cookie_8h" alt=""/></div>
+<map name="ainclude_2apreq__cookie_8h" id="ainclude_2apreq__cookie_8h">
+<area shape="rect" title="Cookies and Jars." alt="" coords="79,5,251,32"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="77,80,148,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html.html" title=" " alt="" coords="172,80,264,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="5,155,108,181"/>
+<area shape="rect" title=" " alt="" coords="133,155,207,181"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__cookie_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__cookie_8hdep" alt=""/></div>
+<map name="ainclude_2apreq__cookie_8hdep" id="ainclude_2apreq__cookie_8hdep">
+<area shape="rect" title="Cookies and Jars." alt="" coords="95,5,267,32"/>
+<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__cookie_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cookie type, supporting both Netscape and RFC cookie specifications.  <a href="structapreq__cookie__t.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a681b8ef60cad05e684876d4dd2be043b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a681b8ef60cad05e684876d4dd2be043b">APREQ_COOKIE_MAX_LENGTH</a>&#160;&#160;&#160;4096</td></tr>
+<tr class="separator:a681b8ef60cad05e684876d4dd2be043b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a40b9ebd9bc37f9019c0091ee97c4c535"><td class="memItemLeft" align="right" valign="top"><a id="a40b9ebd9bc37f9019c0091ee97c4c535"></a>
+typedef struct <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a40b9ebd9bc37f9019c0091ee97c4c535">apreq_cookie_t</a></td></tr>
+<tr class="memdesc:a40b9ebd9bc37f9019c0091ee97c4c535"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cookie type, supporting both Netscape and RFC cookie specifications. <br /></td></tr>
+<tr class="separator:a40b9ebd9bc37f9019c0091ee97c4c535"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab69d56f31d7c8f6f6f598a133817b46e"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#ab69d56f31d7c8f6f6f598a133817b46e">apreq_value_to_cookie</a> (const char *val)</td></tr>
+<tr class="separator:ab69d56f31d7c8f6f6f598a133817b46e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04eaee766e51f143ff2ca4d8a0107004"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a04eaee766e51f143ff2ca4d8a0107004">apreq_cookie_version</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a04eaee766e51f143ff2ca4d8a0107004"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeff5b05ca6b935dd61dcc9da1a047546"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#aeff5b05ca6b935dd61dcc9da1a047546">apreq_cookie_version_set</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, unsigned v)</td></tr>
+<tr class="separator:aeff5b05ca6b935dd61dcc9da1a047546"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7553c7f54497ce30e1828082c98c813e"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a7553c7f54497ce30e1828082c98c813e">apreq_cookie_is_secure</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a7553c7f54497ce30e1828082c98c813e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1df7a1ba35cf4c47fc907f40b95fe5e4"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a1df7a1ba35cf4c47fc907f40b95fe5e4">apreq_cookie_secure_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a1df7a1ba35cf4c47fc907f40b95fe5e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9f4813b99b80801ba1dc11d0099ac10"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#ad9f4813b99b80801ba1dc11d0099ac10">apreq_cookie_secure_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:ad9f4813b99b80801ba1dc11d0099ac10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61c3709414b9fe614e32587da8ee8e8a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a61c3709414b9fe614e32587da8ee8e8a">apreq_cookie_is_httponly</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a61c3709414b9fe614e32587da8ee8e8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9a94a9b03dea7b286a9c4041d3c7e4e"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#aa9a94a9b03dea7b286a9c4041d3c7e4e">apreq_cookie_httponly_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:aa9a94a9b03dea7b286a9c4041d3c7e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a619cc2d56e20134e91bf1d31ab26bfec"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a619cc2d56e20134e91bf1d31ab26bfec">apreq_cookie_httponly_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a619cc2d56e20134e91bf1d31ab26bfec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08618139ba29e98cd2327de3f0e961fe"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a08618139ba29e98cd2327de3f0e961fe">apreq_cookie_is_tainted</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:a08618139ba29e98cd2327de3f0e961fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afeec2e0802ae883d4f2fda750b74ca55"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#afeec2e0802ae883d4f2fda750b74ca55">apreq_cookie_tainted_on</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:afeec2e0802ae883d4f2fda750b74ca55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3b777e9709fa062ff978afef3867964"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#ac3b777e9709fa062ff978afef3867964">apreq_cookie_tainted_off</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c)</td></tr>
+<tr class="separator:ac3b777e9709fa062ff978afef3867964"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113be08c01bc82605ec52d80c054cbf6"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a113be08c01bc82605ec52d80c054cbf6">apreq_parse_cookie_header</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf [...]
+<tr class="separator:a113be08c01bc82605ec52d80c054cbf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53b5bb02baf7fb318cd643fb55820422"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a53b5bb02baf7fb318cd643fb55820422">apreq_cookie_make</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, const char *name, const apr [...]
+<tr class="separator:a53b5bb02baf7fb318cd643fb55820422"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10c1d6639303c3f85fb5818d88e654d3"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a10c1d6639303c3f85fb5818d88e654d3">apreq_cookie_as_string</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
+<tr class="separator:a10c1d6639303c3f85fb5818d88e654d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc06d8f5e4ee8530013c4f3c3b12e01f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#afc06d8f5e4ee8530013c4f3c3b12e01f">apreq_cookie_serialize</a> (const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, char *buf, apr_size_t len)</td></tr>
+<tr class="separator:afc06d8f5e4ee8530013c4f3c3b12e01f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c6eb3c7c0f003bdc150d2ce99dacc7f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__cookie_8h.html#a8c6eb3c7c0f003bdc150d2ce99dacc7f">apreq_cookie_expires</a> (<a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, const char *time_str)</td></tr>
+<tr class="separator:a8c6eb3c7c0f003bdc150d2ce99dacc7f"><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>Cookies and Jars. </p>
+<p><a class="el" href="apreq__cookie_8h.html" title="Cookies and Jars.">apreq_cookie.h</a> describes a common server-side API for request (incoming) and response (outgoing) cookies. It aims towards compliance with the standard cookie specifications listed below.</p>
+<dl class="section see"><dt>See also</dt><dd><a href="http://wp.netscape.com/newsref/std/cookie_spec.html">http://wp.netscape.com/newsref/std/cookie_spec.html</a> </dd>
+<dd>
+<a href="http://www.ietf.org/rfc/rfc2109.txt">http://www.ietf.org/rfc/rfc2109.txt</a> </dd>
+<dd>
+<a href="http://www.ietf.org/rfc/rfc2964.txt">http://www.ietf.org/rfc/rfc2964.txt</a> </dd>
+<dd>
+<a href="http://www.ietf.org/rfc/rfc2965.txt">http://www.ietf.org/rfc/rfc2965.txt</a> </dd></dl>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a681b8ef60cad05e684876d4dd2be043b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a681b8ef60cad05e684876d4dd2be043b">&#9670;&nbsp;</a></span>APREQ_COOKIE_MAX_LENGTH</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_COOKIE_MAX_LENGTH&#160;&#160;&#160;4096</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>This macro is deprecated.</p>
+<p>Maximum length of a single Set-Cookie(2) header. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a10c1d6639303c3f85fb5818d88e654d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10c1d6639303c3f85fb5818d88e654d3">&#9670;&nbsp;</a></span>apreq_cookie_as_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char* apreq_cookie_as_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a string that represents the cookie as it would appear in a valid "Set-Cookie*" header.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">c</td><td>cookie. </td></tr>
+    <tr><td class="paramname">p</td><td>pool which allocates the returned string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>header string. </dd></dl>
+
+</div>
+</div>
+<a id="a8c6eb3c7c0f003bdc150d2ce99dacc7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c6eb3c7c0f003bdc150d2ce99dacc7f">&#9670;&nbsp;</a></span>apreq_cookie_expires()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void apreq_cookie_expires </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>time_str</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the Cookie's expiration date.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">c</td><td>The cookie. </td></tr>
+    <tr><td class="paramname">time_str</td><td>If NULL, the Cookie's expiration date is unset, making it a session cookie. This means no "expires" or "max-age" attribute will appear in the cookie's serialized form. If time_str is not NULL, the expiration date will be reset to the offset (from now) represented by time_str. The time_str should be in a format that <a class="el" href="apreq__util_8h.html#a4e838a92724aa7d9be0b978dc5c4e50c">apreq_atoi64t()</a> can understand, namely /[+-]?\d+\ [...]
+  </table>
+  </dd>
+</dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Now time_str may also be a fixed date; see <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___date.html#gaa6d4a18ff9f40c37c0f145d063c50e96">apr_date_parse_rfc()</a> for admissible formats. </dd></dl>
+
+</div>
+</div>
+<a id="a619cc2d56e20134e91bf1d31ab26bfec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a619cc2d56e20134e91bf1d31ab26bfec">&#9670;&nbsp;</a></span>apreq_cookie_httponly_off()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_httponly_off </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Turns off the cookie's HttpOnly flag. </p>
+
+</div>
+</div>
+<a id="aa9a94a9b03dea7b286a9c4041d3c7e4e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9a94a9b03dea7b286a9c4041d3c7e4e">&#9670;&nbsp;</a></span>apreq_cookie_httponly_on()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_httponly_on </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the cookie's HttpOnly flag, meaning it is not accessible through client-side script in supported browsers. </p>
+
+</div>
+</div>
+<a id="a61c3709414b9fe614e32587da8ee8e8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61c3709414b9fe614e32587da8ee8e8a">&#9670;&nbsp;</a></span>apreq_cookie_is_httponly()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_cookie_is_httponly </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>1 if the HttpOnly flag is set, 0 otherwise. </dd></dl>
+
+</div>
+</div>
+<a id="a7553c7f54497ce30e1828082c98c813e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7553c7f54497ce30e1828082c98c813e">&#9670;&nbsp;</a></span>apreq_cookie_is_secure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_cookie_is_secure </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>1 if the secure flag is set, 0 otherwise. </dd></dl>
+
+</div>
+</div>
+<a id="a08618139ba29e98cd2327de3f0e961fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08618139ba29e98cd2327de3f0e961fe">&#9670;&nbsp;</a></span>apreq_cookie_is_tainted()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_cookie_is_tainted </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>1 if the taint flag is set, 0 otherwise. </dd></dl>
+
+</div>
+</div>
+<a id="a53b5bb02baf7fb318cd643fb55820422"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53b5bb02baf7fb318cd643fb55820422">&#9670;&nbsp;</a></span>apreq_cookie_make()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>* apreq_cookie_make </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>nlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>vlen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a new cookie, made from the argument list.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>Pool which allocates the cookie. </td></tr>
+    <tr><td class="paramname">name</td><td>The cookie's name. </td></tr>
+    <tr><td class="paramname">nlen</td><td>Length of name. </td></tr>
+    <tr><td class="paramname">value</td><td>The cookie's value. </td></tr>
+    <tr><td class="paramname">vlen</td><td>Length of value.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the new cookie </dd></dl>
+
+</div>
+</div>
+<a id="ad9f4813b99b80801ba1dc11d0099ac10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9f4813b99b80801ba1dc11d0099ac10">&#9670;&nbsp;</a></span>apreq_cookie_secure_off()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_secure_off </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Turns off the cookie's secure flag. </p>
+
+</div>
+</div>
+<a id="a1df7a1ba35cf4c47fc907f40b95fe5e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1df7a1ba35cf4c47fc907f40b95fe5e4">&#9670;&nbsp;</a></span>apreq_cookie_secure_on()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_secure_on </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the cookie's secure flag, meaning it only comes back over an SSL-encrypted connction. </p>
+
+</div>
+</div>
+<a id="afc06d8f5e4ee8530013c4f3c3b12e01f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc06d8f5e4ee8530013c4f3c3b12e01f">&#9670;&nbsp;</a></span>apreq_cookie_serialize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int apreq_cookie_serialize </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>buf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Same functionality as apreq_cookie_as_string. Stores the string representation in buf, using up to len bytes in buf as storage. The return value has the same semantics as that of apr_snprintf, including the special behavior for a "len = 0" argument.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">c</td><td>cookie. </td></tr>
+    <tr><td class="paramname">buf</td><td>storage location for the result. </td></tr>
+    <tr><td class="paramname">len</td><td>size of buf's storage area.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>size of resulting header string. </dd></dl>
+
+</div>
+</div>
+<a id="ac3b777e9709fa062ff978afef3867964"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3b777e9709fa062ff978afef3867964">&#9670;&nbsp;</a></span>apreq_cookie_tainted_off()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_tainted_off </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Turns off the cookie's tainted flag. </p>
+
+</div>
+</div>
+<a id="afeec2e0802ae883d4f2fda750b74ca55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afeec2e0802ae883d4f2fda750b74ca55">&#9670;&nbsp;</a></span>apreq_cookie_tainted_on()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_tainted_on </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the cookie's tainted flag. </p>
+
+</div>
+</div>
+<a id="a04eaee766e51f143ff2ca4d8a0107004"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04eaee766e51f143ff2ca4d8a0107004">&#9670;&nbsp;</a></span>apreq_cookie_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_cookie_version </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>1 if this is an RFC cookie, 0 if its a Netscape cookie. </dd></dl>
+
+</div>
+</div>
+<a id="aeff5b05ca6b935dd61dcc9da1a047546"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeff5b05ca6b935dd61dcc9da1a047546">&#9670;&nbsp;</a></span>apreq_cookie_version_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_cookie_version_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td>
+          <td class="paramname"><em>c</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned&#160;</td>
+          <td class="paramname"><em>v</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the cookie's protocol version. </p>
+
+</div>
+</div>
+<a id="a113be08c01bc82605ec52d80c054cbf6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a113be08c01bc82605ec52d80c054cbf6">&#9670;&nbsp;</a></span>apreq_parse_cookie_header()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parse_cookie_header </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>jar</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>header</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Parse a cookie header and store the cookies in an apr_table_t.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>pool which allocates the cookies </td></tr>
+    <tr><td class="paramname">jar</td><td>table where parsed cookies are stored </td></tr>
+    <tr><td class="paramname">header</td><td>the header value</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> if an unparsable character sequence appears. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> if an rfc-cookie attribute appears in a netscape cookie header. </dd>
+<dd>
+<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga939ddb834a30bc9a5a0a329b13000161">APR_ENOTIMPL</a> if an unrecognized rfc-cookie attribute appears. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a59be3610ba54a58fbb3cd6bb655ff972">APREQ_ERROR_NOTOKEN</a> if a required token was not present. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a> if an unexpected token was present. </dd></dl>
+
+</div>
+</div>
+<a id="ab69d56f31d7c8f6f6f598a133817b46e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab69d56f31d7c8f6f6f598a133817b46e">&#9670;&nbsp;</a></span>apreq_value_to_cookie()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>* apreq_value_to_cookie </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>val</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Upgrades a jar's table values to <a class="el" href="structapreq__cookie__t.html" title="Cookie type, supporting both Netscape and RFC cookie specifications.">apreq_cookie_t</a> structs. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.map
new file mode 100644
index 0000000..1c7ea63
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.map
@@ -0,0 +1,6 @@
+<map id="include/apreq_cookie.h" name="include/apreq_cookie.h">
+<area shape="rect" id="node1" title="Cookies and Jars." alt="" coords="95,5,267,32"/>
+<area shape="rect" id="node2" href="$apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" id="node3" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" id="node4" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.md5
new file mode 100644
index 0000000..dca795b
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.md5
@@ -0,0 +1 @@
+f0e8832f82bdab2785be371f43d08cc3
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.png
new file mode 100644
index 0000000..fadde7f
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__cookie_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.map b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.map
new file mode 100644
index 0000000..40a2901
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="include/apreq_cookie.h" name="include/apreq_cookie.h">
+<area shape="rect" id="node1" title="Cookies and Jars." alt="" coords="79,5,251,32"/>
+<area shape="rect" id="node2" href="$apreq_8h.html" title="Main header file..." alt="" coords="77,80,148,107"/>
+<area shape="rect" id="node5" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__time_8h.html.html" title=" " alt="" coords="172,80,264,107"/>
+<area shape="rect" id="node3" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="5,155,108,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="133,155,207,181"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.md5
new file mode 100644
index 0000000..0b25d4d
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.md5
@@ -0,0 +1 @@
+1d457859a398207a9c6c22038e839d49
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.png b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.png
new file mode 100644
index 0000000..a9a44cb
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__cookie_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__cookie_8h_source.html b/output/apreq/docs/libapreq2/apreq__cookie_8h_source.html
new file mode 100644
index 0000000..3a4df95
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__cookie_8h_source.html
@@ -0,0 +1,261 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_cookie.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_cookie.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq__cookie_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_COOKIE_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_COOKIE_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq_8h.html">apreq.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html">apr_time.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a681b8ef60cad05e684876d4dd2be043b">   48</a></span>&#160;<span class="preprocessor">#define APREQ_COOKIE_MAX_LENGTH            4096</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html">   53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a75e2ad6da3068f50aca9b989e7e1729c">   55</a></span>&#160;    <span class="keywordtype">char</span>           *<a class="code" href="structapreq__cookie__t.html#a75e2ad6da3068f50aca9b989e7e1729c">path</a>;        </div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a8097326f4b8711db7d3f085f283ac5a6">   56</a></span>&#160;    <span class="keywordtype">char</span>           *<a class="code" href="structapreq__cookie__t.html#a8097326f4b8711db7d3f085f283ac5a6">domain</a>;      </div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a45dafe4c4b5a751a40bb4123ed691837">   57</a></span>&#160;    <span class="keywordtype">char</span>           *<a class="code" href="structapreq__cookie__t.html#a45dafe4c4b5a751a40bb4123ed691837">port</a>;        </div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#af911681788862a8b0910074ef886bed2">   58</a></span>&#160;    <span class="keywordtype">char</span>           *<a class="code" href="structapreq__cookie__t.html#af911681788862a8b0910074ef886bed2">comment</a>;     </div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a1fa5dfca7e94ebeb6f31d87d926f7626">   59</a></span>&#160;    <span class="keywordtype">char</span>           *<a class="code" href="structapreq__cookie__t.html#a1fa5dfca7e94ebeb6f31d87d926f7626">commentURL</a>;  </div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#ae4f9a1bec2731a70e14b43342abe1077">   60</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__time.html#gadb4bde16055748190eae190c55aa02bb">apr_time_t</a>      <a class="code" href="structapreq__cookie__t.html#ae4f9a1bec2731a70e14b43342abe1077">max_age</a>;     </div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">   61</a></span>&#160;    <span class="keywordtype">unsigned</span>        <a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>;       </div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structapreq__cookie__t.html#a4a4741916f814017f20b64061755cf76">   62</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a>   <a class="code" href="structapreq__cookie__t.html#a4a4741916f814017f20b64061755cf76">v</a>;     </div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a40b9ebd9bc37f9019c0091ee97c4c535">   64</a></span>&#160;} <a class="code" href="apreq__cookie_8h.html#a40b9ebd9bc37f9019c0091ee97c4c535">apreq_cookie_t</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#ab69d56f31d7c8f6f6f598a133817b46e">   69</a></span>&#160;<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *<a class="code" href="apreq__cookie_8h.html#ab69d56f31d7c8f6f6f598a133817b46e">apreq_value_to_cookie</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *val)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;{</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="keyword">union </span>{ <span class="keyword">const</span> <span class="keywordtype">char</span> *in; <span class="keywordtype">char</span> *out; } deconst;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    deconst.in = val;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a>, v,</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;           <a class="code" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a>(<a class="code" href="structapreq__value__t.html">apreq_value_t</a>, data, deconst.out));</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a04eaee766e51f143ff2ca4d8a0107004">   80</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__cookie_8h.html#a04eaee766e51f143ff2ca4d8a0107004">apreq_cookie_version</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_VERSION);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;}</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#aeff5b05ca6b935dd61dcc9da1a047546">   86</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#aeff5b05ca6b935dd61dcc9da1a047546">apreq_cookie_version_set</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c, <span class="keywordtype">unsigned</span> v) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <a class="code" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_VERSION, v);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;}</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a7553c7f54497ce30e1828082c98c813e">   92</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__cookie_8h.html#a7553c7f54497ce30e1828082c98c813e">apreq_cookie_is_secure</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_SECURE);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;}</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a1df7a1ba35cf4c47fc907f40b95fe5e4">  100</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#a1df7a1ba35cf4c47fc907f40b95fe5e4">apreq_cookie_secure_on</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <a class="code" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_SECURE);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;}</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#ad9f4813b99b80801ba1dc11d0099ac10">  106</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#ad9f4813b99b80801ba1dc11d0099ac10">apreq_cookie_secure_off</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <a class="code" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_SECURE);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;}</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a61c3709414b9fe614e32587da8ee8e8a">  112</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__cookie_8h.html#a61c3709414b9fe614e32587da8ee8e8a">apreq_cookie_is_httponly</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_HTTPONLY);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;}</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#aa9a94a9b03dea7b286a9c4041d3c7e4e">  121</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#aa9a94a9b03dea7b286a9c4041d3c7e4e">apreq_cookie_httponly_on</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <a class="code" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_HTTPONLY);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;}</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a619cc2d56e20134e91bf1d31ab26bfec">  127</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#a619cc2d56e20134e91bf1d31ab26bfec">apreq_cookie_httponly_off</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <a class="code" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_COOKIE_HTTPONLY);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;}</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a08618139ba29e98cd2327de3f0e961fe">  134</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__cookie_8h.html#a08618139ba29e98cd2327de3f0e961fe">apreq_cookie_is_tainted</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;}</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#afeec2e0802ae883d4f2fda750b74ca55">  140</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#afeec2e0802ae883d4f2fda750b74ca55">apreq_cookie_tainted_on</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <a class="code" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;}</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#ac3b777e9709fa062ff978afef3867964">  146</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__cookie_8h.html#ac3b777e9709fa062ff978afef3867964">apreq_cookie_tainted_off</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c) {</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <a class="code" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a>(c-&gt;<a class="code" href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;}</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a113be08c01bc82605ec52d80c054cbf6">  165</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq__cookie_8h.html#a113be08c01bc82605ec52d80c054cbf6">apreq_parse_cookie_header< [...]
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                                                      <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *jar,</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;                                                      <span class="keyword">const</span> <span class="keywordtype">char</span> *header);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a53b5bb02baf7fb318cd643fb55820422">  180</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *) <a class="code" href="apreq__cookie_8h.html#a53b5bb02baf7fb318cd643fb55820422">apreq_cookie_make</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__a [...]
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                                                  <span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;                                                  <span class="keyword">const</span> apr_size_t nlen,</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                                                  <span class="keyword">const</span> <span class="keywordtype">char</span> *value,</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;                                                  <span class="keyword">const</span> apr_size_t vlen);</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160; </div>
+<div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a10c1d6639303c3f85fb5818d88e654d3">  195</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keywordtype">char</span>*) <a class="code" href="apreq__cookie_8h.html#a10c1d6639303c3f85fb5818d88e654d3">apreq_cookie_as_string</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cook [...]
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                                            <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p);</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160; </div>
+<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#afc06d8f5e4ee8530013c4f3c3b12e01f">  211</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keywordtype">int</span>) <a class="code" href="apreq__cookie_8h.html#afc06d8f5e4ee8530013c4f3c3b12e01f">apreq_cookie_serialize</a>(<span class="keyword">const</span> <a class="code" href="structapreq__cookie__t.html">apreq_cookie [...]
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;                                          <span class="keywordtype">char</span> *buf, apr_size_t len);</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160; </div>
+<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="apreq__cookie_8h.html#a8c6eb3c7c0f003bdc150d2ce99dacc7f">  228</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keywordtype">void</span>) <a class="code" href="apreq__cookie_8h.html#a8c6eb3c7c0f003bdc150d2ce99dacc7f">apreq_cookie_expires</a>(<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *c,</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;                                         <span class="keyword">const</span> <span class="keywordtype">char</span> *time_str);</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160; </div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160; }</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160; </div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/*APREQ_COOKIE_H*/</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160; </div>
+<div class="ttc" id="aapr__time_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html">apr_time.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html"><div class="ttname"><a href="apreq_8h.html">apreq.h</a></div><div class="ttdoc">Main header file...</div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq_8h_html_a07141b4d0c7daa6d5aba5ff33d52a31f"><div class="ttname"><a href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a></div><div class="ttdeci">#define APREQ_FLAGS_GET(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:126</div></div>
+<div class="ttc" id="aapreq_8h_html_a5bcc4e81747b13b7bfbb946648453f9e"><div class="ttname"><a href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a></div><div class="ttdeci">#define APREQ_FLAGS_OFF(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:118</div></div>
+<div class="ttc" id="aapreq_8h_html_a6355f965e8eabf742537bfd8da534376"><div class="ttname"><a href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a></div><div class="ttdeci">#define apreq_attr_to_type(T, A, P)</div><div class="ttdef"><b>Definition:</b> apreq.h:265</div></div>
+<div class="ttc" id="aapreq_8h_html_a817a3e293b1ae4210ee68871d6b67e1f"><div class="ttname"><a href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a></div><div class="ttdeci">#define APREQ_FLAGS_SET(f, name, value)</div><div class="ttdef"><b>Definition:</b> apreq.h:133</div></div>
+<div class="ttc" id="aapreq_8h_html_adf8584e758a62fe0a79023821c359222"><div class="ttname"><a href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a></div><div class="ttdeci">#define APREQ_FLAGS_ON(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:122</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a04eaee766e51f143ff2ca4d8a0107004"><div class="ttname"><a href="apreq__cookie_8h.html#a04eaee766e51f143ff2ca4d8a0107004">apreq_cookie_version</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_cookie_version(const apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:80</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a08618139ba29e98cd2327de3f0e961fe"><div class="ttname"><a href="apreq__cookie_8h.html#a08618139ba29e98cd2327de3f0e961fe">apreq_cookie_is_tainted</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_cookie_is_tainted(const apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:134</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a10c1d6639303c3f85fb5818d88e654d3"><div class="ttname"><a href="apreq__cookie_8h.html#a10c1d6639303c3f85fb5818d88e654d3">apreq_cookie_as_string</a></div><div class="ttdeci">char * apreq_cookie_as_string(const apreq_cookie_t *c, apr_pool_t *p)</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a113be08c01bc82605ec52d80c054cbf6"><div class="ttname"><a href="apreq__cookie_8h.html#a113be08c01bc82605ec52d80c054cbf6">apreq_parse_cookie_header</a></div><div class="ttdeci">apr_status_t apreq_parse_cookie_header(apr_pool_t *pool, apr_table_t *jar, const char *header)</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a1df7a1ba35cf4c47fc907f40b95fe5e4"><div class="ttname"><a href="apreq__cookie_8h.html#a1df7a1ba35cf4c47fc907f40b95fe5e4">apreq_cookie_secure_on</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_secure_on(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:100</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a40b9ebd9bc37f9019c0091ee97c4c535"><div class="ttname"><a href="apreq__cookie_8h.html#a40b9ebd9bc37f9019c0091ee97c4c535">apreq_cookie_t</a></div><div class="ttdeci">struct apreq_cookie_t apreq_cookie_t</div><div class="ttdoc">Cookie type, supporting both Netscape and RFC cookie specifications.</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a53b5bb02baf7fb318cd643fb55820422"><div class="ttname"><a href="apreq__cookie_8h.html#a53b5bb02baf7fb318cd643fb55820422">apreq_cookie_make</a></div><div class="ttdeci">apreq_cookie_t * apreq_cookie_make(apr_pool_t *pool, const char *name, const apr_size_t nlen, const char *value, const apr_size_t vlen)</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a619cc2d56e20134e91bf1d31ab26bfec"><div class="ttname"><a href="apreq__cookie_8h.html#a619cc2d56e20134e91bf1d31ab26bfec">apreq_cookie_httponly_off</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_httponly_off(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:127</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a61c3709414b9fe614e32587da8ee8e8a"><div class="ttname"><a href="apreq__cookie_8h.html#a61c3709414b9fe614e32587da8ee8e8a">apreq_cookie_is_httponly</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_cookie_is_httponly(const apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:112</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a7553c7f54497ce30e1828082c98c813e"><div class="ttname"><a href="apreq__cookie_8h.html#a7553c7f54497ce30e1828082c98c813e">apreq_cookie_is_secure</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_cookie_is_secure(const apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:92</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_a8c6eb3c7c0f003bdc150d2ce99dacc7f"><div class="ttname"><a href="apreq__cookie_8h.html#a8c6eb3c7c0f003bdc150d2ce99dacc7f">apreq_cookie_expires</a></div><div class="ttdeci">void apreq_cookie_expires(apreq_cookie_t *c, const char *time_str)</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_aa9a94a9b03dea7b286a9c4041d3c7e4e"><div class="ttname"><a href="apreq__cookie_8h.html#aa9a94a9b03dea7b286a9c4041d3c7e4e">apreq_cookie_httponly_on</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_httponly_on(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:121</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_ab69d56f31d7c8f6f6f598a133817b46e"><div class="ttname"><a href="apreq__cookie_8h.html#ab69d56f31d7c8f6f6f598a133817b46e">apreq_value_to_cookie</a></div><div class="ttdeci">static APR_INLINE apreq_cookie_t * apreq_value_to_cookie(const char *val)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:69</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_ac3b777e9709fa062ff978afef3867964"><div class="ttname"><a href="apreq__cookie_8h.html#ac3b777e9709fa062ff978afef3867964">apreq_cookie_tainted_off</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_tainted_off(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:146</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_ad9f4813b99b80801ba1dc11d0099ac10"><div class="ttname"><a href="apreq__cookie_8h.html#ad9f4813b99b80801ba1dc11d0099ac10">apreq_cookie_secure_off</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_secure_off(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:106</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_aeff5b05ca6b935dd61dcc9da1a047546"><div class="ttname"><a href="apreq__cookie_8h.html#aeff5b05ca6b935dd61dcc9da1a047546">apreq_cookie_version_set</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_version_set(apreq_cookie_t *c, unsigned v)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:86</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_afc06d8f5e4ee8530013c4f3c3b12e01f"><div class="ttname"><a href="apreq__cookie_8h.html#afc06d8f5e4ee8530013c4f3c3b12e01f">apreq_cookie_serialize</a></div><div class="ttdeci">int apreq_cookie_serialize(const apreq_cookie_t *c, char *buf, apr_size_t len)</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html_afeec2e0802ae883d4f2fda750b74ca55"><div class="ttname"><a href="apreq__cookie_8h.html#afeec2e0802ae883d4f2fda750b74ca55">apreq_cookie_tainted_on</a></div><div class="ttdeci">static APR_INLINE void apreq_cookie_tainted_on(apreq_cookie_t *c)</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:140</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="agroup__apr__time_html_gadb4bde16055748190eae190c55aa02bb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__time.html#gadb4bde16055748190eae190c55aa02bb">apr_time_t</a></div><div class="ttdeci">apr_int64_t apr_time_t</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html"><div class="ttname"><a href="structapreq__cookie__t.html">apreq_cookie_t</a></div><div class="ttdoc">Cookie type, supporting both Netscape and RFC cookie specifications.</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:53</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a1fa5dfca7e94ebeb6f31d87d926f7626"><div class="ttname"><a href="structapreq__cookie__t.html#a1fa5dfca7e94ebeb6f31d87d926f7626">apreq_cookie_t::commentURL</a></div><div class="ttdeci">char * commentURL</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:59</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a45dafe4c4b5a751a40bb4123ed691837"><div class="ttname"><a href="structapreq__cookie__t.html#a45dafe4c4b5a751a40bb4123ed691837">apreq_cookie_t::port</a></div><div class="ttdeci">char * port</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:57</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a4a4741916f814017f20b64061755cf76"><div class="ttname"><a href="structapreq__cookie__t.html#a4a4741916f814017f20b64061755cf76">apreq_cookie_t::v</a></div><div class="ttdeci">const apreq_value_t v</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:62</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a75e2ad6da3068f50aca9b989e7e1729c"><div class="ttname"><a href="structapreq__cookie__t.html#a75e2ad6da3068f50aca9b989e7e1729c">apreq_cookie_t::path</a></div><div class="ttdeci">char * path</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:55</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a7d83540c84756a3d4ad3c8503d24de6a"><div class="ttname"><a href="structapreq__cookie__t.html#a7d83540c84756a3d4ad3c8503d24de6a">apreq_cookie_t::flags</a></div><div class="ttdeci">unsigned flags</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:61</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_a8097326f4b8711db7d3f085f283ac5a6"><div class="ttname"><a href="structapreq__cookie__t.html#a8097326f4b8711db7d3f085f283ac5a6">apreq_cookie_t::domain</a></div><div class="ttdeci">char * domain</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:56</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_ae4f9a1bec2731a70e14b43342abe1077"><div class="ttname"><a href="structapreq__cookie__t.html#ae4f9a1bec2731a70e14b43342abe1077">apreq_cookie_t::max_age</a></div><div class="ttdeci">apr_time_t max_age</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:60</div></div>
+<div class="ttc" id="astructapreq__cookie__t_html_af911681788862a8b0910074ef886bed2"><div class="ttname"><a href="structapreq__cookie__t.html#af911681788862a8b0910074ef886bed2">apreq_cookie_t::comment</a></div><div class="ttdeci">char * comment</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:58</div></div>
+<div class="ttc" id="astructapreq__value__t_html"><div class="ttname"><a href="structapreq__value__t.html">apreq_value_t</a></div><div class="ttdoc">libapreq's pre-extensible string type</div><div class="ttdef"><b>Definition:</b> apreq.h:235</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h.html b/output/apreq/docs/libapreq2/apreq__error_8h.html
new file mode 100644
index 0000000..80b23ec
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h.html
@@ -0,0 +1,491 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_error.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_error.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Error status codes.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html">apr_errno.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="apreq_8h_source.html">apreq.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_error.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__error_8h__incl.png" border="0" usemap="#ainclude_2apreq__error_8h" alt=""/></div>
+<map name="ainclude_2apreq__error_8h" id="ainclude_2apreq__error_8h">
+<area shape="rect" title="Error status codes." alt="" coords="27,5,186,32"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html.html" title=" " alt="" coords="5,80,101,107"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="126,80,197,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="53,155,155,181"/>
+<area shape="rect" title=" " alt="" coords="180,155,255,181"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__error_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__error_8hdep" alt=""/></div>
+<map name="ainclude_2apreq__error_8hdep" id="ainclude_2apreq__error_8hdep">
+<area shape="rect" title="Error status codes." alt="" coords="102,5,261,32"/>
+<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__error_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7f8849f2cb2d0bfd64f644a6ca0cec2b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a7f8849f2cb2d0bfd64f644a6ca0cec2b">APR_EBADARG</a>&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga771bf48ab38d93355be8530f6efe4ae9">APR_BADARG</a>   /* XXX: don't use <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group [...]
+<tr class="separator:a7f8849f2cb2d0bfd64f644a6ca0cec2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14b149a0f859ce1078d36db8e8f45a2a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gacd35b2de1e38a1fa4717e38d5e153571">APR_OS_START_USERERR</a></td></tr>
+<tr class="separator:a14b149a0f859ce1078d36db8e8f45a2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a035ee2cee3527332669bdaf17142f520"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a035ee2cee3527332669bdaf17142f520">APREQ_ERROR_TAINTED</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a> + 1)</td></tr>
+<tr class="separator:a035ee2cee3527332669bdaf17142f520"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91b1099a9cbf13d45a45a14b7d279b75"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a91b1099a9cbf13d45a45a14b7d279b75">APREQ_ERROR_INTERRUPT</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a> + 2)</td></tr>
+<tr class="separator:a91b1099a9cbf13d45a45a14b7d279b75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade2a5d60e2db8fc32d8c43580d74c0c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 10)</td></tr>
+<tr class="separator:ade2a5d60e2db8fc32d8c43580d74c0c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04b6a01738a1ee7fd1ecc79d256e721f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  1)</td></tr>
+<tr class="separator:a04b6a01738a1ee7fd1ecc79d256e721f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73a69e21acc2cf849310a421ab43d2ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  2)</td></tr>
+<tr class="separator:a73a69e21acc2cf849310a421ab43d2ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d696f49030bb7fc65f2804037d3ccb7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a3d696f49030bb7fc65f2804037d3ccb7">APREQ_ERROR_BADATTR</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  3)</td></tr>
+<tr class="separator:a3d696f49030bb7fc65f2804037d3ccb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11e549980ef0fce49ac7179bb9164d57"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a11e549980ef0fce49ac7179bb9164d57">APREQ_ERROR_BADHEADER</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  4)</td></tr>
+<tr class="separator:a11e549980ef0fce49ac7179bb9164d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88ab15be9af4235cb6b1d9c6c512f0e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a88ab15be9af4235cb6b1d9c6c512f0e1">APREQ_ERROR_BADUTF8</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  5)</td></tr>
+<tr class="separator:a88ab15be9af4235cb6b1d9c6c512f0e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e29823668899ad81365ae68f96f3ae4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 20)</td></tr>
+<tr class="separator:a6e29823668899ad81365ae68f96f3ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59be3610ba54a58fbb3cd6bb655ff972"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a59be3610ba54a58fbb3cd6bb655ff972">APREQ_ERROR_NOTOKEN</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  1)</td></tr>
+<tr class="separator:a59be3610ba54a58fbb3cd6bb655ff972"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affdf9393e5c9277aeae3ea8d2ecf55fa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#affdf9393e5c9277aeae3ea8d2ecf55fa">APREQ_ERROR_NOATTR</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  2)</td></tr>
+<tr class="separator:affdf9393e5c9277aeae3ea8d2ecf55fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ce3cf5b410b1ccc2e42ae46d4577f20"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a3ce3cf5b410b1ccc2e42ae46d4577f20">APREQ_ERROR_NOHEADER</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  3)</td></tr>
+<tr class="separator:a3ce3cf5b410b1ccc2e42ae46d4577f20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02ebfa80f1a413b46212df5682db5890"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a02ebfa80f1a413b46212df5682db5890">APREQ_ERROR_NOPARSER</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  4)</td></tr>
+<tr class="separator:a02ebfa80f1a413b46212df5682db5890"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33080081185585997ef9c5232ec4dd8f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 30)</td></tr>
+<tr class="separator:a33080081185585997ef9c5232ec4dd8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcc1b4c98b1d8c5d128cffd50afb978e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#abcc1b4c98b1d8c5d128cffd50afb978e">APREQ_ERROR_OVERLIMIT</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  1)</td></tr>
+<tr class="separator:abcc1b4c98b1d8c5d128cffd50afb978e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0370b1ba3534f6ae9f422c6b351c79cd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a0370b1ba3534f6ae9f422c6b351c79cd">APREQ_ERROR_UNDERLIMIT</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  2)</td></tr>
+<tr class="separator:a0370b1ba3534f6ae9f422c6b351c79cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a17d6bb14537a52ef53b56e4b385c76b2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a17d6bb14537a52ef53b56e4b385c76b2">APREQ_ERROR_NOTEMPTY</a>&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  3)</td></tr>
+<tr class="separator:a17d6bb14537a52ef53b56e4b385c76b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a48c0198d940b53fbd4d843d7deb65e47"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__error_8h.html#a48c0198d940b53fbd4d843d7deb65e47">apreq_strerror</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s, char *buf, apr_size_t bufsize)</td></tr>
+<tr class="separator:a48c0198d940b53fbd4d843d7deb65e47"><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>Error status codes. </p>
+<p>Define the APREQ_ error codes. </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a7f8849f2cb2d0bfd64f644a6ca0cec2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f8849f2cb2d0bfd64f644a6ca0cec2b">&#9670;&nbsp;</a></span>APR_EBADARG</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APR_EBADARG&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga771bf48ab38d93355be8530f6efe4ae9">APR_BADARG</a>   /* XXX: don't use <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga771bf48ab38d93355be8530f6efe4ae9">APR_BADARG</a> */</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Bad Arguments return value </p><dl class="section see"><dt>See also</dt><dd><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga771bf48ab38d93355be8530f6efe4ae9">APR_BADARG</a> </dd></dl>
+
+</div>
+</div>
+<a id="a3d696f49030bb7fc65f2804037d3ccb7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d696f49030bb7fc65f2804037d3ccb7">&#9670;&nbsp;</a></span>APREQ_ERROR_BADATTR</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADATTR&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  3)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid attribute. </p>
+
+</div>
+</div>
+<a id="a04b6a01738a1ee7fd1ecc79d256e721f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04b6a01738a1ee7fd1ecc79d256e721f">&#9670;&nbsp;</a></span>APREQ_ERROR_BADCHAR</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADCHAR&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  1)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid character. </p>
+
+</div>
+</div>
+<a id="ade2a5d60e2db8fc32d8c43580d74c0c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade2a5d60e2db8fc32d8c43580d74c0c8">&#9670;&nbsp;</a></span>APREQ_ERROR_BADDATA</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADDATA&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 10)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid input data. </p>
+
+</div>
+</div>
+<a id="a11e549980ef0fce49ac7179bb9164d57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11e549980ef0fce49ac7179bb9164d57">&#9670;&nbsp;</a></span>APREQ_ERROR_BADHEADER</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADHEADER&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  4)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid header. </p>
+
+</div>
+</div>
+<a id="a73a69e21acc2cf849310a421ab43d2ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73a69e21acc2cf849310a421ab43d2ba">&#9670;&nbsp;</a></span>APREQ_ERROR_BADSEQ</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADSEQ&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  2)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid byte sequence. </p>
+
+</div>
+</div>
+<a id="a88ab15be9af4235cb6b1d9c6c512f0e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88ab15be9af4235cb6b1d9c6c512f0e1">&#9670;&nbsp;</a></span>APREQ_ERROR_BADUTF8</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_BADUTF8&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">APREQ_ERROR_BADDATA</a>  +  5)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Invalid utf8 encoding. </p>
+
+</div>
+</div>
+<a id="a14b149a0f859ce1078d36db8e8f45a2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14b149a0f859ce1078d36db8e8f45a2a">&#9670;&nbsp;</a></span>APREQ_ERROR_GENERAL</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_GENERAL&#160;&#160;&#160;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gacd35b2de1e38a1fa4717e38d5e153571">APR_OS_START_USERERR</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Internal apreq error. </p>
+
+</div>
+</div>
+<a id="a91b1099a9cbf13d45a45a14b7d279b75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91b1099a9cbf13d45a45a14b7d279b75">&#9670;&nbsp;</a></span>APREQ_ERROR_INTERRUPT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_INTERRUPT&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a> + 2)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Parsing interrupted. </p>
+
+</div>
+</div>
+<a id="a33080081185585997ef9c5232ec4dd8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33080081185585997ef9c5232ec4dd8f">&#9670;&nbsp;</a></span>APREQ_ERROR_MISMATCH</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_MISMATCH&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 30)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Conflicting information. </p>
+
+</div>
+</div>
+<a id="affdf9393e5c9277aeae3ea8d2ecf55fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affdf9393e5c9277aeae3ea8d2ecf55fa">&#9670;&nbsp;</a></span>APREQ_ERROR_NOATTR</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NOATTR&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  2)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Missing attribute. </p>
+
+</div>
+</div>
+<a id="a6e29823668899ad81365ae68f96f3ae4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e29823668899ad81365ae68f96f3ae4">&#9670;&nbsp;</a></span>APREQ_ERROR_NODATA</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NODATA&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a>  + 20)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Missing input data. </p>
+
+</div>
+</div>
+<a id="a3ce3cf5b410b1ccc2e42ae46d4577f20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ce3cf5b410b1ccc2e42ae46d4577f20">&#9670;&nbsp;</a></span>APREQ_ERROR_NOHEADER</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NOHEADER&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  3)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Missing header. </p>
+
+</div>
+</div>
+<a id="a02ebfa80f1a413b46212df5682db5890"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02ebfa80f1a413b46212df5682db5890">&#9670;&nbsp;</a></span>APREQ_ERROR_NOPARSER</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NOPARSER&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  4)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Missing parser. </p>
+
+</div>
+</div>
+<a id="a17d6bb14537a52ef53b56e4b385c76b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17d6bb14537a52ef53b56e4b385c76b2">&#9670;&nbsp;</a></span>APREQ_ERROR_NOTEMPTY</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NOTEMPTY&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  3)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Setting already configured. </p>
+
+</div>
+</div>
+<a id="a59be3610ba54a58fbb3cd6bb655ff972"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59be3610ba54a58fbb3cd6bb655ff972">&#9670;&nbsp;</a></span>APREQ_ERROR_NOTOKEN</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_NOTOKEN&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>   +  1)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Missing required token. </p>
+
+</div>
+</div>
+<a id="abcc1b4c98b1d8c5d128cffd50afb978e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abcc1b4c98b1d8c5d128cffd50afb978e">&#9670;&nbsp;</a></span>APREQ_ERROR_OVERLIMIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_OVERLIMIT&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  1)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Exceeds configured maximum limit. </p>
+
+</div>
+</div>
+<a id="a035ee2cee3527332669bdaf17142f520"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a035ee2cee3527332669bdaf17142f520">&#9670;&nbsp;</a></span>APREQ_ERROR_TAINTED</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_TAINTED&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">APREQ_ERROR_GENERAL</a> + 1)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Attempted to perform unsafe action with tainted data. </p>
+
+</div>
+</div>
+<a id="a0370b1ba3534f6ae9f422c6b351c79cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0370b1ba3534f6ae9f422c6b351c79cd">&#9670;&nbsp;</a></span>APREQ_ERROR_UNDERLIMIT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_ERROR_UNDERLIMIT&#160;&#160;&#160;(<a class="el" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">APREQ_ERROR_MISMATCH</a> +  2)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Below configured minimum limit. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a48c0198d940b53fbd4d843d7deb65e47"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48c0198d940b53fbd4d843d7deb65e47">&#9670;&nbsp;</a></span>apreq_strerror()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char* apreq_strerror </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td>
+          <td class="paramname"><em>s</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>buf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>bufsize</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>apreq's wrapper around <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf2edf92be162ab8fb1bbc6f22856a131">apr_strerror()</a>; recognizes APREQ_ERROR_* status codes. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.map
new file mode 100644
index 0000000..9167915
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.map
@@ -0,0 +1,6 @@
+<map id="include/apreq_error.h" name="include/apreq_error.h">
+<area shape="rect" id="node1" title="Error status codes." alt="" coords="102,5,261,32"/>
+<area shape="rect" id="node2" href="$apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" id="node3" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" id="node4" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.md5
new file mode 100644
index 0000000..082e1a5
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.md5
@@ -0,0 +1 @@
+e1772b28020a55c60cc5025ffdbaddc6
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.png
new file mode 100644
index 0000000..ada84cf
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__error_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__incl.map b/output/apreq/docs/libapreq2/apreq__error_8h__incl.map
new file mode 100644
index 0000000..30a9f9e
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="include/apreq_error.h" name="include/apreq_error.h">
+<area shape="rect" id="node1" title="Error status codes." alt="" coords="27,5,186,32"/>
+<area shape="rect" id="node2" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__errno_8h.html.html" title=" " alt="" coords="5,80,101,107"/>
+<area shape="rect" id="node3" href="$apreq_8h.html" title="Main header file..." alt="" coords="126,80,197,107"/>
+<area shape="rect" id="node4" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="53,155,155,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="180,155,255,181"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq__error_8h__incl.md5
new file mode 100644
index 0000000..4526613
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h__incl.md5
@@ -0,0 +1 @@
+91c280596608a2ba4ce7a309f44cb8b5
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h__incl.png b/output/apreq/docs/libapreq2/apreq__error_8h__incl.png
new file mode 100644
index 0000000..e34ef1a
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__error_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__error_8h_source.html b/output/apreq/docs/libapreq2/apreq__error_8h_source.html
new file mode 100644
index 0000000..336cafe
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__error_8h_source.html
@@ -0,0 +1,154 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_error.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_error.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq__error_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_ERROR_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_ERROR_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html">apr_errno.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq_8h.html">apreq.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keywordtype">char</span> *)</div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a48c0198d940b53fbd4d843d7deb65e47">   33</a></span>&#160;<a class="code" href="apreq__error_8h.html#a48c0198d940b53fbd4d843d7deb65e47">apreq_strerror</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s, <span class="keywordtype">char</span> *buf, apr_size_t bufsize);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#ifndef APR_EBADARG</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a7f8849f2cb2d0bfd64f644a6ca0cec2b">   48</a></span>&#160;<span class="preprocessor">#define APR_EBADARG                APR_BADARG   </span><span class="comment">/* XXX: don&#39;t use APR_BADARG */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a14b149a0f859ce1078d36db8e8f45a2a">   52</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_GENERAL        APR_OS_START_USERERR</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a035ee2cee3527332669bdaf17142f520">   54</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_TAINTED        (APREQ_ERROR_GENERAL + 1)</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a91b1099a9cbf13d45a45a14b7d279b75">   56</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_INTERRUPT      (APREQ_ERROR_GENERAL + 2)</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#ade2a5d60e2db8fc32d8c43580d74c0c8">   59</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADDATA        (APREQ_ERROR_GENERAL  + 10)</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">   61</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADCHAR        (APREQ_ERROR_BADDATA  +  1)</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">   63</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADSEQ         (APREQ_ERROR_BADDATA  +  2)</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a3d696f49030bb7fc65f2804037d3ccb7">   65</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADATTR        (APREQ_ERROR_BADDATA  +  3)</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a11e549980ef0fce49ac7179bb9164d57">   67</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADHEADER      (APREQ_ERROR_BADDATA  +  4)</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a88ab15be9af4235cb6b1d9c6c512f0e1">   69</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_BADUTF8        (APREQ_ERROR_BADDATA  +  5)</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">   72</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NODATA         (APREQ_ERROR_GENERAL  + 20)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a59be3610ba54a58fbb3cd6bb655ff972">   74</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NOTOKEN        (APREQ_ERROR_NODATA   +  1)</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#affdf9393e5c9277aeae3ea8d2ecf55fa">   76</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NOATTR         (APREQ_ERROR_NODATA   +  2)</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a3ce3cf5b410b1ccc2e42ae46d4577f20">   78</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NOHEADER       (APREQ_ERROR_NODATA   +  3)</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a02ebfa80f1a413b46212df5682db5890">   80</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NOPARSER       (APREQ_ERROR_NODATA   +  4)</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a33080081185585997ef9c5232ec4dd8f">   84</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_MISMATCH       (APREQ_ERROR_GENERAL  + 30)</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#abcc1b4c98b1d8c5d128cffd50afb978e">   86</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_OVERLIMIT      (APREQ_ERROR_MISMATCH +  1)</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a0370b1ba3534f6ae9f422c6b351c79cd">   88</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_UNDERLIMIT     (APREQ_ERROR_MISMATCH +  2)</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="apreq__error_8h.html#a17d6bb14537a52ef53b56e4b385c76b2">   90</a></span>&#160;<span class="preprocessor">#define APREQ_ERROR_NOTEMPTY       (APREQ_ERROR_MISMATCH +  3)</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; }</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APREQ_ERROR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="aapr__errno_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html">apr_errno.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html"><div class="ttname"><a href="apreq_8h.html">apreq.h</a></div><div class="ttdoc">Main header file...</div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq__error_8h_html_a48c0198d940b53fbd4d843d7deb65e47"><div class="ttname"><a href="apreq__error_8h.html#a48c0198d940b53fbd4d843d7deb65e47">apreq_strerror</a></div><div class="ttdeci">char * apreq_strerror(apr_status_t s, char *buf, apr_size_t bufsize)</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h.html b/output/apreq/docs/libapreq2/apreq__module_8h.html
new file mode 100644
index 0000000..dcbca5c
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h.html
@@ -0,0 +1,1210 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_module.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_module.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Module API.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="el" href="apreq__cookie_8h_source.html">apreq_cookie.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="apreq__parser_8h_source.html">apreq_parser.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="apreq__error_8h_source.html">apreq_error.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_module.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__module_8h__incl.png" border="0" usemap="#ainclude_2apreq__module_8h" alt=""/></div>
+<map name="ainclude_2apreq__module_8h" id="ainclude_2apreq__module_8h">
+<area shape="rect" title="Module API." alt="" coords="177,5,355,32"/>
+<area shape="rect" href="apreq__cookie_8h.html" title="Cookies and Jars." alt="" coords="67,80,188,107"/>
+<area shape="rect" href="apreq__parser_8h.html" title="Request body parser API." alt="" coords="344,80,463,107"/>
+<area shape="rect" href="apreq__error_8h.html" title="Error status codes." alt="" coords="212,80,320,107"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="151,229,221,256"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__time_8h.html.html" title=" " alt="" coords="5,155,97,181"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="79,304,181,331"/>
+<area shape="rect" title=" " alt="" coords="206,304,281,331"/>
+<area shape="rect" href="apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="343,155,463,181"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html.html" title=" " alt="" coords="347,229,459,256"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__errno_8h.html.html" title=" " alt="" coords="223,155,319,181"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__module_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__module_8hdep" alt=""/></div>
+<map name="ainclude_2apreq__module_8hdep" id="ainclude_2apreq__module_8hdep">
+<area shape="rect" title="Module API." alt="" coords="92,5,271,32"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,80,168,121"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,80,363,121"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__module_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__module__t.html">apreq_module_t</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vtable describing the necessary module functions.  <a href="structapreq__module__t.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7d6d0550f527e18c8cfab702e65daf3b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7d6d0550f527e18c8cfab702e65daf3b">APREQ_MODULE</a>(pre,  mmn)</td></tr>
+<tr class="separator:a7d6d0550f527e18c8cfab702e65daf3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5398d109fb933fb0367ef947e7c7b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a5b5398d109fb933fb0367ef947e7c7b6">apreq_cookie</a>(req,  name)&#160;&#160;&#160;<a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a>(req, name)</td></tr>
+<tr class="separator:a5b5398d109fb933fb0367ef947e7c7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:acc662f2b62f1d13f6c9e03536f565952"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#acc662f2b62f1d13f6c9e03536f565952">apreq_handle_t</a></td></tr>
+<tr class="separator:acc662f2b62f1d13f6c9e03536f565952"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab584b3f1216e609ba8082d081cfb5659"><td class="memItemLeft" align="right" valign="top"><a id="ab584b3f1216e609ba8082d081cfb5659"></a>
+typedef struct <a class="el" href="structapreq__module__t.html">apreq_module_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab584b3f1216e609ba8082d081cfb5659">apreq_module_t</a></td></tr>
+<tr class="memdesc:ab584b3f1216e609ba8082d081cfb5659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vtable describing the necessary module functions. <br /></td></tr>
+<tr class="separator:ab584b3f1216e609ba8082d081cfb5659"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a08dedd0ec5b291dad6b58644896eb2ed"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a08dedd0ec5b291dad6b58644896eb2ed">apreq_module_status_is_error</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s)</td></tr>
+<tr class="separator:a08dedd0ec5b291dad6b58644896eb2ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2652c9a9b0e0f4162051fc3904ac480a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a2652c9a9b0e0f4162051fc3904ac480a">apreq_jar</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="el [...]
+<tr class="separator:a2652c9a9b0e0f4162051fc3904ac480a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade74830e449fa5bb24694ffc3b8374ca"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="e [...]
+<tr class="separator:ade74830e449fa5bb24694ffc3b8374ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae928689622d094025a8efb8c6c17d680"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a class="e [...]
+<tr class="separator:ae928689622d094025a8efb8c6c17d680"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63dfa7b7b303d061fe56c7109528d430"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
+<tr class="separator:a63dfa7b7b303d061fe56c7109528d430"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeadd074ee9dd8095d857820ce15f1701"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#aeadd074ee9dd8095d857820ce15f1701">apreq_args_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
+<tr class="separator:aeadd074ee9dd8095d857820ce15f1701"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c4cb1c2b91f5539b2231d09ebea2239"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7c4cb1c2b91f5539b2231d09ebea2239">apreq_body_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *name)</td></tr>
+<tr class="separator:a7c4cb1c2b91f5539b2231d09ebea2239"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a136584883dac2b5c76052bed1c4e61dc"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a136584883dac2b5c76052bed1c4e61dc">apreq_parser_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const <a cl [...]
+<tr class="separator:a136584883dac2b5c76052bed1c4e61dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6842f8b5a1d1f9115ba8ff7b1da1e78b"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a6842f8b5a1d1f9115ba8ff7b1da1e78b">apreq_parser_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="e [...]
+<tr class="separator:a6842f8b5a1d1f9115ba8ff7b1da1e78b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c24fc39ad03c54839a9cb03dc00dc28"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a0c24fc39ad03c54839a9cb03dc00dc28">apreq_hook_add</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="el" [...]
+<tr class="separator:a0c24fc39ad03c54839a9cb03dc00dc28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab368191aa61cd0386e824c1a6dbd6e49"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab368191aa61cd0386e824c1a6dbd6e49">apreq_brigade_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_ [...]
+<tr class="separator:ab368191aa61cd0386e824c1a6dbd6e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad98e3dac181ac837159581812229d8e3"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ad98e3dac181ac837159581812229d8e3">apreq_brigade_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_ [...]
+<tr class="separator:ad98e3dac181ac837159581812229d8e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97d4d8090e7847ace598c7a65b309564"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a97d4d8090e7847ace598c7a65b309564">apreq_read_limit_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_uin [...]
+<tr class="separator:a97d4d8090e7847ace598c7a65b309564"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5cc462231ee5e4389ceb46eab1e456f"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#ab5cc462231ee5e4389ceb46eab1e456f">apreq_read_limit_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, apr_uin [...]
+<tr class="separator:ab5cc462231ee5e4389ceb46eab1e456f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc1b7d33062581140fd16b859b06d24a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#afc1b7d33062581140fd16b859b06d24a">apreq_temp_dir_set</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const cha [...]
+<tr class="separator:afc1b7d33062581140fd16b859b06d24a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51c4bd2bc98e9355f8595341ba6aff0b"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a51c4bd2bc98e9355f8595341ba6aff0b">apreq_temp_dir_get</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const cha [...]
+<tr class="separator:a51c4bd2bc98e9355f8595341ba6aff0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f9b9c725672298c86b081aaa258fbdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a3f9b9c725672298c86b081aaa258fbdc">apreq_handle_cgi</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
+<tr class="separator:a3f9b9c725672298c86b081aaa258fbdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeaaad6c03b54ca963f9f14a3031e912"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#abeaaad6c03b54ca963f9f14a3031e912">apreq_handle_custom</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, const char *query_string, [...]
+<tr class="separator:abeaaad6c03b54ca963f9f14a3031e912"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08c59b5f07fb36080bb4d62e68bfeddf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a08c59b5f07fb36080bb4d62e68bfeddf">apreq_param</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, const char *key)</td></tr>
+<tr class="separator:a08c59b5f07fb36080bb4d62e68bfeddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dff48fd4e83399a07853abe9d67c251"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" href="http://a [...]
+<tr class="separator:a0dff48fd4e83399a07853abe9d67c251"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7435376b1f543c604d8326de3157e075"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__module_8h.html#a7435376b1f543c604d8326de3157e075">apreq_cookies</a> (<a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="elRef" href="http:// [...]
+<tr class="separator:a7435376b1f543c604d8326de3157e075"><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>Module API. </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a5b5398d109fb933fb0367ef947e7c7b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b5398d109fb933fb0367ef947e7c7b6">&#9670;&nbsp;</a></span>apreq_cookie</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define apreq_cookie</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">req, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">name&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td>&#160;&#160;&#160;<a class="el" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a>(req, name)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Find the first cookie with the specified name. The match is case-insensitive.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>request handle. </td></tr>
+    <tr><td class="paramname">name</td><td>desired cookie name</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The first matching cookie or NULL. </dd></dl>
+
+</div>
+</div>
+<a id="a7d6d0550f527e18c8cfab702e65daf3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d6d0550f527e18c8cfab702e65daf3b">&#9670;&nbsp;</a></span>APREQ_MODULE</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_MODULE</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">pre, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">mmn&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">  <span class="keyword">const</span> apreq_module_t     \</div>
+<div class="line">  pre##_module = { #pre, mmn,                           \</div>
+<div class="line">  pre##_jar,        pre##_args,       pre##_body,       \</div>
+<div class="line">  pre##_jar_get,    pre##_args_get,   pre##_body_get,   \</div>
+<div class="line">  pre##_parser_get, pre##_parser_set, pre##_hook_add,   \</div>
+<div class="line">  pre##_brigade_limit_get, pre##_brigade_limit_set,     \</div>
+<div class="line">  pre##_read_limit_get,    pre##_read_limit_set,        \</div>
+<div class="line">  pre##_temp_dir_get,      pre##_temp_dir_set,          \</div>
+<div class="line">  }</div>
+</div><!-- fragment --><p>Convenience macro for defining a module by mapping a function prefix to an associated <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> structure.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pre</td><td>Prefix to define new module. All attributes of the <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> struct are defined with this as their prefix. The generated struct is named by appending "_module" to the prefix. </td></tr>
+    <tr><td class="paramname">mmn</td><td>Magic number (i.e. version number) of this module. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="acc662f2b62f1d13f6c9e03536f565952"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc662f2b62f1d13f6c9e03536f565952">&#9670;&nbsp;</a></span>apreq_handle_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> <a class="el" href="structapreq__handle__t.html">apreq_handle_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>An apreq handle associated with a module. The structure may have variable size, because the module may append its own data structures after it. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ade74830e449fa5bb24694ffc3b8374ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade74830e449fa5bb24694ffc3b8374ca">&#9670;&nbsp;</a></span>apreq_args()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_args </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
+          <td class="paramname"><em>t</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Expose the parsed "query string" associated to this handle.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
+
+</div>
+</div>
+<a id="aeadd074ee9dd8095d857820ce15f1701"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeadd074ee9dd8095d857820ce15f1701">&#9670;&nbsp;</a></span>apreq_args_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_args_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Fetch the first query string param with the given name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">name</td><td>Case-insensitive param name.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>First matching param, or NULL if none match. </dd></dl>
+
+</div>
+</div>
+<a id="ae928689622d094025a8efb8c6c17d680"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae928689622d094025a8efb8c6c17d680">&#9670;&nbsp;</a></span>apreq_body()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_body </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
+          <td class="paramname"><em>t</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Expose the parsed "request body" associated to this handle.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
+
+</div>
+</div>
+<a id="a7c4cb1c2b91f5539b2231d09ebea2239"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c4cb1c2b91f5539b2231d09ebea2239">&#9670;&nbsp;</a></span>apreq_body_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_body_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Fetch the first body param with the given name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">name</td><td>Case-insensitive cookie name.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>First matching param, or NULL if none match. </dd></dl>
+
+</div>
+</div>
+<a id="ad98e3dac181ac837159581812229d8e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad98e3dac181ac837159581812229d8e3">&#9670;&nbsp;</a></span>apreq_brigade_limit_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_limit_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t *&#160;</td>
+          <td class="paramname"><em>bytes</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Get the active brigade limit.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The handle. </td></tr>
+    <tr><td class="paramname">bytes</td><td>Pointer to resulting (current) limit.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>
+
+</div>
+</div>
+<a id="ab368191aa61cd0386e824c1a6dbd6e49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab368191aa61cd0386e824c1a6dbd6e49">&#9670;&nbsp;</a></span>apreq_brigade_limit_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_limit_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>bytes</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Set the active brigade limit.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The handle. </td></tr>
+    <tr><td class="paramname">bytes</td><td>New limit to use.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
+
+</div>
+</div>
+<a id="a7435376b1f543c604d8326de3157e075"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7435376b1f543c604d8326de3157e075">&#9670;&nbsp;</a></span>apreq_cookies()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_cookies </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a table containing all request cookies.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>the apreq request handle </td></tr>
+    <tr><td class="paramname">p</td><td>Allocates the returned table. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a id="a3f9b9c725672298c86b081aaa258fbdc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f9b9c725672298c86b081aaa258fbdc">&#9670;&nbsp;</a></span>apreq_handle_cgi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>* apreq_handle_cgi </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create an apreq handle which is suitable for a CGI program. It reads input from stdin and writes output to stdout.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>Pool associated to this handle.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>New handle; can only be NULL if the pool allocation failed.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>The handle gets cached in the pool's userdata, so subsequent calls will retrieve the original cached handle. </dd></dl>
+
+</div>
+</div>
+<a id="abeaaad6c03b54ca963f9f14a3031e912"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abeaaad6c03b54ca963f9f14a3031e912">&#9670;&nbsp;</a></span>apreq_handle_custom()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a>* apreq_handle_custom </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>query_string</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>cookie</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&#160;</td>
+          <td class="paramname"><em>parser</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_uint64_t&#160;</td>
+          <td class="paramname"><em>read_limit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>in</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a custom apreq handle which knows only some static values. Useful if you want to test the parser code or if you have got data from a custom source (neither <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/namespace_apache.html">Apache</a> 2 nor CGI).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>allocates the parse data, </td></tr>
+    <tr><td class="paramname">query_string</td><td>parsed into args table </td></tr>
+    <tr><td class="paramname">cookie</td><td>value of the request "Cookie" header </td></tr>
+    <tr><td class="paramname">parser</td><td>parses the request body </td></tr>
+    <tr><td class="paramname">read_limit</td><td>maximum bytes to read from the body </td></tr>
+    <tr><td class="paramname">in</td><td>brigade containing the request body</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>new handle; can only be NULL if the pool allocation failed. </dd></dl>
+
+</div>
+</div>
+<a id="a0c24fc39ad03c54839a9cb03dc00dc28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c24fc39ad03c54839a9cb03dc00dc28">&#9670;&nbsp;</a></span>apreq_hook_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_hook_add </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td>
+          <td class="paramname"><em>hook</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Add a parser hook for this request.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">hook</td><td>Hook to add.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
+
+</div>
+</div>
+<a id="a2652c9a9b0e0f4162051fc3904ac480a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2652c9a9b0e0f4162051fc3904ac480a">&#9670;&nbsp;</a></span>apreq_jar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_jar </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> **&#160;</td>
+          <td class="paramname"><em>t</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Expose the parsed "cookie" header associated to this handle.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">t</td><td>The resulting table, which will either be NULL or a valid table object on return.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error status code. </dd></dl>
+
+</div>
+</div>
+<a id="a63dfa7b7b303d061fe56c7109528d430"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63dfa7b7b303d061fe56c7109528d430">&#9670;&nbsp;</a></span>apreq_jar_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="structapreq__cookie__t.html">apreq_cookie_t</a>* apreq_jar_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Fetch the first cookie with the given name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">name</td><td>Case-insensitive cookie name.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>First matching cookie, or NULL if none match. </dd></dl>
+
+</div>
+</div>
+<a id="a08dedd0ec5b291dad6b58644896eb2ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08dedd0ec5b291dad6b58644896eb2ed">&#9670;&nbsp;</a></span>apreq_module_status_is_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_module_status_is_error </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Defines the module-specific status codes which are commonly considered to be non-fatal.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">s</td><td>status code returned by an <a class="el" href="structapreq__module__t.html" title="Vtable describing the necessary module functions.">apreq_module_t</a> method.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>1 if s is fatal, 0 otherwise. </dd></dl>
+
+</div>
+</div>
+<a id="a08c59b5f07fb36080bb4d62e68bfeddf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08c59b5f07fb36080bb4d62e68bfeddf">&#9670;&nbsp;</a></span>apreq_param()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_param </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>key</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Find the first query string parameter or body parameter with the specified name. The match is case-insensitive.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>request handle. </td></tr>
+    <tr><td class="paramname">key</td><td>desired parameter name</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The first matching parameter (with args searched first) or NULL. </dd></dl>
+
+</div>
+</div>
+<a id="a0dff48fd4e83399a07853abe9d67c251"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dff48fd4e83399a07853abe9d67c251">&#9670;&nbsp;</a></span>apreq_params()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_params </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a table containing key-value pairs for the full request (args + body).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>request handle </td></tr>
+    <tr><td class="paramname">p</td><td>allocates the returned table.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>table representing all available params; is never NULL. </dd></dl>
+
+</div>
+</div>
+<a id="a136584883dac2b5c76052bed1c4e61dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a136584883dac2b5c76052bed1c4e61dc">&#9670;&nbsp;</a></span>apreq_parser_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> **&#160;</td>
+          <td class="paramname"><em>parser</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Fetch the active body parser.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">parser</td><td>Points to the active parser on return.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
+
+</div>
+</div>
+<a id="a6842f8b5a1d1f9115ba8ff7b1da1e78b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6842f8b5a1d1f9115ba8ff7b1da1e78b">&#9670;&nbsp;</a></span>apreq_parser_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&#160;</td>
+          <td class="paramname"><em>parser</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Set the body parser for this request.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle </td></tr>
+    <tr><td class="paramname">parser</td><td>New parser to use.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or module-specific error. </dd></dl>
+
+</div>
+</div>
+<a id="ab5cc462231ee5e4389ceb46eab1e456f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5cc462231ee5e4389ceb46eab1e456f">&#9670;&nbsp;</a></span>apreq_read_limit_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_read_limit_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_uint64_t *&#160;</td>
+          <td class="paramname"><em>bytes</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Get the active read limit.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The request handle. </td></tr>
+    <tr><td class="paramname">bytes</td><td>Pointer to resulting (current) limit.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error, which may leave bytes undefined. </dd></dl>
+
+</div>
+</div>
+<a id="a97d4d8090e7847ace598c7a65b309564"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97d4d8090e7847ace598c7a65b309564">&#9670;&nbsp;</a></span>apreq_read_limit_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_read_limit_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_uint64_t&#160;</td>
+          <td class="paramname"><em>bytes</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Set the active read limit.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The handle. </td></tr>
+    <tr><td class="paramname">bytes</td><td>New limit to use.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error. </dd></dl>
+
+</div>
+</div>
+<a id="a51c4bd2bc98e9355f8595341ba6aff0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51c4bd2bc98e9355f8595341ba6aff0b">&#9670;&nbsp;</a></span>apreq_temp_dir_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_temp_dir_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char **&#160;</td>
+          <td class="paramname"><em>path</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Get the active temp directory.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The handle. </td></tr>
+    <tr><td class="paramname">path</td><td>Resulting path to temp dir.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS implies path is valid, but may also be NULL. Any other return value is module-specific, and may leave path undefined. </dd></dl>
+
+</div>
+</div>
+<a id="afc1b7d33062581140fd16b859b06d24a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc1b7d33062581140fd16b859b06d24a">&#9670;&nbsp;</a></span>apreq_temp_dir_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_temp_dir_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__handle__t.html">apreq_handle_t</a> *&#160;</td>
+          <td class="paramname"><em>req</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>path</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Set the active temp directory.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">req</td><td>The handle. </td></tr>
+    <tr><td class="paramname">path</td><td>New path to use; may be NULL.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or a module-specific error . </dd></dl>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.map
new file mode 100644
index 0000000..a1c3afb
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="include/apreq_module.h" name="include/apreq_module.h">
+<area shape="rect" id="node1" title="Module API." alt="" coords="92,5,271,32"/>
+<area shape="rect" id="node2" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="5,80,168,121"/>
+<area shape="rect" id="node3" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,80,363,121"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.md5
new file mode 100644
index 0000000..3ca2750
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.md5
@@ -0,0 +1 @@
+cb38a40642c87c62127a97517e4dcba4
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.png
new file mode 100644
index 0000000..970946b
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__module_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__incl.map b/output/apreq/docs/libapreq2/apreq__module_8h__incl.map
new file mode 100644
index 0000000..4fbe6e4
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h__incl.map
@@ -0,0 +1,13 @@
+<map id="include/apreq_module.h" name="include/apreq_module.h">
+<area shape="rect" id="node1" title="Module API." alt="" coords="177,5,355,32"/>
+<area shape="rect" id="node2" href="$apreq__cookie_8h.html" title="Cookies and Jars." alt="" coords="67,80,188,107"/>
+<area shape="rect" id="node7" href="$apreq__parser_8h.html" title="Request body parser API." alt="" coords="344,80,463,107"/>
+<area shape="rect" id="node10" href="$apreq__error_8h.html" title="Error status codes." alt="" coords="212,80,320,107"/>
+<area shape="rect" id="node3" href="$apreq_8h.html" title="Main header file..." alt="" coords="151,229,221,256"/>
+<area shape="rect" id="node6" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__time_8h.html.html" title=" " alt="" coords="5,155,97,181"/>
+<area shape="rect" id="node4" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="79,304,181,331"/>
+<area shape="rect" id="node5" title=" " alt="" coords="206,304,281,331"/>
+<area shape="rect" id="node8" href="$apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="343,155,463,181"/>
+<area shape="rect" id="node9" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apu.tag$apr__buckets_8h.html.html" title=" " alt="" coords="347,229,459,256"/>
+<area shape="rect" id="node11" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__errno_8h.html.html" title=" " alt="" coords="223,155,319,181"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq__module_8h__incl.md5
new file mode 100644
index 0000000..3f56d80
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h__incl.md5
@@ -0,0 +1 @@
+f97fd8744851e47fe8fdef6fc48e1618
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h__incl.png b/output/apreq/docs/libapreq2/apreq__module_8h__incl.png
new file mode 100644
index 0000000..02b8825
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__module_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__module_8h_source.html b/output/apreq/docs/libapreq2/apreq__module_8h_source.html
new file mode 100644
index 0000000..c5f06ae
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module_8h_source.html
@@ -0,0 +1,364 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_module.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_module.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq__module_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_MODULE_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_MODULE_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__cookie_8h.html">apreq_cookie.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__parser_8h.html">apreq_parser.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__error_8h.html">apreq_error.h</a>&quot;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structapreq__handle__t.html">   41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">   43</a></span>&#160;    <span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="structapreq__module__t.html">apreq_module_t</a> *<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structapreq__handle__t.html#a698eaa56cf54f2cbbc39704fb9d8ab42">   45</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *<a class="code" href="structapreq__handle__t.html#a698eaa56cf54f2cbbc39704fb9d8ab42">pool</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structapreq__handle__t.html#a89a335e21236423de239a6a6d2526559">   47</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *<a class="code" href="structapreq__handle__t.html#a89a335e21236423de239a6a6d2526559">bucket_alloc</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#acc662f2b62f1d13f6c9e03536f565952">   49</a></span>&#160;} <a class="code" href="apreq__module_8h.html#acc662f2b62f1d13f6c9e03536f565952">apreq_handle_t</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structapreq__module__t.html">   56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__module__t.html">apreq_module_t</a> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#ae326f2fad3c575876a0da35c5a81123a">   58</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structapreq__module__t.html#ae326f2fad3c575876a0da35c5a81123a">name</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#adae50d06225fdd6eefeb18ff83045cf7">   60</a></span>&#160;    apr_uint32_t <a class="code" href="structapreq__module__t.html#adae50d06225fdd6eefeb18ff83045cf7">magic_number</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a10c511ad46d0b2b4ce7a0604991bed72">   63</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a10c511ad46d0b2b4ce7a0604991bed72">jar</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="key [...]
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a14ba1d0aabf56f1b192d925fafaa2ee5">   65</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a14ba1d0aabf56f1b192d925fafaa2ee5">args</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="ke [...]
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#ad1af73336e0ee49e646e1a1a3a23d8e2">   67</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#ad1af73336e0ee49e646e1a1a3a23d8e2">body</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="ke [...]
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#adf5c6b34126c0c2fc649d6a9aea1052f">   70</a></span>&#160;    <a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *(*jar_get)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#abc9a40e7a6e4303355f84051469b48a2">   72</a></span>&#160;    <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *(*args_get)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a908dd59f44f9c1e6eed8d71fac5b7554">   74</a></span>&#160;    <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *(*body_get)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a2a42030641ddc29cc629549bbf8f58b3">   77</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a2a42030641ddc29cc629549bbf8f58b3">parser_get</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span cla [...]
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#adb0cf9c30845f70e267ebd43895be40d">   79</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#adb0cf9c30845f70e267ebd43895be40d">parser_set</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <a class= [...]
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#ad376b42c74164633f8c5e95515736e19">   81</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#ad376b42c74164633f8c5e95515736e19">hook_add</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <a class="c [...]
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#ac1bcc2dcac811dea8cc8a9fd061a6b44">   84</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#ac1bcc2dcac811dea8cc8a9fd061a6b44">brigade_limit_get</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, ap [...]
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a77b7df138df0f31cb242e4eec9fc77b0">   86</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a77b7df138df0f31cb242e4eec9fc77b0">brigade_limit_set</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, ap [...]
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a153d2c1b612d9abf03dddfe66827994f">   89</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a153d2c1b612d9abf03dddfe66827994f">read_limit_get</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, apr_u [...]
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#aba6308fcc4257ed357b137bf21a9e5ac">   91</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#aba6308fcc4257ed357b137bf21a9e5ac">read_limit_set</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, apr_u [...]
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#a712b4c529bfafd030c58377e73534cd7">   94</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#a712b4c529bfafd030c58377e73534cd7">temp_dir_get</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span c [...]
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structapreq__module__t.html#acc8487557a17cae2887c669d7a5d2733">   96</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="structapreq__module__t.html#acc8487557a17cae2887c669d7a5d2733">temp_dir_set</a>)(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *, <span c [...]
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ab584b3f1216e609ba8082d081cfb5659">   98</a></span>&#160;} <a class="code" href="apreq__module_8h.html#ab584b3f1216e609ba8082d081cfb5659">apreq_module_t</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a08dedd0ec5b291dad6b58644896eb2ed">  110</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__module_8h.html#a08dedd0ec5b291dad6b58644896eb2ed">apreq_module_status_is_error</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> s) {</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="keywordflow">switch</span> (s) {</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordflow">case</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#ga9ee311b7bf1c691dc521d721339ee2a6">APR_SUCCESS</a>:</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="keywordflow">case</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga64dff43b83bcefd3f3c751be6b864ca1">APR_INCOMPLETE</a>:</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keywordflow">case</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#gaacd087793c97a3493eafc14075775b82">APR_EINIT</a>:</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">case</span> <a class="code" href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a>:</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="keywordflow">case</span> <a class="code" href="apreq__error_8h.html#a02ebfa80f1a413b46212df5682db5890">APREQ_ERROR_NOPARSER</a>:</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <span class="keywordflow">case</span> <a class="code" href="apreq__error_8h.html#a3ce3cf5b410b1ccc2e42ae46d4577f20">APREQ_ERROR_NOHEADER</a>:</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    }</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;}</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a2652c9a9b0e0f4162051fc3904ac480a">  135</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a2652c9a9b0e0f4162051fc3904ac480a">apreq_jar</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">cons [...]
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;{</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a10c511ad46d0b2b4ce7a0604991bed72">jar</a>(req,t);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;}</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">  150</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">con [...]
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;{</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a14ba1d0aabf56f1b192d925fafaa2ee5">args</a>(req,t);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;}</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">  165</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">con [...]
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;{</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#ad1af73336e0ee49e646e1a1a3a23d8e2">body</a>(req, t);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;}</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">  180</a></span>&#160;<a class="code" href="structapreq__cookie__t.html">apreq_cookie_t</a> *<a class="code" href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">const</span> <span class="keywordtype">char</span> *name)</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;{</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#adf5c6b34126c0c2fc649d6a9aea1052f">jar_get</a>(req, name);</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;}</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#aeadd074ee9dd8095d857820ce15f1701">  194</a></span>&#160;<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *<a class="code" href="apreq__module_8h.html#aeadd074ee9dd8095d857820ce15f1701">apreq_args_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">const</span> <span class="keywordtype">char</span> *name)</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;{</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#abc9a40e7a6e4303355f84051469b48a2">args_get</a>(req, name);</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;}</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160; </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a7c4cb1c2b91f5539b2231d09ebea2239">  208</a></span>&#160;<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *<a class="code" href="apreq__module_8h.html#a7c4cb1c2b91f5539b2231d09ebea2239">apreq_body_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyword">const</span> <span class="keywordtype">char</span> *name)</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;{</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a908dd59f44f9c1e6eed8d71fac5b7554">body_get</a>(req, name);</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;}</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a136584883dac2b5c76052bed1c4e61dc">  223</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a136584883dac2b5c76052bed1c4e61dc">apreq_parser_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;                              <span class="keyword">const</span> <a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> **parser)</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;{</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a2a42030641ddc29cc629549bbf8f58b3">parser_get</a>(req, parser);</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;}</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160; </div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a6842f8b5a1d1f9115ba8ff7b1da1e78b">  239</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a6842f8b5a1d1f9115ba8ff7b1da1e78b">apreq_parser_set</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                              <a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> *parser)</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;{</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#adb0cf9c30845f70e267ebd43895be40d">parser_set</a>(req, parser);</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;}</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160; </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a0c24fc39ad03c54839a9cb03dc00dc28">  254</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a0c24fc39ad03c54839a9cb03dc00dc28">apreq_hook_add</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <a class="code" href= [...]
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;{</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#ad376b42c74164633f8c5e95515736e19">hook_add</a>(req, hook);</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;}</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160; </div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160; </div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ab368191aa61cd0386e824c1a6dbd6e49">  270</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#ab368191aa61cd0386e824c1a6dbd6e49">apreq_brigade_limit_set</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;                                     apr_size_t bytes)</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;{</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a77b7df138df0f31cb242e4eec9fc77b0">brigade_limit_set</a>(req, bytes);</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;}</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160; </div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ad98e3dac181ac837159581812229d8e3">  286</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#ad98e3dac181ac837159581812229d8e3">apreq_brigade_limit_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                                     apr_size_t *bytes)</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;{</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#ac1bcc2dcac811dea8cc8a9fd061a6b44">brigade_limit_get</a>(req, bytes);</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;}</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160; </div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a97d4d8090e7847ace598c7a65b309564">  302</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a97d4d8090e7847ace598c7a65b309564">apreq_read_limit_set</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;                                  apr_uint64_t bytes)</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;{</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#aba6308fcc4257ed357b137bf21a9e5ac">read_limit_set</a>(req, bytes);</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;}</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160; </div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#ab5cc462231ee5e4389ceb46eab1e456f">  318</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#ab5cc462231ee5e4389ceb46eab1e456f">apreq_read_limit_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req,</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;                                  apr_uint64_t *bytes)</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;{</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a153d2c1b612d9abf03dddfe66827994f">read_limit_get</a>(req, bytes);</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;}</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#afc1b7d33062581140fd16b859b06d24a">  333</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#afc1b7d33062581140fd16b859b06d24a">apreq_temp_dir_set</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyw [...]
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;{</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#acc8487557a17cae2887c669d7a5d2733">temp_dir_set</a>(req, path);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;}</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160; </div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a51c4bd2bc98e9355f8595341ba6aff0b">  349</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__module_8h.html#a51c4bd2bc98e9355f8595341ba6aff0b">apreq_temp_dir_get</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, <span class="keyw [...]
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;{</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    <span class="keywordflow">return</span> req-&gt;<a class="code" href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">module</a>-&gt;<a class="code" href="structapreq__module__t.html#a712b4c529bfafd030c58377e73534cd7">temp_dir_get</a>(req, path);</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;}</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160; </div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160; </div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160; </div>
+<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a7d6d0550f527e18c8cfab702e65daf3b">  366</a></span>&#160;<span class="preprocessor">#define APREQ_MODULE(pre, mmn) const apreq_module_t     \</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">  pre##_module = { #pre, mmn,                           \</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">  pre##_jar,        pre##_args,       pre##_body,       \</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">  pre##_jar_get,    pre##_args_get,   pre##_body_get,   \</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">  pre##_parser_get, pre##_parser_set, pre##_hook_add,   \</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">  pre##_brigade_limit_get, pre##_brigade_limit_set,     \</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">  pre##_read_limit_get,    pre##_read_limit_set,        \</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">  pre##_temp_dir_get,      pre##_temp_dir_set,          \</span></div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">  }</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160; </div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160; </div>
+<div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a3f9b9c725672298c86b081aaa258fbdc">  388</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a>*) <a class="code" href="apreq__module_8h.html#a3f9b9c725672298c86b081aaa258fbdc">apreq_handle_cgi</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr [...]
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160; </div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#abeaaad6c03b54ca963f9f14a3031e912">  404</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a>*) <a class="code" href="apreq__module_8h.html#abeaaad6c03b54ca963f9f14a3031e912">apreq_handle_custom</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__ [...]
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *query_string,</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *cookie,</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;                                                   <a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> *parser,</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;                                                   apr_uint64_t read_limit,</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;                                                   <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *in);</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160; </div>
+<div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a08c59b5f07fb36080bb4d62e68bfeddf">  420</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *)<a class="code" href="apreq__module_8h.html#a08c59b5f07fb36080bb4d62e68bfeddf">apreq_param</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req, < [...]
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160; </div>
+<div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a5b5398d109fb933fb0367ef947e7c7b6">  431</a></span>&#160;<span class="preprocessor">#define apreq_cookie(req, name) apreq_jar_get(req, name)</span></div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160; </div>
+<div class="line"><a name="l00442"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">  442</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *) <a class="code" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params</a>(<a clas [...]
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160; </div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160; </div>
+<div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="apreq__module_8h.html#a7435376b1f543c604d8326de3157e075">  451</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *)<a class="code" href="apreq__module_8h.html#a7435376b1f543c604d8326de3157e075">apreq_cookies</a>(<a clas [...]
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160; </div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160; }</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160; </div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APREQ_MODULE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq__cookie_8h_html"><div class="ttname"><a href="apreq__cookie_8h.html">apreq_cookie.h</a></div><div class="ttdoc">Cookies and Jars.</div></div>
+<div class="ttc" id="aapreq__error_8h_html"><div class="ttname"><a href="apreq__error_8h.html">apreq_error.h</a></div><div class="ttdoc">Error status codes.</div></div>
+<div class="ttc" id="aapreq__error_8h_html_a02ebfa80f1a413b46212df5682db5890"><div class="ttname"><a href="apreq__error_8h.html#a02ebfa80f1a413b46212df5682db5890">APREQ_ERROR_NOPARSER</a></div><div class="ttdeci">#define APREQ_ERROR_NOPARSER</div><div class="ttdef"><b>Definition:</b> apreq_error.h:80</div></div>
+<div class="ttc" id="aapreq__error_8h_html_a3ce3cf5b410b1ccc2e42ae46d4577f20"><div class="ttname"><a href="apreq__error_8h.html#a3ce3cf5b410b1ccc2e42ae46d4577f20">APREQ_ERROR_NOHEADER</a></div><div class="ttdeci">#define APREQ_ERROR_NOHEADER</div><div class="ttdef"><b>Definition:</b> apreq_error.h:78</div></div>
+<div class="ttc" id="aapreq__error_8h_html_a6e29823668899ad81365ae68f96f3ae4"><div class="ttname"><a href="apreq__error_8h.html#a6e29823668899ad81365ae68f96f3ae4">APREQ_ERROR_NODATA</a></div><div class="ttdeci">#define APREQ_ERROR_NODATA</div><div class="ttdef"><b>Definition:</b> apreq_error.h:72</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a08c59b5f07fb36080bb4d62e68bfeddf"><div class="ttname"><a href="apreq__module_8h.html#a08c59b5f07fb36080bb4d62e68bfeddf">apreq_param</a></div><div class="ttdeci">apreq_param_t * apreq_param(apreq_handle_t *req, const char *key)</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a08dedd0ec5b291dad6b58644896eb2ed"><div class="ttname"><a href="apreq__module_8h.html#a08dedd0ec5b291dad6b58644896eb2ed">apreq_module_status_is_error</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_module_status_is_error(apr_status_t s)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:110</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a0c24fc39ad03c54839a9cb03dc00dc28"><div class="ttname"><a href="apreq__module_8h.html#a0c24fc39ad03c54839a9cb03dc00dc28">apreq_hook_add</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_hook_add(apreq_handle_t *req, apreq_hook_t *hook)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:254</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a0dff48fd4e83399a07853abe9d67c251"><div class="ttname"><a href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params</a></div><div class="ttdeci">apr_table_t * apreq_params(apreq_handle_t *req, apr_pool_t *p)</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a136584883dac2b5c76052bed1c4e61dc"><div class="ttname"><a href="apreq__module_8h.html#a136584883dac2b5c76052bed1c4e61dc">apreq_parser_get</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_parser_get(apreq_handle_t *req, const apreq_parser_t **parser)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:223</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a2652c9a9b0e0f4162051fc3904ac480a"><div class="ttname"><a href="apreq__module_8h.html#a2652c9a9b0e0f4162051fc3904ac480a">apreq_jar</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_jar(apreq_handle_t *req, const apr_table_t **t)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:135</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a3f9b9c725672298c86b081aaa258fbdc"><div class="ttname"><a href="apreq__module_8h.html#a3f9b9c725672298c86b081aaa258fbdc">apreq_handle_cgi</a></div><div class="ttdeci">apreq_handle_t * apreq_handle_cgi(apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a51c4bd2bc98e9355f8595341ba6aff0b"><div class="ttname"><a href="apreq__module_8h.html#a51c4bd2bc98e9355f8595341ba6aff0b">apreq_temp_dir_get</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_temp_dir_get(apreq_handle_t *req, const char **path)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:349</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a63dfa7b7b303d061fe56c7109528d430"><div class="ttname"><a href="apreq__module_8h.html#a63dfa7b7b303d061fe56c7109528d430">apreq_jar_get</a></div><div class="ttdeci">static APR_INLINE apreq_cookie_t * apreq_jar_get(apreq_handle_t *req, const char *name)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:180</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a6842f8b5a1d1f9115ba8ff7b1da1e78b"><div class="ttname"><a href="apreq__module_8h.html#a6842f8b5a1d1f9115ba8ff7b1da1e78b">apreq_parser_set</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_parser_set(apreq_handle_t *req, apreq_parser_t *parser)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:239</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a7435376b1f543c604d8326de3157e075"><div class="ttname"><a href="apreq__module_8h.html#a7435376b1f543c604d8326de3157e075">apreq_cookies</a></div><div class="ttdeci">apr_table_t * apreq_cookies(apreq_handle_t *req, apr_pool_t *p)</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a7c4cb1c2b91f5539b2231d09ebea2239"><div class="ttname"><a href="apreq__module_8h.html#a7c4cb1c2b91f5539b2231d09ebea2239">apreq_body_get</a></div><div class="ttdeci">static APR_INLINE apreq_param_t * apreq_body_get(apreq_handle_t *req, const char *name)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:208</div></div>
+<div class="ttc" id="aapreq__module_8h_html_a97d4d8090e7847ace598c7a65b309564"><div class="ttname"><a href="apreq__module_8h.html#a97d4d8090e7847ace598c7a65b309564">apreq_read_limit_set</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_read_limit_set(apreq_handle_t *req, apr_uint64_t bytes)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:302</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ab368191aa61cd0386e824c1a6dbd6e49"><div class="ttname"><a href="apreq__module_8h.html#ab368191aa61cd0386e824c1a6dbd6e49">apreq_brigade_limit_set</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_brigade_limit_set(apreq_handle_t *req, apr_size_t bytes)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:270</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ab584b3f1216e609ba8082d081cfb5659"><div class="ttname"><a href="apreq__module_8h.html#ab584b3f1216e609ba8082d081cfb5659">apreq_module_t</a></div><div class="ttdeci">struct apreq_module_t apreq_module_t</div><div class="ttdoc">Vtable describing the necessary module functions.</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ab5cc462231ee5e4389ceb46eab1e456f"><div class="ttname"><a href="apreq__module_8h.html#ab5cc462231ee5e4389ceb46eab1e456f">apreq_read_limit_get</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_read_limit_get(apreq_handle_t *req, apr_uint64_t *bytes)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:318</div></div>
+<div class="ttc" id="aapreq__module_8h_html_abeaaad6c03b54ca963f9f14a3031e912"><div class="ttname"><a href="apreq__module_8h.html#abeaaad6c03b54ca963f9f14a3031e912">apreq_handle_custom</a></div><div class="ttdeci">apreq_handle_t * apreq_handle_custom(apr_pool_t *pool, const char *query_string, const char *cookie, apreq_parser_t *parser, apr_uint64_t read_limit, apr_bucket_brigade *in)</div></div>
+<div class="ttc" id="aapreq__module_8h_html_acc662f2b62f1d13f6c9e03536f565952"><div class="ttname"><a href="apreq__module_8h.html#acc662f2b62f1d13f6c9e03536f565952">apreq_handle_t</a></div><div class="ttdeci">struct apreq_handle_t apreq_handle_t</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ad98e3dac181ac837159581812229d8e3"><div class="ttname"><a href="apreq__module_8h.html#ad98e3dac181ac837159581812229d8e3">apreq_brigade_limit_get</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_brigade_limit_get(apreq_handle_t *req, apr_size_t *bytes)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:286</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ade74830e449fa5bb24694ffc3b8374ca"><div class="ttname"><a href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_args(apreq_handle_t *req, const apr_table_t **t)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:150</div></div>
+<div class="ttc" id="aapreq__module_8h_html_ae928689622d094025a8efb8c6c17d680"><div class="ttname"><a href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_body(apreq_handle_t *req, const apr_table_t **t)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:165</div></div>
+<div class="ttc" id="aapreq__module_8h_html_aeadd074ee9dd8095d857820ce15f1701"><div class="ttname"><a href="apreq__module_8h.html#aeadd074ee9dd8095d857820ce15f1701">apreq_args_get</a></div><div class="ttdeci">static APR_INLINE apreq_param_t * apreq_args_get(apreq_handle_t *req, const char *name)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:194</div></div>
+<div class="ttc" id="aapreq__module_8h_html_afc1b7d33062581140fd16b859b06d24a"><div class="ttname"><a href="apreq__module_8h.html#afc1b7d33062581140fd16b859b06d24a">apreq_temp_dir_set</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_temp_dir_set(apreq_handle_t *req, const char *path)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:333</div></div>
+<div class="ttc" id="aapreq__parser_8h_html"><div class="ttname"><a href="apreq__parser_8h.html">apreq_parser.h</a></div><div class="ttdoc">Request body parser API.</div></div>
+<div class="ttc" id="agroup___a_p_r___error_html_ga64dff43b83bcefd3f3c751be6b864ca1"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#ga64dff43b83bcefd3f3c751be6b864ca1">APR_INCOMPLETE</a></div><div class="ttdeci">#define APR_INCOMPLETE</div></div>
+<div class="ttc" id="agroup___a_p_r___error_html_gaacd087793c97a3493eafc14075775b82"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group___a_p_r___error.html#gaacd087793c97a3493eafc14075775b82">APR_EINIT</a></div><div class="ttdeci">#define APR_EINIT</div></div>
+<div class="ttc" id="agroup___a_p_r___util___bucket___brigades_html_ga9a30babfeb6e290db124d8f9b69e49e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a></div><div class="ttdeci">struct apr_bucket_alloc_t apr_bucket_alloc_t</div></div>
+<div class="ttc" id="agroup__apr__errno_html_ga9ee311b7bf1c691dc521d721339ee2a6"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#ga9ee311b7bf1c691dc521d721339ee2a6">APR_SUCCESS</a></div><div class="ttdeci">#define APR_SUCCESS</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="astructapr__bucket__brigade_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a></div></div>
+<div class="ttc" id="astructapreq__cookie__t_html"><div class="ttname"><a href="structapreq__cookie__t.html">apreq_cookie_t</a></div><div class="ttdoc">Cookie type, supporting both Netscape and RFC cookie specifications.</div><div class="ttdef"><b>Definition:</b> apreq_cookie.h:53</div></div>
+<div class="ttc" id="astructapreq__handle__t_html"><div class="ttname"><a href="structapreq__handle__t.html">apreq_handle_t</a></div><div class="ttdef"><b>Definition:</b> apreq_module.h:41</div></div>
+<div class="ttc" id="astructapreq__handle__t_html_a698eaa56cf54f2cbbc39704fb9d8ab42"><div class="ttname"><a href="structapreq__handle__t.html#a698eaa56cf54f2cbbc39704fb9d8ab42">apreq_handle_t::pool</a></div><div class="ttdeci">apr_pool_t * pool</div><div class="ttdef"><b>Definition:</b> apreq_module.h:45</div></div>
+<div class="ttc" id="astructapreq__handle__t_html_a89a335e21236423de239a6a6d2526559"><div class="ttname"><a href="structapreq__handle__t.html#a89a335e21236423de239a6a6d2526559">apreq_handle_t::bucket_alloc</a></div><div class="ttdeci">apr_bucket_alloc_t * bucket_alloc</div><div class="ttdef"><b>Definition:</b> apreq_module.h:47</div></div>
+<div class="ttc" id="astructapreq__handle__t_html_aa22bbb005e208580eff0ffe8d57cde46"><div class="ttname"><a href="structapreq__handle__t.html#aa22bbb005e208580eff0ffe8d57cde46">apreq_handle_t::module</a></div><div class="ttdeci">const struct apreq_module_t * module</div><div class="ttdef"><b>Definition:</b> apreq_module.h:43</div></div>
+<div class="ttc" id="astructapreq__hook__t_html"><div class="ttname"><a href="structapreq__hook__t.html">apreq_hook_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:83</div></div>
+<div class="ttc" id="astructapreq__module__t_html"><div class="ttname"><a href="structapreq__module__t.html">apreq_module_t</a></div><div class="ttdoc">Vtable describing the necessary module functions.</div><div class="ttdef"><b>Definition:</b> apreq_module.h:56</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a10c511ad46d0b2b4ce7a0604991bed72"><div class="ttname"><a href="structapreq__module__t.html#a10c511ad46d0b2b4ce7a0604991bed72">apreq_module_t::jar</a></div><div class="ttdeci">apr_status_t(* jar)(apreq_handle_t *, const apr_table_t **)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:63</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a14ba1d0aabf56f1b192d925fafaa2ee5"><div class="ttname"><a href="structapreq__module__t.html#a14ba1d0aabf56f1b192d925fafaa2ee5">apreq_module_t::args</a></div><div class="ttdeci">apr_status_t(* args)(apreq_handle_t *, const apr_table_t **)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:65</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a153d2c1b612d9abf03dddfe66827994f"><div class="ttname"><a href="structapreq__module__t.html#a153d2c1b612d9abf03dddfe66827994f">apreq_module_t::read_limit_get</a></div><div class="ttdeci">apr_status_t(* read_limit_get)(apreq_handle_t *, apr_uint64_t *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:89</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a2a42030641ddc29cc629549bbf8f58b3"><div class="ttname"><a href="structapreq__module__t.html#a2a42030641ddc29cc629549bbf8f58b3">apreq_module_t::parser_get</a></div><div class="ttdeci">apr_status_t(* parser_get)(apreq_handle_t *, const apreq_parser_t **)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:77</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a712b4c529bfafd030c58377e73534cd7"><div class="ttname"><a href="structapreq__module__t.html#a712b4c529bfafd030c58377e73534cd7">apreq_module_t::temp_dir_get</a></div><div class="ttdeci">apr_status_t(* temp_dir_get)(apreq_handle_t *, const char **)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:94</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a77b7df138df0f31cb242e4eec9fc77b0"><div class="ttname"><a href="structapreq__module__t.html#a77b7df138df0f31cb242e4eec9fc77b0">apreq_module_t::brigade_limit_set</a></div><div class="ttdeci">apr_status_t(* brigade_limit_set)(apreq_handle_t *, apr_size_t)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:86</div></div>
+<div class="ttc" id="astructapreq__module__t_html_a908dd59f44f9c1e6eed8d71fac5b7554"><div class="ttname"><a href="structapreq__module__t.html#a908dd59f44f9c1e6eed8d71fac5b7554">apreq_module_t::body_get</a></div><div class="ttdeci">apreq_param_t *(* body_get)(apreq_handle_t *, const char *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:74</div></div>
+<div class="ttc" id="astructapreq__module__t_html_aba6308fcc4257ed357b137bf21a9e5ac"><div class="ttname"><a href="structapreq__module__t.html#aba6308fcc4257ed357b137bf21a9e5ac">apreq_module_t::read_limit_set</a></div><div class="ttdeci">apr_status_t(* read_limit_set)(apreq_handle_t *, apr_uint64_t)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:91</div></div>
+<div class="ttc" id="astructapreq__module__t_html_abc9a40e7a6e4303355f84051469b48a2"><div class="ttname"><a href="structapreq__module__t.html#abc9a40e7a6e4303355f84051469b48a2">apreq_module_t::args_get</a></div><div class="ttdeci">apreq_param_t *(* args_get)(apreq_handle_t *, const char *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:72</div></div>
+<div class="ttc" id="astructapreq__module__t_html_ac1bcc2dcac811dea8cc8a9fd061a6b44"><div class="ttname"><a href="structapreq__module__t.html#ac1bcc2dcac811dea8cc8a9fd061a6b44">apreq_module_t::brigade_limit_get</a></div><div class="ttdeci">apr_status_t(* brigade_limit_get)(apreq_handle_t *, apr_size_t *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:84</div></div>
+<div class="ttc" id="astructapreq__module__t_html_acc8487557a17cae2887c669d7a5d2733"><div class="ttname"><a href="structapreq__module__t.html#acc8487557a17cae2887c669d7a5d2733">apreq_module_t::temp_dir_set</a></div><div class="ttdeci">apr_status_t(* temp_dir_set)(apreq_handle_t *, const char *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:96</div></div>
+<div class="ttc" id="astructapreq__module__t_html_ad1af73336e0ee49e646e1a1a3a23d8e2"><div class="ttname"><a href="structapreq__module__t.html#ad1af73336e0ee49e646e1a1a3a23d8e2">apreq_module_t::body</a></div><div class="ttdeci">apr_status_t(* body)(apreq_handle_t *, const apr_table_t **)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:67</div></div>
+<div class="ttc" id="astructapreq__module__t_html_ad376b42c74164633f8c5e95515736e19"><div class="ttname"><a href="structapreq__module__t.html#ad376b42c74164633f8c5e95515736e19">apreq_module_t::hook_add</a></div><div class="ttdeci">apr_status_t(* hook_add)(apreq_handle_t *, apreq_hook_t *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:81</div></div>
+<div class="ttc" id="astructapreq__module__t_html_adae50d06225fdd6eefeb18ff83045cf7"><div class="ttname"><a href="structapreq__module__t.html#adae50d06225fdd6eefeb18ff83045cf7">apreq_module_t::magic_number</a></div><div class="ttdeci">apr_uint32_t magic_number</div><div class="ttdef"><b>Definition:</b> apreq_module.h:60</div></div>
+<div class="ttc" id="astructapreq__module__t_html_adb0cf9c30845f70e267ebd43895be40d"><div class="ttname"><a href="structapreq__module__t.html#adb0cf9c30845f70e267ebd43895be40d">apreq_module_t::parser_set</a></div><div class="ttdeci">apr_status_t(* parser_set)(apreq_handle_t *, apreq_parser_t *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:79</div></div>
+<div class="ttc" id="astructapreq__module__t_html_adf5c6b34126c0c2fc649d6a9aea1052f"><div class="ttname"><a href="structapreq__module__t.html#adf5c6b34126c0c2fc649d6a9aea1052f">apreq_module_t::jar_get</a></div><div class="ttdeci">apreq_cookie_t *(* jar_get)(apreq_handle_t *, const char *)</div><div class="ttdef"><b>Definition:</b> apreq_module.h:70</div></div>
+<div class="ttc" id="astructapreq__module__t_html_ae326f2fad3c575876a0da35c5a81123a"><div class="ttname"><a href="structapreq__module__t.html#ae326f2fad3c575876a0da35c5a81123a">apreq_module_t::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> apreq_module.h:58</div></div>
+<div class="ttc" id="astructapreq__param__t_html"><div class="ttname"><a href="structapreq__param__t.html">apreq_param_t</a></div><div class="ttdef"><b>Definition:</b> apreq_param.h:37</div></div>
+<div class="ttc" id="astructapreq__parser__t_html"><div class="ttname"><a href="structapreq__parser__t.html">apreq_parser_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:93</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__module__apache2_8h_source.html b/output/apreq/docs/libapreq2/apreq__module__apache2_8h_source.html
new file mode 100644
index 0000000..05e1346
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module__apache2_8h_source.html
@@ -0,0 +1,139 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: module/apache2/apreq_module_apache2.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_a7b0466279106ea0b8f86f609f621680.html">module</a></li><li class="navelem"><a class="el" href="dir_b9a38c20fd386f968f52d9fe1a11fa5c.html">apache2</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_module_apache2.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_APACHE2_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_APACHE2_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__module_8h.html">apreq_module.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/apr__optional_8h.html">apr_optional.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;httpd.h&gt;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="group__mod__apreq2.html#ga68f508b2e1d9909328d7b1277ce4aa80">  142</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *) <a class="code" href="group__mod__apreq2.html#ga68f508b2e1d9909328d7b1277ce4aa80">apreq_handle_apache2</a>(request_rec *r);</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="preprocessor">#ifdef WIN32</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="keyword">typedef</span> __declspec(dllexport) <a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;(__stdcall apr_OFN_apreq_handle_apache2_t) (request_rec *r);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;APR_DECLARE_OPTIONAL_FN(<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *),</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                        <a class="code" href="group__mod__apreq2.html#ga68f508b2e1d9909328d7b1277ce4aa80">apreq_handle_apache2</a>, (request_rec *r));</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160; </div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="group__mod__apreq2.html#ga4b67634b709506e4912f86ebda448504">  166</a></span>&#160;<span class="preprocessor">#define APREQ_FILTER_NAME &quot;apreq2&quot;</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160; </div>
+<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="group__mod__apreq2.html#gaab4a3c4b04f2aee2e17b648da09463b0">  174</a></span>&#160;<span class="preprocessor">#define APREQ_APACHE2_MMN 20101207</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160; </div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160; }</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="aapr__optional_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/apr__optional_8h.html">apr_optional.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq__module_8h_html"><div class="ttname"><a href="apreq__module_8h.html">apreq_module.h</a></div><div class="ttdoc">Module API.</div></div>
+<div class="ttc" id="agroup__mod__apreq2_html_ga68f508b2e1d9909328d7b1277ce4aa80"><div class="ttname"><a href="group__mod__apreq2.html#ga68f508b2e1d9909328d7b1277ce4aa80">apreq_handle_apache2</a></div><div class="ttdeci">apreq_handle_t * apreq_handle_apache2(request_rec *r)</div></div>
+<div class="ttc" id="astructapreq__handle__t_html"><div class="ttname"><a href="structapreq__handle__t.html">apreq_handle_t</a></div><div class="ttdef"><b>Definition:</b> apreq_module.h:41</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__module__apache_8h_source.html b/output/apreq/docs/libapreq2/apreq__module__apache_8h_source.html
new file mode 100644
index 0000000..5627a8d
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__module__apache_8h_source.html
@@ -0,0 +1,133 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: module/apache/apreq_module_apache.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_a7b0466279106ea0b8f86f609f621680.html">module</a></li><li class="navelem"><a class="el" href="dir_cdd8a03ded30941fff17be6eb886221f.html">apache</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_module_apache.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_APACHE_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_APACHE_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__module_8h.html">apreq_module.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;httpd.h&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef  __cplusplus</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; <span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a>*) apreq_handle_apache(request_rec *r);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *) apreq_handle_apache_pool(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *)</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    apreq_handle_apache_bucket_alloc(<a class="code" href="structapreq__handle__t.html">apreq_handle_t</a> *req);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#define APREQ_APACHE_MMN 20050712</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq__module_8h_html"><div class="ttname"><a href="apreq__module_8h.html">apreq_module.h</a></div><div class="ttdoc">Module API.</div></div>
+<div class="ttc" id="agroup___a_p_r___util___bucket___brigades_html_ga9a30babfeb6e290db124d8f9b69e49e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a></div><div class="ttdeci">struct apr_bucket_alloc_t apr_bucket_alloc_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="astructapreq__handle__t_html"><div class="ttname"><a href="structapreq__handle__t.html">apreq_handle_t</a></div><div class="ttdef"><b>Definition:</b> apreq_module.h:41</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h.html b/output/apreq/docs/libapreq2/apreq__param_8h.html
new file mode 100644
index 0000000..1d0dd59
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h.html
@@ -0,0 +1,712 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_param.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_param.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Request parsing and parameter API.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="el" href="apreq_8h_source.html">apreq.h</a>&quot;</code><br />
+<code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html">apr_buckets.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_param.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__param_8h__incl.png" border="0" usemap="#ainclude_2apreq__param_8h" alt=""/></div>
+<map name="ainclude_2apreq__param_8h" id="ainclude_2apreq__param_8h">
+<area shape="rect" title="Request parsing and parameter API." alt="" coords="85,5,255,32"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="77,80,148,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html.html" title=" " alt="" coords="173,80,285,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="5,155,108,181"/>
+<area shape="rect" title=" " alt="" coords="133,155,207,181"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__param_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__param_8hdep" alt=""/></div>
+<map name="ainclude_2apreq__param_8hdep" id="ainclude_2apreq__param_8hdep">
+<area shape="rect" title="Request parsing and parameter API." alt="" coords="96,5,267,32"/>
+<area shape="rect" href="apreq__parser_8h.html" title="Request body parser API." alt="" coords="97,80,266,107"/>
+<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="92,155,271,181"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,229,168,271"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,229,363,271"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__param_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__param__t.html">apreq_param_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad7b3956f0310dec4b970ad7135aeabd7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__param__t.html">apreq_param_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#ad7b3956f0310dec4b970ad7135aeabd7">apreq_param_t</a></td></tr>
+<tr class="separator:ad7b3956f0310dec4b970ad7135aeabd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af407c2ab726bc8bc34a1b1924a4f327a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#af407c2ab726bc8bc34a1b1924a4f327a">apreq_param_is_tainted</a> (const <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *p)</td></tr>
+<tr class="separator:af407c2ab726bc8bc34a1b1924a4f327a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a967919466da31283c6d668c58fe5223c"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a967919466da31283c6d668c58fe5223c">apreq_param_tainted_on</a> (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> *p)</td></tr>
+<tr class="separator:a967919466da31283c6d668c58fe5223c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae76641d443483db5274624f948e1c347"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#ae76641d443483db5274624f948e1c347">apreq_param_tainted_off</a> (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> *p)</td></tr>
+<tr class="separator:ae76641d443483db5274624f948e1c347"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe765ec55aebc8409ddd6d3db44ff917"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#abe765ec55aebc8409ddd6d3db44ff917">apreq_param_charset_set</a> (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> *p, <a class="el" href="apreq_8h.html#a6607dfa756796989c15 [...]
+<tr class="separator:abe765ec55aebc8409ddd6d3db44ff917"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe2a7a47df83a5667fe2834bfc03f15a"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#abe2a7a47df83a5667fe2834bfc03f15a">apreq_param_charset_get</a> (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> *p)</td></tr>
+<tr class="separator:abe2a7a47df83a5667fe2834bfc03f15a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a121453693ef7c6af821ae723b6dbe34b"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a121453693ef7c6af821ae723b6dbe34b">apreq_value_to_param</a> (const char *val)</td></tr>
+<tr class="separator:a121453693ef7c6af821ae723b6dbe34b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25c915d3d0fd1694d2c538f108646560"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a25c915d3d0fd1694d2c538f108646560">apreq_param_make</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p, const char *name, const apr_size_t [...]
+<tr class="separator:a25c915d3d0fd1694d2c538f108646560"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeea075c59169992492f6f5c40b9b8a70"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#aeea075c59169992492f6f5c40b9b8a70">apreq_param_decode</a> (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> **param, <a class="elRef" href="http [...]
+<tr class="separator:aeea075c59169992492f6f5c40b9b8a70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b8b032f9d2ae8e0a6e95b6dd95b5aa9"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a4b8b032f9d2ae8e0a6e95b6dd95b5aa9">apreq_param_encode</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, const <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *param)</td></tr>
+<tr class="separator:a4b8b032f9d2ae8e0a6e95b6dd95b5aa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0aa638519951d85d1faf7bf6ba986226"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a0aa638519951d85d1faf7bf6ba986226">apreq_parse_query_string</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a [...]
+<tr class="separator:a0aa638519951d85d1faf7bf6ba986226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76c7e698fd45f3f3e07db60fcba15e52"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/structapr__array__header__t.html">apr_array_header_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a76c7e698fd45f3f3e07db60fcba15e52">apreq_params_as_array</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb" [...]
+<tr class="separator:a76c7e698fd45f3f3e07db60fcba15e52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f1db12120bb2307f5e33186f094b0d6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a0f1db12120bb2307f5e33186f094b0d6">apreq_params_as_string</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p, const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables. [...]
+<tr class="separator:a0f1db12120bb2307f5e33186f094b0d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae449c4a1890767d1e9a50c78ea42769c"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#ae449c4a1890767d1e9a50c78ea42769c">apreq_uploads</a> (const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d66 [...]
+<tr class="separator:ae449c4a1890767d1e9a50c78ea42769c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1be07e7c4c8a687203ccc0d38ec3aedd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__param_8h.html#a1be07e7c4c8a687203ccc0d38ec3aedd">apreq_upload</a> (const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *body, const char *name)</td></tr>
+<tr class="separator:a1be07e7c4c8a687203ccc0d38ec3aedd"><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>Request parsing and parameter API. </p>
+</div><h2 class="groupheader">Typedef Documentation</h2>
+<a id="ad7b3956f0310dec4b970ad7135aeabd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7b3956f0310dec4b970ad7135aeabd7">&#9670;&nbsp;</a></span>apreq_param_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="structapreq__param__t.html">apreq_param_t</a> <a class="el" href="structapreq__param__t.html">apreq_param_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Common data structure for params and file uploads </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abe2a7a47df83a5667fe2834bfc03f15a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe2a7a47df83a5667fe2834bfc03f15a">&#9670;&nbsp;</a></span>apreq_param_charset_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> apreq_param_charset_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Gets the character encoding for this parameter. </p>
+
+</div>
+</div>
+<a id="abe765ec55aebc8409ddd6d3db44ff917"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe765ec55aebc8409ddd6d3db44ff917">&#9670;&nbsp;</a></span>apreq_param_charset_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> apreq_param_charset_set </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>&#160;</td>
+          <td class="paramname"><em>c</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the character encoding for this parameter. </p>
+
+</div>
+</div>
+<a id="aeea075c59169992492f6f5c40b9b8a70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeea075c59169992492f6f5c40b9b8a70">&#9670;&nbsp;</a></span>apreq_param_decode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_param_decode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> **&#160;</td>
+          <td class="paramname"><em>param</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>word</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>nlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>vlen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Url-decodes a name=value pair into a param.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">param</td><td>points to the decoded parameter on success </td></tr>
+    <tr><td class="paramname">pool</td><td>Pool from which the param is allocated. </td></tr>
+    <tr><td class="paramname">word</td><td>Start of the name=value pair. </td></tr>
+    <tr><td class="paramname">nlen</td><td>Length of urlencoded name. </td></tr>
+    <tr><td class="paramname">vlen</td><td>Length of urlencoded value.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS on success. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> or <a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a> on malformed input.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Unless vlen == 0, this function assumes there is exactly one character ('=') which separates the pair. </dd></dl>
+
+</div>
+</div>
+<a id="a4b8b032f9d2ae8e0a6e95b6dd95b5aa9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b8b032f9d2ae8e0a6e95b6dd95b5aa9">&#9670;&nbsp;</a></span>apreq_param_encode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char* apreq_param_encode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>param</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Url-encodes the param into a name-value pair. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>Pool which allocates the returned string. </td></tr>
+    <tr><td class="paramname">param</td><td>Param to encode. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>name-value pair representing the param. </dd></dl>
+
+</div>
+</div>
+<a id="af407c2ab726bc8bc34a1b1924a4f327a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af407c2ab726bc8bc34a1b1924a4f327a">&#9670;&nbsp;</a></span>apreq_param_is_tainted()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE unsigned apreq_param_is_tainted </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>1 if the taint flag is set, 0 otherwise. </dd></dl>
+
+</div>
+</div>
+<a id="a25c915d3d0fd1694d2c538f108646560"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25c915d3d0fd1694d2c538f108646560">&#9670;&nbsp;</a></span>apreq_param_make()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_param_make </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>nlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>val</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>vlen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>creates a param from name/value information </p>
+
+</div>
+</div>
+<a id="ae76641d443483db5274624f948e1c347"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae76641d443483db5274624f948e1c347">&#9670;&nbsp;</a></span>apreq_param_tainted_off()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_param_tainted_off </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Turns off the taint flag. </p>
+
+</div>
+</div>
+<a id="a967919466da31283c6d668c58fe5223c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a967919466da31283c6d668c58fe5223c">&#9670;&nbsp;</a></span>apreq_param_tainted_on()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_param_tainted_on </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Sets the tainted flag. </p>
+
+</div>
+</div>
+<a id="a76c7e698fd45f3f3e07db60fcba15e52"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76c7e698fd45f3f3e07db60fcba15e52">&#9670;&nbsp;</a></span>apreq_params_as_array()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/structapr__array__header__t.html">apr_array_header_t</a>* apreq_params_as_array </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>t</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>key</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns an array of parameters (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> *) matching the given key. The key is case-insensitive. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">p</td><td>Allocates the returned array. </td></tr>
+    <tr><td class="paramname">t</td><td>the parameter table returned by <a class="el" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args()</a>, <a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body()</a> or <a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params()</a> </td></tr>
+    <tr><td class="paramname">key</td><td>Null-terminated search key, case insensitive. key==NULL fetches all parameters. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>an array of apreq_param_t* (pointers) </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Also parses the request if necessary. </dd></dl>
+
+</div>
+</div>
+<a id="a0f1db12120bb2307f5e33186f094b0d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f1db12120bb2307f5e33186f094b0d6">&#9670;&nbsp;</a></span>apreq_params_as_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* apreq_params_as_string </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>t</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>key</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a>&#160;</td>
+          <td class="paramname"><em>mode</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a ", " -joined string containing all parameters for the requested key, an empty string if none are found. The key is case-insensitive.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">p</td><td>Allocates the return string. </td></tr>
+    <tr><td class="paramname">t</td><td>the parameter table returned by <a class="el" href="apreq__module_8h.html#ade74830e449fa5bb24694ffc3b8374ca">apreq_args()</a>, <a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body()</a> or <a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params()</a> </td></tr>
+    <tr><td class="paramname">key</td><td>Null-terminated parameter name, case insensitive. key==NULL fetches all values. </td></tr>
+    <tr><td class="paramname">mode</td><td>Join type- see <a class="el" href="apreq__util_8h.html#a1aa668dc806fce4bd0fef348d1601930">apreq_join()</a>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the joined string or NULL on error </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Also parses the request if necessary. </dd></dl>
+
+</div>
+</div>
+<a id="a0aa638519951d85d1faf7bf6ba986226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0aa638519951d85d1faf7bf6ba986226">&#9670;&nbsp;</a></span>apreq_parse_query_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parse_query_string </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>t</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>qs</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Parse a url-encoded string into a param table. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>pool used to allocate the param data. </td></tr>
+    <tr><td class="paramname">t</td><td>table to which the params are added. </td></tr>
+    <tr><td class="paramname">qs</td><td>Query string to url-decode. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS if successful, error otherwise. </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>This function uses [&amp;;] as the set of tokens to delineate words, and will treat a word w/o '=' as a name-value pair with value-length = 0. </dd></dl>
+
+</div>
+</div>
+<a id="a1be07e7c4c8a687203ccc0d38ec3aedd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1be07e7c4c8a687203ccc0d38ec3aedd">&#9670;&nbsp;</a></span>apreq_upload()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_upload </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>body</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns the first param in req-&gt;body which has both param-&gt;v.name matching key (case insensitive) and param-&gt;upload != NULL. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">body</td><td>parameter table returned by <a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body()</a> or <a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params()</a> </td></tr>
+    <tr><td class="paramname">name</td><td>Parameter name. key == NULL returns first upload. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Corresponding upload, NULL if none found. </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Will parse the request as necessary. </dd></dl>
+
+</div>
+</div>
+<a id="ae449c4a1890767d1e9a50c78ea42769c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae449c4a1890767d1e9a50c78ea42769c">&#9670;&nbsp;</a></span>apreq_uploads()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>* apreq_uploads </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>body</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns a table of all params in req-&gt;body with non-NULL upload brigades. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">body</td><td>parameter table returned by <a class="el" href="apreq__module_8h.html#ae928689622d094025a8efb8c6c17d680">apreq_body()</a> or <a class="el" href="apreq__module_8h.html#a0dff48fd4e83399a07853abe9d67c251">apreq_params()</a> </td></tr>
+    <tr><td class="paramname">pool</td><td>Pool which allocates the table struct. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Upload table. </dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Will parse the request if necessary. </dd></dl>
+
+</div>
+</div>
+<a id="a121453693ef7c6af821ae723b6dbe34b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a121453693ef7c6af821ae723b6dbe34b">&#9670;&nbsp;</a></span>apreq_value_to_param()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="el" href="structapreq__param__t.html">apreq_param_t</a>* apreq_value_to_param </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>val</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Upgrades args and body table values to <a class="el" href="structapreq__param__t.html">apreq_param_t</a> structs. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.map
new file mode 100644
index 0000000..af051a6
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="include/apreq_param.h" name="include/apreq_param.h">
+<area shape="rect" id="node1" title="Request parsing and parameter API." alt="" coords="96,5,267,32"/>
+<area shape="rect" id="node2" href="$apreq__parser_8h.html" title="Request body parser API." alt="" coords="97,80,266,107"/>
+<area shape="rect" id="node3" href="$apreq__module_8h.html" title="Module API." alt="" coords="92,155,271,181"/>
+<area shape="rect" id="node4" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="5,229,168,271"/>
+<area shape="rect" id="node5" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,229,363,271"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.md5
new file mode 100644
index 0000000..6605280
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.md5
@@ -0,0 +1 @@
+8e421fa7e50cbff3e7a4cf070ed1f9ba
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.png
new file mode 100644
index 0000000..c898367
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__param_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__incl.map b/output/apreq/docs/libapreq2/apreq__param_8h__incl.map
new file mode 100644
index 0000000..cc9cf96
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="include/apreq_param.h" name="include/apreq_param.h">
+<area shape="rect" id="node1" title="Request parsing and parameter API." alt="" coords="85,5,255,32"/>
+<area shape="rect" id="node2" href="$apreq_8h.html" title="Main header file..." alt="" coords="77,80,148,107"/>
+<area shape="rect" id="node5" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apu.tag$apr__buckets_8h.html.html" title=" " alt="" coords="173,80,285,107"/>
+<area shape="rect" id="node3" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="5,155,108,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="133,155,207,181"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq__param_8h__incl.md5
new file mode 100644
index 0000000..926c525
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h__incl.md5
@@ -0,0 +1 @@
+dae1e764f91f40f3edca020438ee3351
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h__incl.png b/output/apreq/docs/libapreq2/apreq__param_8h__incl.png
new file mode 100644
index 0000000..5465f0a
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__param_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__param_8h_source.html b/output/apreq/docs/libapreq2/apreq__param_8h_source.html
new file mode 100644
index 0000000..f60fbcb
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__param_8h_source.html
@@ -0,0 +1,243 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_param.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_param.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq__param_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_PARAM_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_PARAM_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq_8h.html">apreq.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html">apr_buckets.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structapreq__param__t.html">   37</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__param__t.html">apreq_param_t</a> {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structapreq__param__t.html#abb8ddaeb79c4d96691289520a2a4777f">   38</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a>         *<a class="code" href="structapreq__param__t.html#abb8ddaeb79c4d96691289520a2a4777f">info</a>;   </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structapreq__param__t.html#a03674c98f355545deeb3fcbe109d8c9a">   39</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a>  *<a class="code" href="structapreq__param__t.html#a03674c98f355545deeb3fcbe109d8c9a">upload</a>; </div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">   40</a></span>&#160;    <span class="keywordtype">unsigned</span>             <a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>;  </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structapreq__param__t.html#af710878750c677daa9cd61868434d67f">   41</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="structapreq__value__t.html">apreq_value_t</a>  <a class="code" href="structapreq__param__t.html#af710878750c677daa9cd61868434d67f">v</a>;      </div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#ad7b3956f0310dec4b970ad7135aeabd7">   42</a></span>&#160;} <a class="code" href="apreq__param_8h.html#ad7b3956f0310dec4b970ad7135aeabd7">apreq_param_t</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#af407c2ab726bc8bc34a1b1924a4f327a">   47</a></span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="apreq__param_8h.html#af407c2ab726bc8bc34a1b1924a4f327a">apreq_param_is_tainted</a>(<span class="keyword">const</span> <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *p) {</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a967919466da31283c6d668c58fe5223c">   53</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__param_8h.html#a967919466da31283c6d668c58fe5223c">apreq_param_tainted_on</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *p) {</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#ae76641d443483db5274624f948e1c347">   59</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="apreq__param_8h.html#ae76641d443483db5274624f948e1c347">apreq_param_tainted_off</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *p) {</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_TAINTED);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;}</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#abe765ec55aebc8409ddd6d3db44ff917">   65</a></span>&#160;<a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> <a class="code" href="apreq__param_8h.html#abe765ec55aebc8409ddd6d3db44ff917">apreq_param_charset_set</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *p, <a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b [...]
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> old = (<a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>)</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_CHARSET);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_CHARSET, c);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordflow">return</span> old;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;}</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#abe2a7a47df83a5667fe2834bfc03f15a">   74</a></span>&#160;<a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> <a class="code" href="apreq__param_8h.html#abe2a7a47df83a5667fe2834bfc03f15a">apreq_param_charset_get</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *p) {</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>)<a class="code" href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a>(p-&gt;<a class="code" href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">flags</a>, APREQ_CHARSET);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a121453693ef7c6af821ae723b6dbe34b">   81</a></span>&#160;<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *<a class="code" href="apreq__param_8h.html#a121453693ef7c6af821ae723b6dbe34b">apreq_value_to_param</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *val)</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;{</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keyword">union </span>{ <span class="keyword">const</span> <span class="keywordtype">char</span> *in; <span class="keywordtype">char</span> *out; } deconst;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    deconst.in = val;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a>, v,</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;           <a class="code" href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a>(<a class="code" href="structapreq__value__t.html">apreq_value_t</a>, data, deconst.out));</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;}</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a25c915d3d0fd1694d2c538f108646560">   93</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__param__t.html">apreq_param_t</a> *) <a class="code" href="apreq__param_8h.html#a25c915d3d0fd1694d2c538f108646560">apreq_param_make</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__p [...]
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                                                <span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                                                <span class="keyword">const</span> apr_size_t nlen,</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                                                <span class="keyword">const</span> <span class="keywordtype">char</span> *val,</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                                                <span class="keyword">const</span> apr_size_t vlen);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160; </div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#aeea075c59169992492f6f5c40b9b8a70">  115</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq__param_8h.html#aeea075c59169992492f6f5c40b9b8a70">apreq_param_decode</a>(<a cl [...]
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                                               <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool,</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                                               <span class="keyword">const</span> <span class="keywordtype">char</span> *word,</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                                               apr_size_t nlen,</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                                               apr_size_t vlen);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a4b8b032f9d2ae8e0a6e95b6dd95b5aa9">  127</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keywordtype">char</span> *) <a class="code" href="apreq__param_8h.html#a4b8b032f9d2ae8e0a6e95b6dd95b5aa9">apreq_param_encode</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086 [...]
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                                         <span class="keyword">const</span> <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *param);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a0aa638519951d85d1faf7bf6ba986226">  141</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq__param_8h.html#a0aa638519951d85d1faf7bf6ba986226">apreq_parse_query_string</a> [...]
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;                                                     <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *t,</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;                                                     <span class="keyword">const</span> <span class="keywordtype">char</span> *qs);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a76c7e698fd45f3f3e07db60fcba15e52">  157</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/structapr__array__header__t.html">apr_array_header_t</a> *) <a class="code" href="apreq__param_8h.html#a76c7e698fd45f3f3e07db60fcba15e52">apreq_params_as_array</a>(<a class="codeRef"  [...]
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                                                          <span class="keyword">const</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *t,</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                                                          <span class="keyword">const</span> <span class="keywordtype">char</span> *key);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a0f1db12120bb2307f5e33186f094b0d6">  175</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *) <a class="code" href="apreq__param_8h.html#a0f1db12120bb2307f5e33186f094b0d6">apreq_params_as_string</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/gr [...]
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;                                                   <span class="keyword">const</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *t,</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *key,</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;                                                   <a class="code" href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a> mode);</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#ae449c4a1890767d1e9a50c78ea42769c">  187</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keyword">const</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *) <a class="code" href="apreq__param_8h.html#ae449c4a1890767d1e9a50c78e [...]
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                                                 <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool);</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="apreq__param_8h.html#a1be07e7c4c8a687203ccc0d38ec3aedd">  198</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<span class="keyword">const</span> <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *) <a class="code" href="apreq__param_8h.html#a1be07e7c4c8a687203ccc0d38ec3aedd">apreq_upload</a>(<span class="keyword">const</span> <a clas [...]
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                                                  <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160; </div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;}</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APREQ_PARAM_H */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160; </div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160; </div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
+<div class="ttc" id="aapr__buckets_8h.html_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html">apr_buckets.h</a></div></div>
+<div class="ttc" id="aapreq_8h_html"><div class="ttname"><a href="apreq_8h.html">apreq.h</a></div><div class="ttdoc">Main header file...</div></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq_8h_html_a07141b4d0c7daa6d5aba5ff33d52a31f"><div class="ttname"><a href="apreq_8h.html#a07141b4d0c7daa6d5aba5ff33d52a31f">APREQ_FLAGS_GET</a></div><div class="ttdeci">#define APREQ_FLAGS_GET(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:126</div></div>
+<div class="ttc" id="aapreq_8h_html_a5bcc4e81747b13b7bfbb946648453f9e"><div class="ttname"><a href="apreq_8h.html#a5bcc4e81747b13b7bfbb946648453f9e">APREQ_FLAGS_OFF</a></div><div class="ttdeci">#define APREQ_FLAGS_OFF(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:118</div></div>
+<div class="ttc" id="aapreq_8h_html_a6355f965e8eabf742537bfd8da534376"><div class="ttname"><a href="apreq_8h.html#a6355f965e8eabf742537bfd8da534376">apreq_attr_to_type</a></div><div class="ttdeci">#define apreq_attr_to_type(T, A, P)</div><div class="ttdef"><b>Definition:</b> apreq.h:265</div></div>
+<div class="ttc" id="aapreq_8h_html_a6607dfa756796989c15014870b48c8cd"><div class="ttname"><a href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a></div><div class="ttdeci">apreq_charset_t</div><div class="ttdef"><b>Definition:</b> apreq.h:205</div></div>
+<div class="ttc" id="aapreq_8h_html_a817a3e293b1ae4210ee68871d6b67e1f"><div class="ttname"><a href="apreq_8h.html#a817a3e293b1ae4210ee68871d6b67e1f">APREQ_FLAGS_SET</a></div><div class="ttdeci">#define APREQ_FLAGS_SET(f, name, value)</div><div class="ttdef"><b>Definition:</b> apreq.h:133</div></div>
+<div class="ttc" id="aapreq_8h_html_ac3784c04255e92629350505d35b0473e"><div class="ttname"><a href="apreq_8h.html#ac3784c04255e92629350505d35b0473e">apreq_join_t</a></div><div class="ttdeci">apreq_join_t</div><div class="ttdef"><b>Definition:</b> apreq.h:214</div></div>
+<div class="ttc" id="aapreq_8h_html_adf8584e758a62fe0a79023821c359222"><div class="ttname"><a href="apreq_8h.html#adf8584e758a62fe0a79023821c359222">APREQ_FLAGS_ON</a></div><div class="ttdeci">#define APREQ_FLAGS_ON(f, name)</div><div class="ttdef"><b>Definition:</b> apreq.h:122</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a0aa638519951d85d1faf7bf6ba986226"><div class="ttname"><a href="apreq__param_8h.html#a0aa638519951d85d1faf7bf6ba986226">apreq_parse_query_string</a></div><div class="ttdeci">apr_status_t apreq_parse_query_string(apr_pool_t *pool, apr_table_t *t, const char *qs)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a0f1db12120bb2307f5e33186f094b0d6"><div class="ttname"><a href="apreq__param_8h.html#a0f1db12120bb2307f5e33186f094b0d6">apreq_params_as_string</a></div><div class="ttdeci">const char * apreq_params_as_string(apr_pool_t *p, const apr_table_t *t, const char *key, apreq_join_t mode)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a121453693ef7c6af821ae723b6dbe34b"><div class="ttname"><a href="apreq__param_8h.html#a121453693ef7c6af821ae723b6dbe34b">apreq_value_to_param</a></div><div class="ttdeci">static APR_INLINE apreq_param_t * apreq_value_to_param(const char *val)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:81</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a1be07e7c4c8a687203ccc0d38ec3aedd"><div class="ttname"><a href="apreq__param_8h.html#a1be07e7c4c8a687203ccc0d38ec3aedd">apreq_upload</a></div><div class="ttdeci">const apreq_param_t * apreq_upload(const apr_table_t *body, const char *name)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a25c915d3d0fd1694d2c538f108646560"><div class="ttname"><a href="apreq__param_8h.html#a25c915d3d0fd1694d2c538f108646560">apreq_param_make</a></div><div class="ttdeci">apreq_param_t * apreq_param_make(apr_pool_t *p, const char *name, const apr_size_t nlen, const char *val, const apr_size_t vlen)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a4b8b032f9d2ae8e0a6e95b6dd95b5aa9"><div class="ttname"><a href="apreq__param_8h.html#a4b8b032f9d2ae8e0a6e95b6dd95b5aa9">apreq_param_encode</a></div><div class="ttdeci">char * apreq_param_encode(apr_pool_t *pool, const apreq_param_t *param)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a76c7e698fd45f3f3e07db60fcba15e52"><div class="ttname"><a href="apreq__param_8h.html#a76c7e698fd45f3f3e07db60fcba15e52">apreq_params_as_array</a></div><div class="ttdeci">apr_array_header_t * apreq_params_as_array(apr_pool_t *p, const apr_table_t *t, const char *key)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_a967919466da31283c6d668c58fe5223c"><div class="ttname"><a href="apreq__param_8h.html#a967919466da31283c6d668c58fe5223c">apreq_param_tainted_on</a></div><div class="ttdeci">static APR_INLINE void apreq_param_tainted_on(apreq_param_t *p)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:53</div></div>
+<div class="ttc" id="aapreq__param_8h_html_abe2a7a47df83a5667fe2834bfc03f15a"><div class="ttname"><a href="apreq__param_8h.html#abe2a7a47df83a5667fe2834bfc03f15a">apreq_param_charset_get</a></div><div class="ttdeci">static APR_INLINE apreq_charset_t apreq_param_charset_get(apreq_param_t *p)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:74</div></div>
+<div class="ttc" id="aapreq__param_8h_html_abe765ec55aebc8409ddd6d3db44ff917"><div class="ttname"><a href="apreq__param_8h.html#abe765ec55aebc8409ddd6d3db44ff917">apreq_param_charset_set</a></div><div class="ttdeci">static APR_INLINE apreq_charset_t apreq_param_charset_set(apreq_param_t *p, apreq_charset_t c)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:65</div></div>
+<div class="ttc" id="aapreq__param_8h_html_ad7b3956f0310dec4b970ad7135aeabd7"><div class="ttname"><a href="apreq__param_8h.html#ad7b3956f0310dec4b970ad7135aeabd7">apreq_param_t</a></div><div class="ttdeci">struct apreq_param_t apreq_param_t</div></div>
+<div class="ttc" id="aapreq__param_8h_html_ae449c4a1890767d1e9a50c78ea42769c"><div class="ttname"><a href="apreq__param_8h.html#ae449c4a1890767d1e9a50c78ea42769c">apreq_uploads</a></div><div class="ttdeci">const apr_table_t * apreq_uploads(const apr_table_t *body, apr_pool_t *pool)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_ae76641d443483db5274624f948e1c347"><div class="ttname"><a href="apreq__param_8h.html#ae76641d443483db5274624f948e1c347">apreq_param_tainted_off</a></div><div class="ttdeci">static APR_INLINE void apreq_param_tainted_off(apreq_param_t *p)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:59</div></div>
+<div class="ttc" id="aapreq__param_8h_html_aeea075c59169992492f6f5c40b9b8a70"><div class="ttname"><a href="apreq__param_8h.html#aeea075c59169992492f6f5c40b9b8a70">apreq_param_decode</a></div><div class="ttdeci">apr_status_t apreq_param_decode(apreq_param_t **param, apr_pool_t *pool, const char *word, apr_size_t nlen, apr_size_t vlen)</div></div>
+<div class="ttc" id="aapreq__param_8h_html_af407c2ab726bc8bc34a1b1924a4f327a"><div class="ttname"><a href="apreq__param_8h.html#af407c2ab726bc8bc34a1b1924a4f327a">apreq_param_is_tainted</a></div><div class="ttdeci">static APR_INLINE unsigned apreq_param_is_tainted(const apreq_param_t *p)</div><div class="ttdef"><b>Definition:</b> apreq_param.h:47</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="astructapr__array__header__t_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/structapr__array__header__t.html">apr_array_header_t</a></div></div>
+<div class="ttc" id="astructapr__bucket__brigade_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a></div></div>
+<div class="ttc" id="astructapreq__param__t_html"><div class="ttname"><a href="structapreq__param__t.html">apreq_param_t</a></div><div class="ttdef"><b>Definition:</b> apreq_param.h:37</div></div>
+<div class="ttc" id="astructapreq__param__t_html_a03674c98f355545deeb3fcbe109d8c9a"><div class="ttname"><a href="structapreq__param__t.html#a03674c98f355545deeb3fcbe109d8c9a">apreq_param_t::upload</a></div><div class="ttdeci">apr_bucket_brigade * upload</div><div class="ttdef"><b>Definition:</b> apreq_param.h:39</div></div>
+<div class="ttc" id="astructapreq__param__t_html_a802bd45ab5afd0784d730e0dbb01aa71"><div class="ttname"><a href="structapreq__param__t.html#a802bd45ab5afd0784d730e0dbb01aa71">apreq_param_t::flags</a></div><div class="ttdeci">unsigned flags</div><div class="ttdef"><b>Definition:</b> apreq_param.h:40</div></div>
+<div class="ttc" id="astructapreq__param__t_html_abb8ddaeb79c4d96691289520a2a4777f"><div class="ttname"><a href="structapreq__param__t.html#abb8ddaeb79c4d96691289520a2a4777f">apreq_param_t::info</a></div><div class="ttdeci">apr_table_t * info</div><div class="ttdef"><b>Definition:</b> apreq_param.h:38</div></div>
+<div class="ttc" id="astructapreq__param__t_html_af710878750c677daa9cd61868434d67f"><div class="ttname"><a href="structapreq__param__t.html#af710878750c677daa9cd61868434d67f">apreq_param_t::v</a></div><div class="ttdeci">const apreq_value_t v</div><div class="ttdef"><b>Definition:</b> apreq_param.h:41</div></div>
+<div class="ttc" id="astructapreq__value__t_html"><div class="ttname"><a href="structapreq__value__t.html">apreq_value_t</a></div><div class="ttdoc">libapreq's pre-extensible string type</div><div class="ttdef"><b>Definition:</b> apreq.h:235</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h.html b/output/apreq/docs/libapreq2/apreq__parser_8h.html
new file mode 100644
index 0000000..5adcfb1
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h.html
@@ -0,0 +1,819 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_parser.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_parser.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Request body parser API.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="el" href="apreq__param_8h_source.html">apreq_param.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_parser.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__parser_8h__incl.png" border="0" usemap="#ainclude_2apreq__parser_8h" alt=""/></div>
+<map name="ainclude_2apreq__parser_8h" id="ainclude_2apreq__parser_8h">
+<area shape="rect" title="Request body parser API." alt="" coords="85,5,255,32"/>
+<area shape="rect" href="apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="110,80,230,107"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="77,155,148,181"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html.html" title=" " alt="" coords="173,155,285,181"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="5,229,108,256"/>
+<area shape="rect" title=" " alt="" coords="133,229,207,256"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__parser_8h__dep__incl.png" border="0" usemap="#ainclude_2apreq__parser_8hdep" alt=""/></div>
+<map name="ainclude_2apreq__parser_8hdep" id="ainclude_2apreq__parser_8hdep">
+<area shape="rect" title="Request body parser API." alt="" coords="97,5,266,32"/>
+<area shape="rect" href="apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" href="apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" href="apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__parser_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:af39d2adfdd09c2fe0c8c6a3c1ea1437e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PARSER_ARGS</a></td></tr>
+<tr class="separator:af39d2adfdd09c2fe0c8c6a3c1ea1437e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61c8b1c319752bde3cc35e98247707bf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK_ARGS</a></td></tr>
+<tr class="separator:a61c8b1c319752bde3cc35e98247707bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a855c07ea7fc9e240c8620d29eea4a019"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a>(f)</td></tr>
+<tr class="separator:a855c07ea7fc9e240c8620d29eea4a019"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abaa196498d8cf959e07b4c84d5264f7f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a>(f)</td></tr>
+<tr class="separator:abaa196498d8cf959e07b4c84d5264f7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2c35885676cec315fc7dea19a6d1d870"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a2c35885676cec315fc7dea19a6d1d870">apreq_hook_t</a></td></tr>
+<tr class="separator:a2c35885676cec315fc7dea19a6d1d870"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade5e15a40b9e1ec626ee56c494c7cdbb"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#ade5e15a40b9e1ec626ee56c494c7cdbb">apreq_parser_t</a></td></tr>
+<tr class="separator:ade5e15a40b9e1ec626ee56c494c7cdbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affb8f3ab5b29a4e09f3aa3bde8630118"><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>) (<a class="el" href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PA [...]
+<tr class="separator:affb8f3ab5b29a4e09f3aa3bde8630118"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ff78d9001f60363061d0608b52afbe0"><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a>) (<a class="el" href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK [...]
+<tr class="separator:a6ff78d9001f60363061d0608b52afbe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9e03fd28359c5a82771a25d806c2165"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#ab9e03fd28359c5a82771a25d806c2165">apreq_hook_find_param_ctx_t</a></td></tr>
+<tr class="separator:ab9e03fd28359c5a82771a25d806c2165"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c00aa3a31daba2c06110d5fc8edf1fe"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">apreq_parser_run</a> (struct <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *psr, <a c [...]
+<tr class="separator:a3c00aa3a31daba2c06110d5fc8edf1fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14d03a414fc4a0663af55fbb1f532bab"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a14d03a414fc4a0663af55fbb1f532bab">apreq_hook_run</a> (struct <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *h, <a class="el [...]
+<tr class="separator:a14d03a414fc4a0663af55fbb1f532bab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fd1ffe554941172fce54217c35f9db3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a6fd1ffe554941172fce54217c35f9db3">APREQ_DECLARE_PARSER</a> (apreq_parse_headers)</td></tr>
+<tr class="separator:a6fd1ffe554941172fce54217c35f9db3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec4b20f646ea57ad84d6a3391c548838"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#aec4b20f646ea57ad84d6a3391c548838">APREQ_DECLARE_PARSER</a> (apreq_parse_urlencoded)</td></tr>
+<tr class="separator:aec4b20f646ea57ad84d6a3391c548838"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bb6d9580fcbaf11cef33072ed3b14cb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a3bb6d9580fcbaf11cef33072ed3b14cb">APREQ_DECLARE_PARSER</a> (apreq_parse_multipart)</td></tr>
+<tr class="separator:a3bb6d9580fcbaf11cef33072ed3b14cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2833122bb6995f056a96df80a9f5a45f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a2833122bb6995f056a96df80a9f5a45f">APREQ_DECLARE_PARSER</a> (apreq_parse_generic)</td></tr>
+<tr class="separator:a2833122bb6995f056a96df80a9f5a45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adda61d873abf1c0ed1857bda405baa49"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#adda61d873abf1c0ed1857bda405baa49">APREQ_DECLARE_HOOK</a> (apreq_hook_apr_xml_parser)</td></tr>
+<tr class="separator:adda61d873abf1c0ed1857bda405baa49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a562191171c5df0a83360435d0fe1a667"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a562191171c5df0a83360435d0fe1a667">apreq_parser_make</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, <a class="elRef" href="http [...]
+<tr class="separator:a562191171c5df0a83360435d0fe1a667"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cf15457eea6991b36f47f6139ab163c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a3cf15457eea6991b36f47f6139ab163c">apreq_hook_make</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool, <a class="el" href="apreq__parser [...]
+<tr class="separator:a3cf15457eea6991b36f47f6139ab163c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97972c08b20917465b745c8b8eec95ed"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a97972c08b20917465b745c8b8eec95ed">apreq_parser_add_hook</a> (<a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *p, <a class="el" href="struct [...]
+<tr class="separator:a97972c08b20917465b745c8b8eec95ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73013ecad087f14075d319a4a983dd82"><td class="memItemLeft" align="right" valign="top"><a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a73013ecad087f14075d319a4a983dd82">apreq_parser</a> (const char *enctype)</td></tr>
+<tr class="separator:a73013ecad087f14075d319a4a983dd82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a595f05be3d241a5b339fd6ef948bfbc8"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a595f05be3d241a5b339fd6ef948bfbc8">apreq_register_parser</a> (const char *enctype, <a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118"> [...]
+<tr class="separator:a595f05be3d241a5b339fd6ef948bfbc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a162c74d59738663d7cb2109ee0b87c0a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a162c74d59738663d7cb2109ee0b87c0a">APREQ_DECLARE_HOOK</a> (apreq_hook_disable_uploads)</td></tr>
+<tr class="separator:a162c74d59738663d7cb2109ee0b87c0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad169b0ac7b7b1a66d3df3ae66c96a16c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#ad169b0ac7b7b1a66d3df3ae66c96a16c">APREQ_DECLARE_HOOK</a> (apreq_hook_discard_brigade)</td></tr>
+<tr class="separator:ad169b0ac7b7b1a66d3df3ae66c96a16c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5deeed0646b3d61cafe4eb5b6e40b16c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__parser_8h.html#a5deeed0646b3d61cafe4eb5b6e40b16c">APREQ_DECLARE_HOOK</a> (apreq_hook_find_param)</td></tr>
+<tr class="separator:a5deeed0646b3d61cafe4eb5b6e40b16c"><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>Request body parser API. </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="abaa196498d8cf959e07b4c84d5264f7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abaa196498d8cf959e07b4c84d5264f7f">&#9670;&nbsp;</a></span>APREQ_DECLARE_HOOK</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DECLARE_HOOK</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f</td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">                                <a class="code" href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">APREQ_DECLARE_NONSTD</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) \</div>
+<div class="line">                                f (<a class="code" href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK_ARGS</a>)</div>
+<div class="ttc" id="aapreq_8h_html_a8a1e7333187fdbc476473ac72d2ff38b"><div class="ttname"><a href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">APREQ_DECLARE_NONSTD</a></div><div class="ttdeci">#define APREQ_DECLARE_NONSTD(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:60</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a61c8b1c319752bde3cc35e98247707bf"><div class="ttname"><a href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK_ARGS</a></div><div class="ttdeci">#define APREQ_HOOK_ARGS</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:52</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+</div><!-- fragment --><p>Declares an API hook. </p>
+
+</div>
+</div>
+<a id="a855c07ea7fc9e240c8620d29eea4a019"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a855c07ea7fc9e240c8620d29eea4a019">&#9670;&nbsp;</a></span>APREQ_DECLARE_PARSER</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_DECLARE_PARSER</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">f</td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">                                <a class="code" href="apreq_8h.html#a8a1e7333187fdbc476473ac72d2ff38b">APREQ_DECLARE_NONSTD</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) \</div>
+<div class="line">                                f (<a class="code" href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PARSER_ARGS</a>)</div>
+<div class="ttc" id="aapreq__parser_8h_html_af39d2adfdd09c2fe0c8c6a3c1ea1437e"><div class="ttname"><a href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PARSER_ARGS</a></div><div class="ttdeci">#define APREQ_PARSER_ARGS</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:47</div></div>
+</div><!-- fragment --><p>Declares a API parser. </p>
+
+</div>
+</div>
+<a id="a61c8b1c319752bde3cc35e98247707bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61c8b1c319752bde3cc35e98247707bf">&#9670;&nbsp;</a></span>APREQ_HOOK_ARGS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_HOOK_ARGS</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">                           <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> *hook,         \</div>
+<div class="line">                           apreq_param_t *param,       \</div>
+<div class="line">                           apr_bucket_brigade *bb</div>
+<div class="ttc" id="astructapreq__hook__t_html"><div class="ttname"><a href="structapreq__hook__t.html">apreq_hook_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:83</div></div>
+</div><!-- fragment --><p>Hook arguments </p>
+
+</div>
+</div>
+<a id="af39d2adfdd09c2fe0c8c6a3c1ea1437e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af39d2adfdd09c2fe0c8c6a3c1ea1437e">&#9670;&nbsp;</a></span>APREQ_PARSER_ARGS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define APREQ_PARSER_ARGS</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">                           <a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> *parser,     \</div>
+<div class="line">                           apr_table_t *t,             \</div>
+<div class="line">                           apr_bucket_brigade *bb</div>
+<div class="ttc" id="astructapreq__parser__t_html"><div class="ttname"><a href="structapreq__parser__t.html">apreq_parser_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:93</div></div>
+</div><!-- fragment --><p>Parser arguments. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ab9e03fd28359c5a82771a25d806c2165"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9e03fd28359c5a82771a25d806c2165">&#9670;&nbsp;</a></span>apreq_hook_find_param_ctx_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a> <a class="el" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Context struct for the apreq_hook_find_param hook. </p>
+
+</div>
+</div>
+<a id="a6ff78d9001f60363061d0608b52afbe0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ff78d9001f60363061d0608b52afbe0">&#9670;&nbsp;</a></span>apreq_hook_function_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(* apreq_hook_function_t) (<a class="el" href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK_ARGS</a>)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The callback function of a hook. See <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a>. </p>
+
+</div>
+</div>
+<a id="a2c35885676cec315fc7dea19a6d1d870"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c35885676cec315fc7dea19a6d1d870">&#9670;&nbsp;</a></span>apreq_hook_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>A hook is called by the parser whenever data arrives in a file upload parameter of the request body. You may associate any number of hooks with a parser instance with <a class="el" href="apreq__parser_8h.html#a97972c08b20917465b745c8b8eec95ed">apreq_parser_add_hook()</a>. </p>
+
+</div>
+</div>
+<a id="affb8f3ab5b29a4e09f3aa3bde8630118"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affb8f3ab5b29a4e09f3aa3bde8630118">&#9670;&nbsp;</a></span>apreq_parser_function_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(* apreq_parser_function_t) (<a class="el" href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PARSER_ARGS</a>)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The callback function implementing a request body parser. </p>
+
+</div>
+</div>
+<a id="ade5e15a40b9e1ec626ee56c494c7cdbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade5e15a40b9e1ec626ee56c494c7cdbb">&#9670;&nbsp;</a></span>apreq_parser_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>A request body parser instance. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="adda61d873abf1c0ed1857bda405baa49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adda61d873abf1c0ed1857bda405baa49">&#9670;&nbsp;</a></span>APREQ_DECLARE_HOOK() <span class="overload">[1/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_HOOK </td>
+          <td>(</td>
+          <td class="paramtype">apreq_hook_apr_xml_parser&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>apr_xml_parser hook. It will parse until EOS appears. The parsed document isn't available until parsing has completed successfully. The hook's ctx pointer may be cast as (<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__xml__doc.html">apr_xml_doc</a> **) to retrieve the parsed document. </p>
+
+</div>
+</div>
+<a id="a162c74d59738663d7cb2109ee0b87c0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a162c74d59738663d7cb2109ee0b87c0a">&#9670;&nbsp;</a></span>APREQ_DECLARE_HOOK() <span class="overload">[2/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_HOOK </td>
+          <td>(</td>
+          <td class="paramtype">apreq_hook_disable_uploads&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Returns APREQ_ERROR_GENERAL. Effectively disables mfd parser if a file-upload field is present. </p>
+
+</div>
+</div>
+<a id="ad169b0ac7b7b1a66d3df3ae66c96a16c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad169b0ac7b7b1a66d3df3ae66c96a16c">&#9670;&nbsp;</a></span>APREQ_DECLARE_HOOK() <span class="overload">[3/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_HOOK </td>
+          <td>(</td>
+          <td class="paramtype">apreq_hook_discard_brigade&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Calls apr_brigade_cleanup on the incoming brigade after passing the brigade to any subsequent hooks. </p>
+
+</div>
+</div>
+<a id="a5deeed0646b3d61cafe4eb5b6e40b16c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5deeed0646b3d61cafe4eb5b6e40b16c">&#9670;&nbsp;</a></span>APREQ_DECLARE_HOOK() <span class="overload">[4/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_HOOK </td>
+          <td>(</td>
+          <td class="paramtype">apreq_hook_find_param&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Special purpose utility for locating a parameter during parsing. The hook's ctx should be initialized to an <a class="el" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a> *, with the name attribute set to the sought parameter name, the param attribute set to NULL, and the prev attribute set to the address of the previous hook. The param attribute will be reassigned to the first param found, and once that happens this hook is immediately removed from t [...]
+<dl class="section remark"><dt>Remarks</dt><dd>When used, this should always be the first hook invoked, so add it manually with ctx-&gt;prev = &amp;parser-&gt;hook instead of using apreq_parser_add_hook. </dd></dl>
+
+</div>
+</div>
+<a id="a2833122bb6995f056a96df80a9f5a45f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2833122bb6995f056a96df80a9f5a45f">&#9670;&nbsp;</a></span>APREQ_DECLARE_PARSER() <span class="overload">[1/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_PARSER </td>
+          <td>(</td>
+          <td class="paramtype">apreq_parse_generic&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Generic parser. No table entries will be added to the req-&gt;body table by this parser. The parser creates a dummy <a class="el" href="structapreq__param__t.html">apreq_param_t</a> to pass to any configured hooks. If no hooks are configured, the dummy param's bb slot will contain a copy of the request body. It can be retrieved by casting the parser's ctx pointer to (<a class="el" href="structapreq__param__t.html">apreq_param_t</a> **). </p>
+
+</div>
+</div>
+<a id="a6fd1ffe554941172fce54217c35f9db3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6fd1ffe554941172fce54217c35f9db3">&#9670;&nbsp;</a></span>APREQ_DECLARE_PARSER() <span class="overload">[2/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_PARSER </td>
+          <td>(</td>
+          <td class="paramtype">apreq_parse_headers&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>RFC 822 Header parser. It will reject all data after the first CRLF CRLF sequence (an empty line). See <a class="el" href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">apreq_parser_run()</a> for more info on rejected data. </p>
+
+</div>
+</div>
+<a id="a3bb6d9580fcbaf11cef33072ed3b14cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bb6d9580fcbaf11cef33072ed3b14cb">&#9670;&nbsp;</a></span>APREQ_DECLARE_PARSER() <span class="overload">[3/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_PARSER </td>
+          <td>(</td>
+          <td class="paramtype">apreq_parse_multipart&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>RFC 2388 multipart/form-data (and XForms 1.0 multipart/related) parser. It will reject any buckets representing preamble and postamble text (this is normal behavior, not an error condition). See <a class="el" href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">apreq_parser_run()</a> for more info on rejected data. </p>
+
+</div>
+</div>
+<a id="aec4b20f646ea57ad84d6a3391c548838"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec4b20f646ea57ad84d6a3391c548838">&#9670;&nbsp;</a></span>APREQ_DECLARE_PARSER() <span class="overload">[4/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">APREQ_DECLARE_PARSER </td>
+          <td>(</td>
+          <td class="paramtype">apreq_parse_urlencoded&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>RFC 2396 application/x-www-form-urlencoded parser. </p>
+
+</div>
+</div>
+<a id="a3cf15457eea6991b36f47f6139ab163c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cf15457eea6991b36f47f6139ab163c">&#9670;&nbsp;</a></span>apreq_hook_make()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a>* apreq_hook_make </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a>&#160;</td>
+          <td class="paramname"><em>hook</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td>
+          <td class="paramname"><em>next</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>ctx</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Construct a hook.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>used to allocate the hook. </td></tr>
+    <tr><td class="paramname">hook</td><td>The hook function. </td></tr>
+    <tr><td class="paramname">next</td><td>List of other hooks for this hook to call on. </td></tr>
+    <tr><td class="paramname">ctx</td><td>Hook's internal scratch pad. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>New hook. </dd></dl>
+
+</div>
+</div>
+<a id="a14d03a414fc4a0663af55fbb1f532bab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14d03a414fc4a0663af55fbb1f532bab">&#9670;&nbsp;</a></span>apreq_hook_run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_hook_run </td>
+          <td>(</td>
+          <td class="paramtype">struct <a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td>
+          <td class="paramname"><em>h</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__param__t.html">apreq_param_t</a> *&#160;</td>
+          <td class="paramname"><em>param</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>bb</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Run the hook with the current parameter and the incoming bucket brigade. The hook may modify the brigade if necessary. Once all hooks have completed, the contents of the brigade will be added to the parameter's bb attribute. </p><dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS on success. All other values represent errors. </dd></dl>
+
+</div>
+</div>
+<a id="a73013ecad087f14075d319a4a983dd82"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73013ecad087f14075d319a4a983dd82">&#9670;&nbsp;</a></span>apreq_parser()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a> apreq_parser </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>enctype</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Fetch the default parser function associated with the given MIME type. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">enctype</td><td>The desired enctype (can also be a full "Content-Type" header). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The parser function, or NULL if the enctype is unrecognized. </dd></dl>
+
+</div>
+</div>
+<a id="a97972c08b20917465b745c8b8eec95ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97972c08b20917465b745c8b8eec95ed">&#9670;&nbsp;</a></span>apreq_parser_add_hook()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_add_hook </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td>
+          <td class="paramname"><em>h</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a new hook to the end of the parser's hook list.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">p</td><td>Parser. </td></tr>
+    <tr><td class="paramname">h</td><td>Hook to append. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a id="a562191171c5df0a83360435d0fe1a667"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a562191171c5df0a83360435d0fe1a667">&#9670;&nbsp;</a></span>apreq_parser_make()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structapreq__parser__t.html">apreq_parser_t</a>* apreq_parser_make </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *&#160;</td>
+          <td class="paramname"><em>ba</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>content_type</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>&#160;</td>
+          <td class="paramname"><em>pfn</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>brigade_limit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>temp_dir</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structapreq__hook__t.html">apreq_hook_t</a> *&#160;</td>
+          <td class="paramname"><em>hook</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>ctx</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Construct a parser.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>Pool used to allocate the parser. </td></tr>
+    <tr><td class="paramname">ba</td><td>bucket allocator used to create bucket brigades </td></tr>
+    <tr><td class="paramname">content_type</td><td>Content-type that this parser can deal with. </td></tr>
+    <tr><td class="paramname">pfn</td><td>The parser function. </td></tr>
+    <tr><td class="paramname">brigade_limit</td><td>the maximum in-memory bytes a brigade may use </td></tr>
+    <tr><td class="paramname">temp_dir</td><td>the directory used by the parser for temporary files </td></tr>
+    <tr><td class="paramname">hook</td><td>Hooks to associate this parser with. </td></tr>
+    <tr><td class="paramname">ctx</td><td>Parser's internal scratch pad. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>New parser. </dd></dl>
+
+</div>
+</div>
+<a id="a3c00aa3a31daba2c06110d5fc8edf1fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c00aa3a31daba2c06110d5fc8edf1fe">&#9670;&nbsp;</a></span>apreq_parser_run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_parser_run </td>
+          <td>(</td>
+          <td class="paramtype">struct <a class="el" href="structapreq__parser__t.html">apreq_parser_t</a> *&#160;</td>
+          <td class="paramname"><em>psr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a> *&#160;</td>
+          <td class="paramname"><em>t</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>bb</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Parse the incoming brigade into a table. Parsers normally consume all the buckets of the brigade during parsing. However parsers may leave "rejected" data in the brigade, even during a successful parse, so callers may need to clean up the brigade themselves (in particular, rejected buckets should not be passed back to the parser again). </p><dl class="section remark"><dt>Remarks</dt><dd>bb == NULL is valid: the parser should return its public status: APR_INCOMPLETE, APR_SUCCESS, or an [...]
+
+</div>
+</div>
+<a id="a595f05be3d241a5b339fd6ef948bfbc8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a595f05be3d241a5b339fd6ef948bfbc8">&#9670;&nbsp;</a></span>apreq_register_parser()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_register_parser </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>enctype</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>&#160;</td>
+          <td class="paramname"><em>pfn</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Register a new parsing function with a MIME enctype. Registered parsers are added to <a class="el" href="apreq__parser_8h.html#a73013ecad087f14075d319a4a983dd82">apreq_parser()</a>'s internal lookup table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">enctype</td><td>The MIME type. </td></tr>
+    <tr><td class="paramname">pfn</td><td>The function to use during parsing. Setting parser == NULL will remove an existing parser.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or error. </dd></dl>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.map b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.map
new file mode 100644
index 0000000..070ccd3
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.map
@@ -0,0 +1,6 @@
+<map id="include/apreq_parser.h" name="include/apreq_parser.h">
+<area shape="rect" id="node1" title="Request body parser API." alt="" coords="97,5,266,32"/>
+<area shape="rect" id="node2" href="$apreq__module_8h.html" title="Module API." alt="" coords="92,80,271,107"/>
+<area shape="rect" id="node3" href="$apreq__module__apache_8h_source.html" title=" " alt="" coords="5,155,168,196"/>
+<area shape="rect" id="node4" href="$apreq__module__apache2_8h_source.html" title=" " alt="" coords="192,155,363,196"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.md5 b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.md5
new file mode 100644
index 0000000..fa4e335
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.md5
@@ -0,0 +1 @@
+28affe23c151aca4a0dd6808b0aae13f
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.png b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.png
new file mode 100644
index 0000000..06ebff1
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__parser_8h__dep__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__incl.map b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.map
new file mode 100644
index 0000000..651585a
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.map
@@ -0,0 +1,8 @@
+<map id="include/apreq_parser.h" name="include/apreq_parser.h">
+<area shape="rect" id="node1" title="Request body parser API." alt="" coords="85,5,255,32"/>
+<area shape="rect" id="node2" href="$apreq__param_8h.html" title="Request parsing and parameter API." alt="" coords="110,80,230,107"/>
+<area shape="rect" id="node3" href="$apreq_8h.html" title="Main header file..." alt="" coords="77,155,148,181"/>
+<area shape="rect" id="node6" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apu.tag$apr__buckets_8h.html.html" title=" " alt="" coords="173,155,285,181"/>
+<area shape="rect" id="node4" href="/home/tititou36/Dev/svn_httpd_apreq-2/docs/apr.tag$apr__tables_8h.html.html" title=" " alt="" coords="5,229,108,256"/>
+<area shape="rect" id="node5" title=" " alt="" coords="133,229,207,256"/>
+</map>
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__incl.md5 b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.md5
new file mode 100644
index 0000000..dddc92a
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.md5
@@ -0,0 +1 @@
+e1041fda458ca6dde2e6fd038199be33
\ No newline at end of file
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h__incl.png b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.png
new file mode 100644
index 0000000..123a2b2
Binary files /dev/null and b/output/apreq/docs/libapreq2/apreq__parser_8h__incl.png differ
diff --git a/output/apreq/docs/libapreq2/apreq__parser_8h_source.html b/output/apreq/docs/libapreq2/apreq__parser_8h_source.html
new file mode 100644
index 0000000..c8f1d3d
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__parser_8h_source.html
@@ -0,0 +1,261 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_parser.h Source File</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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">apreq_parser.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="apreq__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a2c35885676cec315fc7dea19a6d1d870">    1</a></span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">**  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">** contributor license agreements.  See the NOTICE file distributed with</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">** this work for additional information regarding copyright ownership.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">** The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">** (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">** the License.  You may obtain a copy of the License at</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">**      http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">**</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">**  Unless required by applicable law or agreed to in writing, software</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">**  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">**  See the License for the specific language governing permissions and</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">**  limitations under the License.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef APREQ_PARSERS_H</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define APREQ_PARSERS_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">/* These structs are defined below */</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="apreq__param_8h.html">apreq_param.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> <a class="code" href="structapreq__parser__t.html">apreq_parser_t</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">   47</a></span>&#160;<span class="preprocessor">#define APREQ_PARSER_ARGS  apreq_parser_t *parser,     \</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">                           apr_table_t *t,             \</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">                           apr_bucket_brigade *bb</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">   52</a></span>&#160;<span class="preprocessor">#define APREQ_HOOK_ARGS    apreq_hook_t *hook,         \</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">                           apreq_param_t *param,       \</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">                           apr_bucket_brigade *bb</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">   59</a></span>&#160;<span class="keyword">typedef</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>)(<a class="code" href="apreq__parser_8h.html#af39 [...]
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">   64</a></span>&#160;<span class="keyword">typedef</span> <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> (*<a class="code" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a>)(<a class="code" href="apreq__parser_8h.html#a61c8b [...]
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">   69</a></span>&#160;<span class="preprocessor">#define APREQ_DECLARE_PARSER(f) APREQ_DECLARE_NONSTD(apr_status_t) \</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">                                f (APREQ_PARSER_ARGS)</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">   75</a></span>&#160;<span class="preprocessor">#define APREQ_DECLARE_HOOK(f)   APREQ_DECLARE_NONSTD(apr_status_t) \</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">                                f (APREQ_HOOK_ARGS)</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structapreq__hook__t.html">   83</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structapreq__hook__t.html#a9e61fe14dbacf28528f69de468fb1fc0">   84</a></span>&#160;    <a class="code" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a> <a class="code" href="structapreq__hook__t.html#a9e61fe14dbacf28528f69de468fb1fc0">hook</a>; </div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structapreq__hook__t.html#a09efec3f75c52dbeaeedde059c953f7f">   85</a></span>&#160;    <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a>         *<a class="code" href="structapreq__hook__t.html#a09efec3f75c52dbeaeedde059c953f7f">next</a>; </div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structapreq__hook__t.html#a2316f4a8fb1cf0a9d5a46866b3229db1">   86</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>           *<a class="code" href="structapreq__hook__t.html#a2316f4a8fb1cf0a9d5a46866b3229db1">pool</a>; </div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structapreq__hook__t.html#a52aeaf774a4d37758b6a3de625913ac5">   87</a></span>&#160;    <span class="keywordtype">void</span> *<a class="code" href="structapreq__hook__t.html#a52aeaf774a4d37758b6a3de625913ac5">ctx</a>; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;};</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html">   93</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> {</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#adc117877c27713515c7617b560efb9a9">   95</a></span>&#160;    <a class="code" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a> <a class="code" href="structapreq__parser__t.html#adc117877c27713515c7617b560efb9a9">parser</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#a3acc7764c18c52c33bb64e3ee3375670">   97</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>             *<a class="code" href="structapreq__parser__t.html#a3acc7764c18c52c33bb64e3ee3375670">content_type</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#a8148c125f670a73aedb9b228612b5901">   99</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>             *<a class="code" href="structapreq__parser__t.html#a8148c125f670a73aedb9b228612b5901">pool</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#ae2d1910ffc51047ff2759843d1babbc8">  101</a></span>&#160;    <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a>     *<a class="code" href="structapreq__parser__t.html#ae2d1910ffc51047ff2759843d1babbc8">bucket_alloc</a>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#a203d6cfc8d36892a995a535bfe644e32">  103</a></span>&#160;    apr_size_t              <a class="code" href="structapreq__parser__t.html#a203d6cfc8d36892a995a535bfe644e32">brigade_limit</a>;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#a928f16aae17f84fadf06a52a51a6385c">  105</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>             *<a class="code" href="structapreq__parser__t.html#a928f16aae17f84fadf06a52a51a6385c">temp_dir</a>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#add1d982c326705e8da838041a645de33">  107</a></span>&#160;    <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a>           *<a class="code" href="structapreq__parser__t.html#add1d982c326705e8da838041a645de33">hook</a>;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structapreq__parser__t.html#ab73f196059129e0ca7926526ebba0a78">  109</a></span>&#160;    <span class="keywordtype">void</span>                   *<a class="code" href="structapreq__parser__t.html#ab73f196059129e0ca7926526ebba0a78">ctx</a>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;};</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">  124</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">apreq_parser_run</a>(<span class="keyword">struct</span> <a class="code" href="structapreq__parser__t.html">apreq_pa [...]
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                              <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb)</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;{</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="keywordflow">return</span> psr-&gt;<a class="code" href="structapreq__parser__t.html#adc117877c27713515c7617b560efb9a9">parser</a>(psr, t, bb);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;}</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="keyword">static</span> APR_INLINE</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a14d03a414fc4a0663af55fbb1f532bab">  138</a></span>&#160;<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> <a class="code" href="apreq__parser_8h.html#a14d03a414fc4a0663af55fbb1f532bab">apreq_hook_run</a>(<span class="keyword">struct</span> <a class="code" href="structapreq__hook__t.html">apreq_hook_t [...]
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                            <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *bb)</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;{</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="keywordflow">return</span> h-&gt;<a class="code" href="structapreq__hook__t.html#a9e61fe14dbacf28528f69de468fb1fc0">hook</a>(h, param, bb);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;}</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a6fd1ffe554941172fce54217c35f9db3">  150</a></span>&#160;<a class="code" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a>(apreq_parse_headers);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#aec4b20f646ea57ad84d6a3391c548838">  155</a></span>&#160;<a class="code" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a>(apreq_parse_urlencoded);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a3bb6d9580fcbaf11cef33072ed3b14cb">  163</a></span>&#160;<a class="code" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a>(apreq_parse_multipart);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a2833122bb6995f056a96df80a9f5a45f">  173</a></span>&#160;<a class="code" href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a>(apreq_parse_generic);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#adda61d873abf1c0ed1857bda405baa49">  182</a></span>&#160;<a class="code" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a>(apreq_hook_apr_xml_parser);</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160; </div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a562191171c5df0a83360435d0fe1a667">  197</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__parser__t.html">apreq_parser_t</a> *) <a class="code" href="apreq__parser_8h.html#a562191171c5df0a83360435d0fe1a667">apreq_parser_make</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__a [...]
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                                                  <a class="codeRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> *ba,</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                                                  <span class="keyword">const</span> <span class="keywordtype">char</span> *content_type,</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;                                                  <a class="code" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a> pfn,</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                                                  apr_size_t brigade_limit,</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                                                  <span class="keyword">const</span> <span class="keywordtype">char</span> *temp_dir,</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                                                  <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> *hook,</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                                                  <span class="keywordtype">void</span> *ctx);</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a3cf15457eea6991b36f47f6139ab163c">  215</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> *) <a class="code" href="apreq__parser_8h.html#a3cf15457eea6991b36f47f6139ab163c">apreq_hook_make</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__po [...]
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                                              <a class="code" href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a> hook,</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                                              <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> *next,</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;                                              <span class="keywordtype">void</span> *ctx);</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160; </div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160; </div>
+<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a97972c08b20917465b745c8b8eec95ed">  227</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq__parser_8h.html#a97972c08b20917465b745c8b8eec95ed">apreq_parser_add_hook</a>( [...]
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;                                                  <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a> *h);</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a73013ecad087f14075d319a4a983dd82">  237</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="code" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a>)<a class="code" href="apreq__parser_8h.html#a73013ecad087f14075d319a4a983dd82">apreq_parser</a>(<span class="keyword">const</span> <spa [...]
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; </div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160; </div>
+<div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a595f05be3d241a5b339fd6ef948bfbc8">  252</a></span>&#160;<a class="code" href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a>(<a class="codeRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) <a class="code" href="apreq__parser_8h.html#a595f05be3d241a5b339fd6ef948bfbc8">apreq_register_parser</a>( [...]
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;                                                  <a class="code" href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a> pfn);</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; </div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160; </div>
+<div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a162c74d59738663d7cb2109ee0b87c0a">  261</a></span>&#160;<a class="code" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a>(apreq_hook_disable_uploads);</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160; </div>
+<div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#ad169b0ac7b7b1a66d3df3ae66c96a16c">  267</a></span>&#160;<a class="code" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a>(apreq_hook_discard_brigade);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160; </div>
+<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="structapreq__hook__find__param__ctx__t.html">  272</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a> {</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>    *name;</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    <a class="code" href="structapreq__param__t.html">apreq_param_t</a> *param;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    <a class="code" href="structapreq__hook__t.html">apreq_hook_t</a>  *prev;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#ab9e03fd28359c5a82771a25d806c2165">  276</a></span>&#160;} <a class="code" href="apreq__parser_8h.html#ab9e03fd28359c5a82771a25d806c2165">apreq_hook_find_param_ctx_t</a>;</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160; </div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160; </div>
+<div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="apreq__parser_8h.html#a5deeed0646b3d61cafe4eb5b6e40b16c">  293</a></span>&#160;<a class="code" href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a>(apreq_hook_find_param);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160; </div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160; </div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;}</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160; </div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* APREQ_PARSERS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="aapreq_8h_html_a02bf89714a74397155a11b9ccb942b0d"><div class="ttname"><a href="apreq_8h.html#a02bf89714a74397155a11b9ccb942b0d">APREQ_DECLARE</a></div><div class="ttdeci">#define APREQ_DECLARE(d)</div><div class="ttdef"><b>Definition:</b> apreq.h:50</div></div>
+<div class="ttc" id="aapreq__param_8h_html"><div class="ttname"><a href="apreq__param_8h.html">apreq_param.h</a></div><div class="ttdoc">Request parsing and parameter API.</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a14d03a414fc4a0663af55fbb1f532bab"><div class="ttname"><a href="apreq__parser_8h.html#a14d03a414fc4a0663af55fbb1f532bab">apreq_hook_run</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_hook_run(struct apreq_hook_t *h, apreq_param_t *param, apr_bucket_brigade *bb)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:138</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a3c00aa3a31daba2c06110d5fc8edf1fe"><div class="ttname"><a href="apreq__parser_8h.html#a3c00aa3a31daba2c06110d5fc8edf1fe">apreq_parser_run</a></div><div class="ttdeci">static APR_INLINE apr_status_t apreq_parser_run(struct apreq_parser_t *psr, apr_table_t *t, apr_bucket_brigade *bb)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:124</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a3cf15457eea6991b36f47f6139ab163c"><div class="ttname"><a href="apreq__parser_8h.html#a3cf15457eea6991b36f47f6139ab163c">apreq_hook_make</a></div><div class="ttdeci">apreq_hook_t * apreq_hook_make(apr_pool_t *pool, apreq_hook_function_t hook, apreq_hook_t *next, void *ctx)</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a562191171c5df0a83360435d0fe1a667"><div class="ttname"><a href="apreq__parser_8h.html#a562191171c5df0a83360435d0fe1a667">apreq_parser_make</a></div><div class="ttdeci">apreq_parser_t * apreq_parser_make(apr_pool_t *pool, apr_bucket_alloc_t *ba, const char *content_type, apreq_parser_function_t pfn, apr_size_t brigade_limit, const char *temp_dir, apreq_hook_t *hook, void *ctx)</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a595f05be3d241a5b339fd6ef948bfbc8"><div class="ttname"><a href="apreq__parser_8h.html#a595f05be3d241a5b339fd6ef948bfbc8">apreq_register_parser</a></div><div class="ttdeci">apr_status_t apreq_register_parser(const char *enctype, apreq_parser_function_t pfn)</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a61c8b1c319752bde3cc35e98247707bf"><div class="ttname"><a href="apreq__parser_8h.html#a61c8b1c319752bde3cc35e98247707bf">APREQ_HOOK_ARGS</a></div><div class="ttdeci">#define APREQ_HOOK_ARGS</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:52</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a6ff78d9001f60363061d0608b52afbe0"><div class="ttname"><a href="apreq__parser_8h.html#a6ff78d9001f60363061d0608b52afbe0">apreq_hook_function_t</a></div><div class="ttdeci">apr_status_t(* apreq_hook_function_t)(APREQ_HOOK_ARGS)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:64</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a73013ecad087f14075d319a4a983dd82"><div class="ttname"><a href="apreq__parser_8h.html#a73013ecad087f14075d319a4a983dd82">apreq_parser</a></div><div class="ttdeci">apreq_parser_function_t apreq_parser(const char *enctype)</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a855c07ea7fc9e240c8620d29eea4a019"><div class="ttname"><a href="apreq__parser_8h.html#a855c07ea7fc9e240c8620d29eea4a019">APREQ_DECLARE_PARSER</a></div><div class="ttdeci">#define APREQ_DECLARE_PARSER(f)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:69</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_a97972c08b20917465b745c8b8eec95ed"><div class="ttname"><a href="apreq__parser_8h.html#a97972c08b20917465b745c8b8eec95ed">apreq_parser_add_hook</a></div><div class="ttdeci">apr_status_t apreq_parser_add_hook(apreq_parser_t *p, apreq_hook_t *h)</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_ab9e03fd28359c5a82771a25d806c2165"><div class="ttname"><a href="apreq__parser_8h.html#ab9e03fd28359c5a82771a25d806c2165">apreq_hook_find_param_ctx_t</a></div><div class="ttdeci">struct apreq_hook_find_param_ctx_t apreq_hook_find_param_ctx_t</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_abaa196498d8cf959e07b4c84d5264f7f"><div class="ttname"><a href="apreq__parser_8h.html#abaa196498d8cf959e07b4c84d5264f7f">APREQ_DECLARE_HOOK</a></div><div class="ttdeci">#define APREQ_DECLARE_HOOK(f)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:75</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_af39d2adfdd09c2fe0c8c6a3c1ea1437e"><div class="ttname"><a href="apreq__parser_8h.html#af39d2adfdd09c2fe0c8c6a3c1ea1437e">APREQ_PARSER_ARGS</a></div><div class="ttdeci">#define APREQ_PARSER_ARGS</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:47</div></div>
+<div class="ttc" id="aapreq__parser_8h_html_affb8f3ab5b29a4e09f3aa3bde8630118"><div class="ttname"><a href="apreq__parser_8h.html#affb8f3ab5b29a4e09f3aa3bde8630118">apreq_parser_function_t</a></div><div class="ttdeci">apr_status_t(* apreq_parser_function_t)(APREQ_PARSER_ARGS)</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:59</div></div>
+<div class="ttc" id="agroup___a_p_r___util___bucket___brigades_html_ga9a30babfeb6e290db124d8f9b69e49e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a></div><div class="ttdeci">struct apr_bucket_alloc_t apr_bucket_alloc_t</div></div>
+<div class="ttc" id="agroup__apr__errno_html_gaf76ee4543247e9fb3f3546203e590a6c"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a></div><div class="ttdeci">int apr_status_t</div></div>
+<div class="ttc" id="agroup__apr__pools_html_gaf137f28edcf9a086cd6bc36c20d7cdfb"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a></div><div class="ttdeci">struct apr_pool_t apr_pool_t</div></div>
+<div class="ttc" id="agroup__apr__tables_html_gad7ea82d6608a4a633fc3775694ab71e4"><div class="ttname"><a href="http://apr.apache.org/docs/apr/1.7/group__apr__tables.html#gad7ea82d6608a4a633fc3775694ab71e4">apr_table_t</a></div><div class="ttdeci">struct apr_table_t apr_table_t</div></div>
+<div class="ttc" id="astructapr__bucket__brigade_html"><div class="ttname"><a href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a></div></div>
+<div class="ttc" id="astructapreq__hook__find__param__ctx__t_html"><div class="ttname"><a href="structapreq__hook__find__param__ctx__t.html">apreq_hook_find_param_ctx_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:272</div></div>
+<div class="ttc" id="astructapreq__hook__t_html"><div class="ttname"><a href="structapreq__hook__t.html">apreq_hook_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:83</div></div>
+<div class="ttc" id="astructapreq__hook__t_html_a09efec3f75c52dbeaeedde059c953f7f"><div class="ttname"><a href="structapreq__hook__t.html#a09efec3f75c52dbeaeedde059c953f7f">apreq_hook_t::next</a></div><div class="ttdeci">apreq_hook_t * next</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:85</div></div>
+<div class="ttc" id="astructapreq__hook__t_html_a2316f4a8fb1cf0a9d5a46866b3229db1"><div class="ttname"><a href="structapreq__hook__t.html#a2316f4a8fb1cf0a9d5a46866b3229db1">apreq_hook_t::pool</a></div><div class="ttdeci">apr_pool_t * pool</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:86</div></div>
+<div class="ttc" id="astructapreq__hook__t_html_a52aeaf774a4d37758b6a3de625913ac5"><div class="ttname"><a href="structapreq__hook__t.html#a52aeaf774a4d37758b6a3de625913ac5">apreq_hook_t::ctx</a></div><div class="ttdeci">void * ctx</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:87</div></div>
+<div class="ttc" id="astructapreq__hook__t_html_a9e61fe14dbacf28528f69de468fb1fc0"><div class="ttname"><a href="structapreq__hook__t.html#a9e61fe14dbacf28528f69de468fb1fc0">apreq_hook_t::hook</a></div><div class="ttdeci">apreq_hook_function_t hook</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:84</div></div>
+<div class="ttc" id="astructapreq__param__t_html"><div class="ttname"><a href="structapreq__param__t.html">apreq_param_t</a></div><div class="ttdef"><b>Definition:</b> apreq_param.h:37</div></div>
+<div class="ttc" id="astructapreq__parser__t_html"><div class="ttname"><a href="structapreq__parser__t.html">apreq_parser_t</a></div><div class="ttdef"><b>Definition:</b> apreq_parser.h:93</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_a203d6cfc8d36892a995a535bfe644e32"><div class="ttname"><a href="structapreq__parser__t.html#a203d6cfc8d36892a995a535bfe644e32">apreq_parser_t::brigade_limit</a></div><div class="ttdeci">apr_size_t brigade_limit</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:103</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_a3acc7764c18c52c33bb64e3ee3375670"><div class="ttname"><a href="structapreq__parser__t.html#a3acc7764c18c52c33bb64e3ee3375670">apreq_parser_t::content_type</a></div><div class="ttdeci">const char * content_type</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:97</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_a8148c125f670a73aedb9b228612b5901"><div class="ttname"><a href="structapreq__parser__t.html#a8148c125f670a73aedb9b228612b5901">apreq_parser_t::pool</a></div><div class="ttdeci">apr_pool_t * pool</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:99</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_a928f16aae17f84fadf06a52a51a6385c"><div class="ttname"><a href="structapreq__parser__t.html#a928f16aae17f84fadf06a52a51a6385c">apreq_parser_t::temp_dir</a></div><div class="ttdeci">const char * temp_dir</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:105</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_ab73f196059129e0ca7926526ebba0a78"><div class="ttname"><a href="structapreq__parser__t.html#ab73f196059129e0ca7926526ebba0a78">apreq_parser_t::ctx</a></div><div class="ttdeci">void * ctx</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:109</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_adc117877c27713515c7617b560efb9a9"><div class="ttname"><a href="structapreq__parser__t.html#adc117877c27713515c7617b560efb9a9">apreq_parser_t::parser</a></div><div class="ttdeci">apreq_parser_function_t parser</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:95</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_add1d982c326705e8da838041a645de33"><div class="ttname"><a href="structapreq__parser__t.html#add1d982c326705e8da838041a645de33">apreq_parser_t::hook</a></div><div class="ttdeci">apreq_hook_t * hook</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:107</div></div>
+<div class="ttc" id="astructapreq__parser__t_html_ae2d1910ffc51047ff2759843d1babbc8"><div class="ttname"><a href="structapreq__parser__t.html#ae2d1910ffc51047ff2759843d1babbc8">apreq_parser_t::bucket_alloc</a></div><div class="ttdeci">apr_bucket_alloc_t * bucket_alloc</div><div class="ttdef"><b>Definition:</b> apreq_parser.h:101</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- HTML footer for doxygen 1.9.1-->
+<!-- start footer part -->
+<hr class="footer"/>
+<table class="footer">
+  <td>
+    <address class="footer_left"><small>
+    Copyright &copy; 2003-2022 <a href="https://www.apache.org">The Apache Software Foundation</a>.<br/>
+    See <a href="apreq_license.html">LICENSE</a>.
+    </small></address>
+  </td>
+  <td>
+    <address class="footer"><small>
+    Generated on Sat Sep 3 2022 17:23:06 for libapreq2 by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+    </small></address>
+  </td>
+</table>
+</body>
+</html>
diff --git a/output/apreq/docs/libapreq2/apreq__util_8h.html b/output/apreq/docs/libapreq2/apreq__util_8h.html
new file mode 100644
index 0000000..ffbac0d
--- /dev/null
+++ b/output/apreq/docs/libapreq2/apreq__util_8h.html
@@ -0,0 +1,1137 @@
+<!-- HTML header for doxygen 1.9.1-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>libapreq2-2.17: include/apreq_util.h File 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="customdoxygen.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" width="100%">
+ <tbody>
+ <tr style="height: 56px;">
+<!--
+  <td id="projectlogo"><img alt="Logo" src="feather.png"/></td>
+-->
+<!--
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">libapreq2
+   < !--BEGIN PROJECT_NUMBER-- >&#160;<span id="projectnumber">2.17</span>< !--END PROJECT_NUMBER-- >
+   </div>
+   < !--BEGIN PROJECT_BRIEF-- ><div id="projectbrief"></div>< !--END PROJECT_BRIEF-- >
+  </td>
+-->
+  <td>
+    <div id="page-header">
+      <p class="menu">
+        <a href="https://www.apache.org/">Apache Software Foundation</a> &gt;
+        <a href="https://httpd.apache.org">HTTP Server Project</a> &gt;
+        <a href="https://httpd.apache.org/apreq/">Request Library Subproject</a>
+      </p>
+      <p class="apache">Apache HTTP Server Request Library - 2.17</p>
+      <img alt="" src="feather.png" />
+    </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">apreq_util.h File Reference<div class="ingroups"><a class="el" href="group__libapreq2.html">Apache Request Library</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Utility functions for apreq.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/apr__file__io_8h.html">apr_file_io.h</a>&quot;</code><br />
+<code>#include &quot;<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html">apr_buckets.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="apreq_8h_source.html">apreq.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for apreq_util.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="apreq__util_8h__incl.png" border="0" usemap="#ainclude_2apreq__util_8h" alt=""/></div>
+<map name="ainclude_2apreq__util_8h" id="ainclude_2apreq__util_8h">
+<area shape="rect" title="Utility functions for apreq." alt="" coords="111,5,262,32"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__file__io_8h.html.html" title=" " alt="" coords="5,80,107,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr-util/1.6/apr__buckets_8h.html.html" title=" " alt="" coords="131,80,243,107"/>
+<area shape="rect" href="apreq_8h.html" title="Main header file..." alt="" coords="266,80,337,107"/>
+<area shape="rect" target="_parent" href="http://apr.apache.org/docs/apr/1.7/apr__tables_8h.html.html" title=" " alt="" coords="193,155,295,181"/>
+<area shape="rect" title=" " alt="" coords="320,155,395,181"/>
+</map>
+</div>
+</div>
+<p><a href="apreq__util_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1aa668dc806fce4bd0fef348d1601930"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a1aa668dc806fce4bd0fef348d1601930">apreq_join</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p, const char *sep, const <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/structapr__array__hea [...]
+<tr class="separator:a1aa668dc806fce4bd0fef348d1601930"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac72c51ffe478faa804eaea5f68276dd8"><td class="memItemLeft" align="right" valign="top">apr_ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#ac72c51ffe478faa804eaea5f68276dd8">apreq_index</a> (const char *hay, apr_size_t hlen, const char *ndl, apr_size_t nlen, const <a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a> type)</td></tr>
+<tr class="separator:ac72c51ffe478faa804eaea5f68276dd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4aa9bed839bb576444f464666e0bd85"><td class="memItemLeft" align="right" valign="top">apr_size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#ab4aa9bed839bb576444f464666e0bd85">apreq_quote</a> (char *dest, const char *src, const apr_size_t slen)</td></tr>
+<tr class="separator:ab4aa9bed839bb576444f464666e0bd85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afef8b7af9d36b0f7ec24e9d0f64a29a7"><td class="memItemLeft" align="right" valign="top">apr_size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#afef8b7af9d36b0f7ec24e9d0f64a29a7">apreq_quote_once</a> (char *dest, const char *src, const apr_size_t slen)</td></tr>
+<tr class="separator:afef8b7af9d36b0f7ec24e9d0f64a29a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a034ccdfdcf751be6c0f8c2a1d30c2ae6"><td class="memItemLeft" align="right" valign="top">apr_size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a034ccdfdcf751be6c0f8c2a1d30c2ae6">apreq_encode</a> (char *dest, const char *src, const apr_size_t slen)</td></tr>
+<tr class="separator:a034ccdfdcf751be6c0f8c2a1d30c2ae6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a801aa204656988ff4aa32cec6dd80e5a"><td class="memItemLeft" align="right" valign="top">apr_size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a801aa204656988ff4aa32cec6dd80e5a">apreq_cp1252_to_utf8</a> (char *dest, const char *src, apr_size_t slen)</td></tr>
+<tr class="separator:a801aa204656988ff4aa32cec6dd80e5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae11e0b3e2304a2e8c30aaa464ea78037"><td class="memItemLeft" align="right" valign="top"><a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#ae11e0b3e2304a2e8c30aaa464ea78037">apreq_charset_divine</a> (const char *src, apr_size_t slen)</td></tr>
+<tr class="separator:ae11e0b3e2304a2e8c30aaa464ea78037"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c1d46b8c0e7991ae1ced0178c2f4738"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a3c1d46b8c0e7991ae1ced0178c2f4738">apreq_decode</a> (char *dest, apr_size_t *dlen, const char *src, apr_size_t slen)</td></tr>
+<tr class="separator:a3c1d46b8c0e7991ae1ced0178c2f4738"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13a090a30a4d05353caabab92a67179d"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a13a090a30a4d05353caabab92a67179d">apreq_decodev</a> (char *dest, apr_size_t *dlen, struct iovec *v, int nelts)</td></tr>
+<tr class="separator:a13a090a30a4d05353caabab92a67179d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a785be2ceae273b0a7b2ffda223b2ebae"><td class="memItemLeft" align="right" valign="top">static APR_INLINE char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a785be2ceae273b0a7b2ffda223b2ebae">apreq_escape</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p, const char *src, const apr_size_t slen)</td></tr>
+<tr class="separator:a785be2ceae273b0a7b2ffda223b2ebae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a979c0af9322189581bde4644eec5fd41"><td class="memItemLeft" align="right" valign="top">static APR_INLINE apr_ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a979c0af9322189581bde4644eec5fd41">apreq_unescape</a> (char *str)</td></tr>
+<tr class="separator:a979c0af9322189581bde4644eec5fd41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69acb9425572cb8f694d49277160b1f7"><td class="memItemLeft" align="right" valign="top">apr_int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a69acb9425572cb8f694d49277160b1f7">apreq_atoi64f</a> (const char *s)</td></tr>
+<tr class="separator:a69acb9425572cb8f694d49277160b1f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e838a92724aa7d9be0b978dc5c4e50c"><td class="memItemLeft" align="right" valign="top">apr_int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a4e838a92724aa7d9be0b978dc5c4e50c">apreq_atoi64t</a> (const char *s)</td></tr>
+<tr class="separator:a4e838a92724aa7d9be0b978dc5c4e50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bbe5ee2d1537c6a9f30d0fed9f5f1e1"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a3bbe5ee2d1537c6a9f30d0fed9f5f1e1">apreq_brigade_fwrite</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea [...]
+<tr class="separator:a3bbe5ee2d1537c6a9f30d0fed9f5f1e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab266a81c528de92654eb37f9890c4a7d"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#ab266a81c528de92654eb37f9890c4a7d">apreq_file_mktemp</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea3c7 [...]
+<tr class="separator:ab266a81c528de92654eb37f9890c4a7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91f3144692934b2daf54fb3c9ca7b180"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a91f3144692934b2daf54fb3c9ca7b180">apreq_brigade_setaside</a> (<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket_ [...]
+<tr class="separator:a91f3144692934b2daf54fb3c9ca7b180"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4def9e77622cf22cfa427e7fbf2ac45"><td class="memItemLeft" align="right" valign="top">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#ab4def9e77622cf22cfa427e7fbf2ac45">apreq_brigade_copy</a> (<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__bri [...]
+<tr class="separator:ab4def9e77622cf22cfa427e7fbf2ac45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa23561a0d169b50454a815926ccc0ba5"><td class="memItemLeft" align="right" valign="top">static APR_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#aa23561a0d169b50454a815926ccc0ba5">apreq_brigade_move</a> (<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *d, <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.h [...]
+<tr class="separator:aa23561a0d169b50454a815926ccc0ba5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8195b6a32954928a6088e7cea077dd75"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a8195b6a32954928a6088e7cea077dd75">apreq_header_attribute</a> (const char *hdr, const char *name, const apr_size_t nlen, const char **val, apr_size_t *vlen)</td></tr>
+<tr class="separator:a8195b6a32954928a6088e7cea077dd75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ddf563c9902474bdedbf014e24aafc8"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#a4ddf563c9902474bdedbf014e24aafc8">apreq_brigade_concat</a> (<a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd [...]
+<tr class="separator:a4ddf563c9902474bdedbf014e24aafc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec0de2141b6b742a1468667eb8f8158e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="apreq__util_8h.html#aec0de2141b6b742a1468667eb8f8158e">apreq_brigade_spoolfile</a> (<a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html" [...]
+<tr class="separator:aec0de2141b6b742a1468667eb8f8158e"><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>Utility functions for apreq. </p>
+<p>This header contains useful functions for creating new parsers, hooks or modules. It includes</p>
+<ul>
+<li>string &lt;-&gt; array converters</li>
+<li>substring search functions</li>
+<li>simple encoders &amp; decoders for urlencoded strings</li>
+<li>simple time, date, &amp; file-size converters </li>
+</ul>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="a69acb9425572cb8f694d49277160b1f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69acb9425572cb8f694d49277160b1f7">&#9670;&nbsp;</a></span>apreq_atoi64f()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">apr_int64_t apreq_atoi64f </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Converts file sizes (KMG) to bytes</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">s</td><td>file size matching m/^\d+[KMG]b?$/i</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>64-bit integer representation of s.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>What happens when s is malformed? Should this return an unsigned value instead? </dd></dl>
+
+</div>
+</div>
+<a id="a4e838a92724aa7d9be0b978dc5c4e50c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e838a92724aa7d9be0b978dc5c4e50c">&#9670;&nbsp;</a></span>apreq_atoi64t()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">apr_int64_t apreq_atoi64t </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Converts time strings (YMDhms) to seconds</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">s</td><td>time string matching m/^\+?\d+[YMDhms]$/</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>64-bit integer representation of s as seconds.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>What happens when s is malformed? Should this return an unsigned value instead? </dd></dl>
+
+</div>
+</div>
+<a id="a4ddf563c9902474bdedbf014e24aafc8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ddf563c9902474bdedbf014e24aafc8">&#9670;&nbsp;</a></span>apreq_brigade_concat()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_concat </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>temp_dir</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>brigade_limit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>out</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>in</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Concatenates the brigades, spooling large brigades into a tempfile (APREQ_SPOOL) bucket.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pool</td><td>Pool for creating a tempfile bucket. </td></tr>
+    <tr><td class="paramname">temp_dir</td><td>Directory for tempfile creation. </td></tr>
+    <tr><td class="paramname">brigade_limit</td><td>If out's length would exceed this value, the appended buckets get written to a tempfile. </td></tr>
+    <tr><td class="paramname">out</td><td>Resulting brigade. </td></tr>
+    <tr><td class="paramname">in</td><td>Brigade to append.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+Error status code resulting from either <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga65075839e31fd85e2c80717f4e9e0461">apr_brigade_length()</a>, <a class="el" href="apreq__util_8h.html#ab266a81c528de92654eb37f9890c4a7d">apreq_file_mktemp()</a>, <a class="el" href="apreq__util_8h.html#a3bbe5ee2d1537c6a9f30d0fed9f5f1e1">apreq_brigade_fwrite()</a>, or <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file_ [...]
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Flesh out these error codes, making them as explicit as possible. </dd></dl>
+
+</div>
+</div>
+<a id="ab4def9e77622cf22cfa427e7fbf2ac45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4def9e77622cf22cfa427e7fbf2ac45">&#9670;&nbsp;</a></span>apreq_brigade_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_copy </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>d</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>s</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Copy a brigade.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>(destination) Copied buckets are appended to this brigade. </td></tr>
+    <tr><td class="paramname">s</td><td>(source) Brigade to copy from.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+Error status code from an unsuccessful <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#gab33cc08b7f064d06397f312e427279c3">apr_bucket_copy()</a>.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>s == d produces Undefined Behavior. </dd></dl>
+
+</div>
+</div>
+<a id="a3bbe5ee2d1537c6a9f30d0fed9f5f1e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bbe5ee2d1537c6a9f30d0fed9f5f1e1">&#9670;&nbsp;</a></span>apreq_brigade_fwrite()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_fwrite </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
+          <td class="paramname"><em>f</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_off_t *&#160;</td>
+          <td class="paramname"><em>wlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>bb</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Writes brigade to a file.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">f</td><td>File that gets the brigade. </td></tr>
+    <tr><td class="paramname">wlen</td><td>On a successful return, wlen holds the length of the brigade, which is the amount of data written to the file. </td></tr>
+    <tr><td class="paramname">bb</td><td>Bucket brigade.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+Error status code from either an unsuccessful <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#gae44ae938c6c60e148430fdb098dcf28f">apr_bucket_read()</a>, or a failed <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gacc7924dd7af1c2948b5b2ea6e5f77984">apr_file_writev()</a>.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>This function leaks a bucket brigade into bb-&gt;p whenever the final bucket in bb is a spool bucket. </dd></dl>
+
+</div>
+</div>
+<a id="aa23561a0d169b50454a815926ccc0ba5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa23561a0d169b50454a815926ccc0ba5">&#9670;&nbsp;</a></span>apreq_brigade_move()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE void apreq_brigade_move </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>d</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>s</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket.html">apr_bucket</a> *&#160;</td>
+          <td class="paramname"><em>e</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Move the front of a brigade.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>(destination) Append buckets to this brigade. </td></tr>
+    <tr><td class="paramname">s</td><td>(source) Brigade to take buckets from. </td></tr>
+    <tr><td class="paramname">e</td><td>First bucket of s after the move. All buckets before e are appended to d.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section remark"><dt>Remarks</dt><dd>This moves all buckets when e == <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#ga858da66dccab1e063415678bb115788a">APR_BRIGADE_SENTINEL(s)</a>. </dd></dl>
+
+</div>
+</div>
+<a id="a91f3144692934b2daf54fb3c9ca7b180"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91f3144692934b2daf54fb3c9ca7b180">&#9670;&nbsp;</a></span>apreq_brigade_setaside()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_brigade_setaside </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>bb</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Set aside all buckets in the brigade.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">bb</td><td>Brigade. </td></tr>
+    <tr><td class="paramname">p</td><td>Setaside buckets into this pool. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+Error status code from an unsuccessful <a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/group___a_p_r___util___bucket___brigades.html#gab00941ffd472982693eb415a964de7af">apr_bucket_setaside()</a>. </dd></dl>
+
+</div>
+</div>
+<a id="aec0de2141b6b742a1468667eb8f8158e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec0de2141b6b742a1468667eb8f8158e">&#9670;&nbsp;</a></span>apreq_brigade_spoolfile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a>* apreq_brigade_spoolfile </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr-util/1.6/structapr__bucket__brigade.html">apr_bucket_brigade</a> *&#160;</td>
+          <td class="paramname"><em>bb</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Determines the spool file used by the brigade. Returns NULL if the brigade is not spooled in a file (does not use an APREQ_SPOOL bucket).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">bb</td><td>the bucket brigade </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the spool file, or NULL. </dd></dl>
+
+</div>
+</div>
+<a id="ae11e0b3e2304a2e8c30aaa464ea78037"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae11e0b3e2304a2e8c30aaa464ea78037">&#9670;&nbsp;</a></span>apreq_charset_divine()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="apreq_8h.html#a6607dfa756796989c15014870b48c8cd">apreq_charset_t</a> apreq_charset_divine </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>src</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>slen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Heuristically determine the charset of a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">src</td><td>String to scan. </td></tr>
+    <tr><td class="paramname">slen</td><td>Length of string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APREQ_CHARSET_ASCII if the string contains only 7-bit chars; </dd>
+<dd>
+APREQ_CHARSET_UTF8 if the string is a valid utf8 byte sequence; </dd>
+<dd>
+APREQ_CHARSET_LATIN1 if the string has no control chars; </dd>
+<dd>
+APREQ_CHARSET_CP1252 if the string has control chars. </dd></dl>
+
+</div>
+</div>
+<a id="a801aa204656988ff4aa32cec6dd80e5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a801aa204656988ff4aa32cec6dd80e5a">&#9670;&nbsp;</a></span>apreq_cp1252_to_utf8()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">apr_size_t apreq_cp1252_to_utf8 </td>
+          <td>(</td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>dest</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>src</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>slen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Convert a string from cp1252 to utf8. Caller must ensure it is large enough to hold the encoded string and trailing '\0'.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dest</td><td>Location of utf8-encoded result string. Caller must ensure it is large enough to hold the encoded string and trailing '\0'. </td></tr>
+    <tr><td class="paramname">src</td><td>Original string. </td></tr>
+    <tr><td class="paramname">slen</td><td>Length of original string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>length of utf8-encoded string in dest; does not exceed 3 * slen. </dd></dl>
+
+</div>
+</div>
+<a id="a3c1d46b8c0e7991ae1ced0178c2f4738"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c1d46b8c0e7991ae1ced0178c2f4738">&#9670;&nbsp;</a></span>apreq_decode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_decode </td>
+          <td>(</td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>dest</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t *&#160;</td>
+          <td class="paramname"><em>dlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>src</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>slen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Url-decodes a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dest</td><td>Location of url-encoded result string. Caller must ensure dest is large enough to hold the encoded string and trailing null character. </td></tr>
+    <tr><td class="paramname">dlen</td><td>points to resultant length of url-decoded string in dest </td></tr>
+    <tr><td class="paramname">src</td><td>Original string. </td></tr>
+    <tr><td class="paramname">slen</td><td>Length of original string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+APR_INCOMPLETE if the string ends in the middle of an escape sequence. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> or <a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a> on malformed input.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>In the non-success case, dlen will be set to include the last successfully decoded value. This function decodes %uXXXX into a utf8 (wide) character, following ECMA-262 (the Javascript spec) Section B.2.1. </dd></dl>
+
+</div>
+</div>
+<a id="a13a090a30a4d05353caabab92a67179d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13a090a30a4d05353caabab92a67179d">&#9670;&nbsp;</a></span>apreq_decodev()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_decodev </td>
+          <td>(</td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>dest</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t *&#160;</td>
+          <td class="paramname"><em>dlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct iovec *&#160;</td>
+          <td class="paramname"><em>v</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>nelts</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Url-decodes an iovec array.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dest</td><td>Location of url-encoded result string. Caller must ensure dest is large enough to hold the encoded string and trailing null character. </td></tr>
+    <tr><td class="paramname">dlen</td><td>Resultant length of dest. </td></tr>
+    <tr><td class="paramname">v</td><td>Array of iovecs that represent the source string </td></tr>
+    <tr><td class="paramname">nelts</td><td>Number of iovecs in the array.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+APR_INCOMPLETE if the iovec ends in the middle of an escape sequence. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> or <a class="el" href="apreq__error_8h.html#a04b6a01738a1ee7fd1ecc79d256e721f">APREQ_ERROR_BADCHAR</a> on malformed input.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>In the non-APR_SUCCESS case, dlen will be set to include the last successfully decoded value. This function decodes %uXXXX into a utf8 (wide) character, following ECMA-262 (the Javascript spec) Section B.2.1. </dd></dl>
+
+</div>
+</div>
+<a id="a034ccdfdcf751be6c0f8c2a1d30c2ae6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a034ccdfdcf751be6c0f8c2a1d30c2ae6">&#9670;&nbsp;</a></span>apreq_encode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">apr_size_t apreq_encode </td>
+          <td>(</td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>dest</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>src</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>slen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Url-encodes a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dest</td><td>Location of url-encoded result string. Caller must ensure it is large enough to hold the encoded string and trailing '\0'. </td></tr>
+    <tr><td class="paramname">src</td><td>Original string. </td></tr>
+    <tr><td class="paramname">slen</td><td>Length of original string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>length of url-encoded string in dest; does not exceed 3 * slen. </dd></dl>
+
+</div>
+</div>
+<a id="a785be2ceae273b0a7b2ffda223b2ebae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a785be2ceae273b0a7b2ffda223b2ebae">&#9670;&nbsp;</a></span>apreq_escape()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static APR_INLINE char* apreq_escape </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>src</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>slen</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">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Returns an url-encoded copy of a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">p</td><td>Pool used to allocate the return value. </td></tr>
+    <tr><td class="paramname">src</td><td>Original string. </td></tr>
+    <tr><td class="paramname">slen</td><td>Length of original string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The url-encoded string.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Use this function insead of apreq_encode if its caller might otherwise overflow dest. </dd></dl>
+
+</div>
+</div>
+<a id="ab266a81c528de92654eb37f9890c4a7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab266a81c528de92654eb37f9890c4a7d">&#9670;&nbsp;</a></span>apreq_file_mktemp()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_file_mktemp </td>
+          <td>(</td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
+          <td class="paramname"><em>fp</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
+          <td class="paramname"><em>pool</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>path</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Makes a temporary file.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">fp</td><td>Points to the temporary apr_file_t on success. </td></tr>
+    <tr><td class="paramname">pool</td><td>Pool to associate with the temp file. When the pool is destroyed, the temp file will be closed and deleted. </td></tr>
+    <tr><td class="paramname">path</td><td>The base directory which will contain the temp file. If param == NULL, the directory will be selected via tempnam(). See the tempnam manpage for details.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+Error status code from unsuccessful <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__filepath.html#gae89fd67108f10dc5044b6d062dde0138">apr_filepath_merge()</a>, or a failed <a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__file__io.html#gac34981f9ff41f85e4377a6dde185fe52">apr_file_mktemp()</a>. </dd></dl>
+
+</div>
+</div>
+<a id="a8195b6a32954928a6088e7cea077dd75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8195b6a32954928a6088e7cea077dd75">&#9670;&nbsp;</a></span>apreq_header_attribute()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="elRef" href="http://apr.apache.org/docs/apr/1.7/group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apreq_header_attribute </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>hdr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const apr_size_t&#160;</td>
+          <td class="paramname"><em>nlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char **&#160;</td>
+          <td class="paramname"><em>val</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t *&#160;</td>
+          <td class="paramname"><em>vlen</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Search a header string for the value of a particular named attribute.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">hdr</td><td>Header string to scan. </td></tr>
+    <tr><td class="paramname">name</td><td>Name of attribute to search for. </td></tr>
+    <tr><td class="paramname">nlen</td><td>Length of name. </td></tr>
+    <tr><td class="paramname">val</td><td>Location of (first) matching value. </td></tr>
+    <tr><td class="paramname">vlen</td><td>Length of matching value.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#affdf9393e5c9277aeae3ea8d2ecf55fa">APREQ_ERROR_NOATTR</a> if the attribute is not found. </dd>
+<dd>
+<a class="el" href="apreq__error_8h.html#a73a69e21acc2cf849310a421ab43d2ba">APREQ_ERROR_BADSEQ</a> if an unpaired quote mark was detected. </dd></dl>
+
+</div>
+</div>
+<a id="ac72c51ffe478faa804eaea5f68276dd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac72c51ffe478faa804eaea5f68276dd8">&#9670;&nbsp;</a></span>apreq_index()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">apr_ssize_t apreq_index </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>hay</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>hlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>ndl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">apr_size_t&#160;</td>
+          <td class="paramname"><em>nlen</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="apreq_8h.html#a590d7bfd9cd294f652d388c4f37fc8d5">apreq_match_t</a>&#160;</td>
+          <td class="paramname"><em>type</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
... 142372 lines suppressed ...
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.