mirror of
https://github.com/seigler/dash-docs
synced 2025-07-27 17:56:16 +00:00
150 lines
36 KiB
HTML
150 lines
36 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.14"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>Dash Core: src/httpserver.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="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
|
$(document).ready(initResizable);
|
|
/* @license-end */</script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectlogo"><img alt="Logo" src="bitcoin_logo_doxygen.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">Dash Core
|
|
 <span id="projectnumber">0.12.2.1</span>
|
|
</div>
|
|
<div id="projectbrief">P2P Digital Currency</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.14 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
/* @license-end */
|
|
</script>
|
|
<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&dn=gpl-2.0.txt GPL-v2 */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search');
|
|
$(document).ready(function() { init_search(); });
|
|
});
|
|
/* @license-end */</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
|
$(document).ready(function(){initNavTree('httpserver_8h_source.html','');});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle">
|
|
<div class="title">httpserver.h</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a href="httpserver_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> <span class="comment">// Copyright (c) 2015 The Bitcoin Core developers</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// Distributed under the MIT software license, see the accompanying</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// file COPYING or http://www.opensource.org/licenses/mit-license.php.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> </div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="preprocessor">#ifndef BITCOIN_HTTPSERVER_H</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="preprocessor">#define BITCOIN_HTTPSERVER_H</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor">#include <stdint.h></span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="preprocessor">#include <boost/thread.hpp></span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include <boost/scoped_ptr.hpp></span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include <boost/function.hpp></span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> </div><div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="httpserver_8h.html#a96eaf769bd6c4c928f200745a0ce39c5"> 14</a></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="httpserver_8h.html#a96eaf769bd6c4c928f200745a0ce39c5">DEFAULT_HTTP_THREADS</a>=4;</div><div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="httpserver_8h.html#a4d5c0ccae28985ddc5dcba9926977edd"> 15</a></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="httpserver_8h.html#a4d5c0ccae28985ddc5dcba9926977edd">DEFAULT_HTTP_WORKQUEUE</a>=16;</div><div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="httpserver_8h.html#a0d78d7c970f78c61032b6a5b25e91fe3"> 16</a></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="httpserver_8h.html#a0d78d7c970f78c61032b6a5b25e91fe3">DEFAULT_HTTP_SERVER_TIMEOUT</a>=30;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">struct </span>evhttp_request;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="keyword">struct </span>event_base;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">class </span><a class="code" href="classCService.html">CService</a>;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="keyword">class </span><a class="code" href="classHTTPRequest.html">HTTPRequest</a>;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="keywordtype">bool</span> <a class="code" href="httpserver_8h.html#a6808b08438e29d81ba310ebded4ba648">InitHTTPServer</a>();</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">bool</span> <a class="code" href="httpserver_8h.html#a9e82ea63cb4e1de19d8acdfbb654f8b2">StartHTTPServer</a>();</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> <a class="code" href="httpserver_8h.html#a0a02b6576090c9fde2eed21b9aa7dc0c">InterruptHTTPServer</a>();</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">void</span> <a class="code" href="httpserver_8h.html#ad95d08d62c15b43d52fdba7b7ecaa0aa">StopHTTPServer</a>();</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="httpserver_8h.html#a90b0a9a188f591e83851dad2b701088f"> 38</a></span> <span class="keyword">typedef</span> boost::function<void(HTTPRequest* req, const std::string &)> <a class="code" href="httpserver_8h.html#a90b0a9a188f591e83851dad2b701088f">HTTPRequestHandler</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">void</span> <a class="code" href="httpserver_8h.html#a43a4c24762a6af819e364b55820323ed">RegisterHTTPHandler</a>(<span class="keyword">const</span> std::string &<a class="code" href="rest_8cpp.html#a5b41c5ae4505891e6c53e26df197e02b">prefix</a>, <span class="keywordtype">bool</span> exactMatch, <span class="keyword">const</span> <a class="code" href="httpserver_8h.html#a90b0a9a188f591e83851dad2b701088f">HTTPRequestHandler</a> &<a class="code" href="rest_8cpp.html#adb9b9c46c5f6a9f59301a2b7313a96d8">handler</a>);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">void</span> <a class="code" href="httpserver_8h.html#a42d2567faa003c410a310a9c4e36ebdc">UnregisterHTTPHandler</a>(<span class="keyword">const</span> std::string &<a class="code" href="rest_8cpp.html#a5b41c5ae4505891e6c53e26df197e02b">prefix</a>, <span class="keywordtype">bool</span> exactMatch);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">struct </span>event_base* <a class="code" href="httpserver_8h.html#a4843a79312705c8a4188de88cebb5a2d">EventBase</a>();</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classHTTPRequest.html"> 55</a></span> <span class="keyword">class </span><a class="code" href="classHTTPRequest.html">HTTPRequest</a></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#aa8b4243a4a15afaa00b3b47947fcfea3"> 58</a></span>  <span class="keyword">struct </span>evhttp_request* <a class="code" href="classHTTPRequest.html#aa8b4243a4a15afaa00b3b47947fcfea3">req</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1267b5e169b279bdbce5ea9c90f04483"> 59</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classHTTPRequest.html#a1267b5e169b279bdbce5ea9c90f04483">replySent</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <a class="code" href="classHTTPRequest.html#aab94919073c53e2302a653cb0c91a7d5">HTTPRequest</a>(<span class="keyword">struct</span> evhttp_request* <a class="code" href="classHTTPRequest.html#aa8b4243a4a15afaa00b3b47947fcfea3">req</a>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="classHTTPRequest.html#ab5864e916f43eddde9d2ccb69e0f1385">~HTTPRequest</a>();</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aa"> 65</a></span>  <span class="keyword">enum</span> <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aa">RequestMethod</a> {</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaae2331c29519b3237f4926d5be5f7c7a4"> 66</a></span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaae2331c29519b3237f4926d5be5f7c7a4">UNKNOWN</a>,</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa066288ebc3abf9337c20f7d69a7cb77f"> 67</a></span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa066288ebc3abf9337c20f7d69a7cb77f">GET</a>,</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaac8de8b5303c92a9f833e9e68c18d02d9"> 68</a></span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaac8de8b5303c92a9f833e9e68c18d02d9">POST</a>,</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaaed9ed095188e3bc8f7235e41972afbe9"> 69</a></span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaaed9ed095188e3bc8f7235e41972afbe9">HEAD</a>,</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa86909f8f99c1272199518e4eb860e175"> 70</a></span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa86909f8f99c1272199518e4eb860e175">PUT</a></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  };</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  std::string <a class="code" href="classHTTPRequest.html#a53a138e588e5326d6c87bb84029f43e9">GetURI</a>();</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="code" href="classCService.html">CService</a> <a class="code" href="classHTTPRequest.html#a73ba24bc6528fd1aa5024c10330bfdfb">GetPeer</a>();</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <a class="code" href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aa">RequestMethod</a> <a class="code" href="classHTTPRequest.html#afc79079a153c70240914617a9dde075d">GetRequestMethod</a>();</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  std::pair<bool, std::string> <a class="code" href="classHTTPRequest.html#a7d31adee3f9e93edea6d9a5bd4454aae">GetHeader</a>(<span class="keyword">const</span> std::string& hdr);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  std::string <a class="code" href="classHTTPRequest.html#ad0dc256f16fe6d13022958d64b7a22a0">ReadBody</a>();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordtype">void</span> <a class="code" href="classHTTPRequest.html#a910ea3b361715e036dc74eb75e92fb62">WriteHeader</a>(<span class="keyword">const</span> std::string& hdr, <span class="keyword">const</span> std::string& value);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keywordtype">void</span> <a class="code" href="classHTTPRequest.html#a43767ec5daf58e5a13a740ed56ddca3f">WriteReply</a>(<span class="keywordtype">int</span> nStatus, <span class="keyword">const</span> std::string& strReply = <span class="stringliteral">""</span>);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> };</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="classHTTPClosure.html"> 119</a></span> <span class="keyword">class </span><a class="code" href="classHTTPClosure.html">HTTPClosure</a></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classHTTPClosure.html#abbce5d429a7fe2b593919550e50bc225">operator()</a>() = 0;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classHTTPClosure.html#af3cc5a621020ea4ddef1170dead00be4"> 123</a></span>  <span class="keyword">virtual</span> <a class="code" href="classHTTPClosure.html#af3cc5a621020ea4ddef1170dead00be4">~HTTPClosure</a>() {}</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> };</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classHTTPEvent.html"> 128</a></span> <span class="keyword">class </span><a class="code" href="classHTTPEvent.html">HTTPEvent</a></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <a class="code" href="classHTTPEvent.html#ad7598146077dac606ccf4c9948040508">HTTPEvent</a>(<span class="keyword">struct</span> event_base* <a class="code" href="torcontrol_8cpp.html#ab1a154f7530a81e9dd1d63fc6b98a5c7">base</a>, <span class="keywordtype">bool</span> <a class="code" href="classHTTPEvent.html#a226496f0af00e98c301e92cd8bf7ca9b">deleteWhenTriggered</a>, <span class="keyword">const</span> boost::function<<span class="keywordtype">void</span>(<span class="keywordtype">void</span>)>& <a class="code" href="classHTTPEvent.html#a61e7b99b180ddd304a524c2a27063c4c">handler</a>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <a class="code" href="classHTTPEvent.html#a3f216c67f9c4732bac686744a9c527d7">~HTTPEvent</a>();</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordtype">void</span> <a class="code" href="classHTTPEvent.html#ad3e2ab005035c3ac678b29095ac0da87">trigger</a>(<span class="keyword">struct</span> timeval* tv);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="classHTTPEvent.html#a226496f0af00e98c301e92cd8bf7ca9b"> 143</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classHTTPEvent.html#a226496f0af00e98c301e92cd8bf7ca9b">deleteWhenTriggered</a>;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classHTTPEvent.html#a61e7b99b180ddd304a524c2a27063c4c"> 144</a></span>  boost::function<void(void)> <a class="code" href="classHTTPEvent.html#a61e7b99b180ddd304a524c2a27063c4c">handler</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classHTTPEvent.html#a1b00e03074314686bf8b01979f938a45"> 146</a></span>  <span class="keyword">struct </span>event* <a class="code" href="classHTTPEvent.html#a1b00e03074314686bf8b01979f938a45">ev</a>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> };</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor">#endif // BITCOIN_HTTPSERVER_H</span></div><div class="ttc" id="rest_8cpp_html_adb9b9c46c5f6a9f59301a2b7313a96d8"><div class="ttname"><a href="rest_8cpp.html#adb9b9c46c5f6a9f59301a2b7313a96d8">handler</a></div><div class="ttdeci">bool(* handler)(HTTPRequest *req, const std::string &strReq)</div><div class="ttdef"><b>Definition:</b> <a href="rest_8cpp_source.html#l00601">rest.cpp:601</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a0d78d7c970f78c61032b6a5b25e91fe3"><div class="ttname"><a href="httpserver_8h.html#a0d78d7c970f78c61032b6a5b25e91fe3">DEFAULT_HTTP_SERVER_TIMEOUT</a></div><div class="ttdeci">static const int DEFAULT_HTTP_SERVER_TIMEOUT</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00016">httpserver.h:16</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a6808b08438e29d81ba310ebded4ba648"><div class="ttname"><a href="httpserver_8h.html#a6808b08438e29d81ba310ebded4ba648">InitHTTPServer</a></div><div class="ttdeci">bool InitHTTPServer()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00384">httpserver.cpp:384</a></div></div>
|
|
<div class="ttc" id="classHTTPClosure_html_af3cc5a621020ea4ddef1170dead00be4"><div class="ttname"><a href="classHTTPClosure.html#af3cc5a621020ea4ddef1170dead00be4">HTTPClosure::~HTTPClosure</a></div><div class="ttdeci">virtual ~HTTPClosure()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00123">httpserver.h:123</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a4d5c0ccae28985ddc5dcba9926977edd"><div class="ttname"><a href="httpserver_8h.html#a4d5c0ccae28985ddc5dcba9926977edd">DEFAULT_HTTP_WORKQUEUE</a></div><div class="ttdeci">static const int DEFAULT_HTTP_WORKQUEUE</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00015">httpserver.h:15</a></div></div>
|
|
<div class="ttc" id="torcontrol_8cpp_html_ab1a154f7530a81e9dd1d63fc6b98a5c7"><div class="ttname"><a href="torcontrol_8cpp.html#ab1a154f7530a81e9dd1d63fc6b98a5c7">base</a></div><div class="ttdeci">struct event_base * base</div><div class="ttdef"><b>Definition:</b> <a href="torcontrol_8cpp_source.html#l00659">torcontrol.cpp:659</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1267b5e169b279bdbce5ea9c90f04483"><div class="ttname"><a href="classHTTPRequest.html#a1267b5e169b279bdbce5ea9c90f04483">HTTPRequest::replySent</a></div><div class="ttdeci">bool replySent</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00059">httpserver.h:59</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_ad7598146077dac606ccf4c9948040508"><div class="ttname"><a href="classHTTPEvent.html#ad7598146077dac606ccf4c9948040508">HTTPEvent::HTTPEvent</a></div><div class="ttdeci">HTTPEvent(struct event_base *base, bool deleteWhenTriggered, const boost::function< void(void)> &handler)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00537">httpserver.cpp:537</a></div></div>
|
|
<div class="ttc" id="rest_8cpp_html_a5b41c5ae4505891e6c53e26df197e02b"><div class="ttname"><a href="rest_8cpp.html#a5b41c5ae4505891e6c53e26df197e02b">prefix</a></div><div class="ttdeci">const char * prefix</div><div class="ttdef"><b>Definition:</b> <a href="rest_8cpp_source.html#l00600">rest.cpp:600</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_ad0dc256f16fe6d13022958d64b7a22a0"><div class="ttname"><a href="classHTTPRequest.html#ad0dc256f16fe6d13022958d64b7a22a0">HTTPRequest::ReadBody</a></div><div class="ttdeci">std::string ReadBody()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00579">httpserver.cpp:579</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aaa066288ebc3abf9337c20f7d69a7cb77f"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa066288ebc3abf9337c20f7d69a7cb77f">HTTPRequest::GET</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00067">httpserver.h:67</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a53a138e588e5326d6c87bb84029f43e9"><div class="ttname"><a href="classHTTPRequest.html#a53a138e588e5326d6c87bb84029f43e9">HTTPRequest::GetURI</a></div><div class="ttdeci">std::string GetURI()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00639">httpserver.cpp:639</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a42d2567faa003c410a310a9c4e36ebdc"><div class="ttname"><a href="httpserver_8h.html#a42d2567faa003c410a310a9c4e36ebdc">UnregisterHTTPHandler</a></div><div class="ttdeci">void UnregisterHTTPHandler(const std::string &prefix, bool exactMatch)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00671">httpserver.cpp:671</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_ad3e2ab005035c3ac678b29095ac0da87"><div class="ttname"><a href="classHTTPEvent.html#ad3e2ab005035c3ac678b29095ac0da87">HTTPEvent::trigger</a></div><div class="ttdeci">void trigger(struct timeval *tv)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00547">httpserver.cpp:547</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a0a02b6576090c9fde2eed21b9aa7dc0c"><div class="ttname"><a href="httpserver_8h.html#a0a02b6576090c9fde2eed21b9aa7dc0c">InterruptHTTPServer</a></div><div class="ttdeci">void InterruptHTTPServer()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00465">httpserver.cpp:465</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html"><div class="ttname"><a href="classHTTPEvent.html">HTTPEvent</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00128">httpserver.h:128</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aaa86909f8f99c1272199518e4eb860e175"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaa86909f8f99c1272199518e4eb860e175">HTTPRequest::PUT</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00070">httpserver.h:70</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aaae2331c29519b3237f4926d5be5f7c7a4"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaae2331c29519b3237f4926d5be5f7c7a4">HTTPRequest::UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00066">httpserver.h:66</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_a3f216c67f9c4732bac686744a9c527d7"><div class="ttname"><a href="classHTTPEvent.html#a3f216c67f9c4732bac686744a9c527d7">HTTPEvent::~HTTPEvent</a></div><div class="ttdeci">~HTTPEvent()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00543">httpserver.cpp:543</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a4843a79312705c8a4188de88cebb5a2d"><div class="ttname"><a href="httpserver_8h.html#a4843a79312705c8a4188de88cebb5a2d">EventBase</a></div><div class="ttdeci">struct event_base * EventBase()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00523">httpserver.cpp:523</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a43767ec5daf58e5a13a740ed56ddca3f"><div class="ttname"><a href="classHTTPRequest.html#a43767ec5daf58e5a13a740ed56ddca3f">HTTPRequest::WriteReply</a></div><div class="ttdeci">void WriteReply(int nStatus, const std::string &strReply="")</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00611">httpserver.cpp:611</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aaac8de8b5303c92a9f833e9e68c18d02d9"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaac8de8b5303c92a9f833e9e68c18d02d9">HTTPRequest::POST</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00068">httpserver.h:68</a></div></div>
|
|
<div class="ttc" id="classHTTPClosure_html"><div class="ttname"><a href="classHTTPClosure.html">HTTPClosure</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00119">httpserver.h:119</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_a1b00e03074314686bf8b01979f938a45"><div class="ttname"><a href="classHTTPEvent.html#a1b00e03074314686bf8b01979f938a45">HTTPEvent::ev</a></div><div class="ttdeci">struct event * ev</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00146">httpserver.h:146</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_a61e7b99b180ddd304a524c2a27063c4c"><div class="ttname"><a href="classHTTPEvent.html#a61e7b99b180ddd304a524c2a27063c4c">HTTPEvent::handler</a></div><div class="ttdeci">boost::function< void(void)> handler</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00144">httpserver.h:144</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aa"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aa">HTTPRequest::RequestMethod</a></div><div class="ttdeci">RequestMethod</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00065">httpserver.h:65</a></div></div>
|
|
<div class="ttc" id="classHTTPClosure_html_abbce5d429a7fe2b593919550e50bc225"><div class="ttname"><a href="classHTTPClosure.html#abbce5d429a7fe2b593919550e50bc225">HTTPClosure::operator()</a></div><div class="ttdeci">virtual void operator()()=0</div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a7d31adee3f9e93edea6d9a5bd4454aae"><div class="ttname"><a href="classHTTPRequest.html#a7d31adee3f9e93edea6d9a5bd4454aae">HTTPRequest::GetHeader</a></div><div class="ttdeci">std::pair< bool, std::string > GetHeader(const std::string &hdr)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00568">httpserver.cpp:568</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_aab94919073c53e2302a653cb0c91a7d5"><div class="ttname"><a href="classHTTPRequest.html#aab94919073c53e2302a653cb0c91a7d5">HTTPRequest::HTTPRequest</a></div><div class="ttdeci">HTTPRequest(struct evhttp_request *req)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00554">httpserver.cpp:554</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a43a4c24762a6af819e364b55820323ed"><div class="ttname"><a href="httpserver_8h.html#a43a4c24762a6af819e364b55820323ed">RegisterHTTPHandler</a></div><div class="ttdeci">void RegisterHTTPHandler(const std::string &prefix, bool exactMatch, const HTTPRequestHandler &handler)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00665">httpserver.cpp:665</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a73ba24bc6528fd1aa5024c10330bfdfb"><div class="ttname"><a href="classHTTPRequest.html#a73ba24bc6528fd1aa5024c10330bfdfb">HTTPRequest::GetPeer</a></div><div class="ttdeci">CService GetPeer()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00625">httpserver.cpp:625</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_afc79079a153c70240914617a9dde075d"><div class="ttname"><a href="classHTTPRequest.html#afc79079a153c70240914617a9dde075d">HTTPRequest::GetRequestMethod</a></div><div class="ttdeci">RequestMethod GetRequestMethod()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00644">httpserver.cpp:644</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a1afe92e9caad997b8f88f0cb07dcc5aaaed9ed095188e3bc8f7235e41972afbe9"><div class="ttname"><a href="classHTTPRequest.html#a1afe92e9caad997b8f88f0cb07dcc5aaaed9ed095188e3bc8f7235e41972afbe9">HTTPRequest::HEAD</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00069">httpserver.h:69</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_aa8b4243a4a15afaa00b3b47947fcfea3"><div class="ttname"><a href="classHTTPRequest.html#aa8b4243a4a15afaa00b3b47947fcfea3">HTTPRequest::req</a></div><div class="ttdeci">struct evhttp_request * req</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00058">httpserver.h:58</a></div></div>
|
|
<div class="ttc" id="classCService_html"><div class="ttname"><a href="classCService.html">CService</a></div><div class="ttdef"><b>Definition:</b> <a href="netaddress_8h_source.html#l00132">netaddress.h:132</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_a910ea3b361715e036dc74eb75e92fb62"><div class="ttname"><a href="classHTTPRequest.html#a910ea3b361715e036dc74eb75e92fb62">HTTPRequest::WriteHeader</a></div><div class="ttdeci">void WriteHeader(const std::string &hdr, const std::string &value)</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00599">httpserver.cpp:599</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a9e82ea63cb4e1de19d8acdfbb654f8b2"><div class="ttname"><a href="httpserver_8h.html#a9e82ea63cb4e1de19d8acdfbb654f8b2">StartHTTPServer</a></div><div class="ttdeci">bool StartHTTPServer()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00453">httpserver.cpp:453</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_ad95d08d62c15b43d52fdba7b7ecaa0aa"><div class="ttname"><a href="httpserver_8h.html#ad95d08d62c15b43d52fdba7b7ecaa0aa">StopHTTPServer</a></div><div class="ttdeci">void StopHTTPServer()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00480">httpserver.cpp:480</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a90b0a9a188f591e83851dad2b701088f"><div class="ttname"><a href="httpserver_8h.html#a90b0a9a188f591e83851dad2b701088f">HTTPRequestHandler</a></div><div class="ttdeci">boost::function< void(HTTPRequest *req, const std::string &)> HTTPRequestHandler</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00038">httpserver.h:38</a></div></div>
|
|
<div class="ttc" id="classHTTPEvent_html_a226496f0af00e98c301e92cd8bf7ca9b"><div class="ttname"><a href="classHTTPEvent.html#a226496f0af00e98c301e92cd8bf7ca9b">HTTPEvent::deleteWhenTriggered</a></div><div class="ttdeci">bool deleteWhenTriggered</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00143">httpserver.h:143</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html_ab5864e916f43eddde9d2ccb69e0f1385"><div class="ttname"><a href="classHTTPRequest.html#ab5864e916f43eddde9d2ccb69e0f1385">HTTPRequest::~HTTPRequest</a></div><div class="ttdeci">~HTTPRequest()</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8cpp_source.html#l00558">httpserver.cpp:558</a></div></div>
|
|
<div class="ttc" id="classHTTPRequest_html"><div class="ttname"><a href="classHTTPRequest.html">HTTPRequest</a></div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00055">httpserver.h:55</a></div></div>
|
|
<div class="ttc" id="httpserver_8h_html_a96eaf769bd6c4c928f200745a0ce39c5"><div class="ttname"><a href="httpserver_8h.html#a96eaf769bd6c4c928f200745a0ce39c5">DEFAULT_HTTP_THREADS</a></div><div class="ttdeci">static const int DEFAULT_HTTP_THREADS</div><div class="ttdef"><b>Definition:</b> <a href="httpserver_8h_source.html#l00014">httpserver.h:14</a></div></div>
|
|
</div><!-- fragment --></div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="httpserver_8h.html">httpserver.h</a></li>
|
|
<li class="footer">Generated on Thu Dec 14 2017 13:15:03 for Dash Core by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|