-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhttp_8h_source.html
More file actions
277 lines (275 loc) · 59.3 KB
/
http_8h_source.html
File metadata and controls
277 lines (275 loc) · 59.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ah_http/include/ah/http.h Source File - Eclipse Arrowhead™ Core C Libraries</title>
<script src="jquery.js"></script>
<script src="dynsections.js"></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>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script>
window.addEventListener("load", () => {
let contents = document.querySelector("body > div.contents");
if (!contents) {
return;
}
document.querySelectorAll("#top ul > li.current > a > span").forEach((selectedMenuItem) => {
contents.classList.add(selectedMenuItem.innerText.trim().toLowerCase().replace(/\s+/, "-"));
});
for (let i = contents.childNodes.length - 1; i >= 0; i -= 1) {
let childNode = contents.childNodes.item(i);
if ((childNode.nodeType === 3 && childNode.textContent.trim().length === 0)
|| (childNode.nodeType === 1 && childNode.classList.contains("textblock") && childNode.textContent.trim().length === 0)) {
childNode.remove();
}
}
});
</script>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="DoxygenStyle.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top">
<header>
<img alt="Logo" src="arrowhead-logo-white.svg"/>
<h1>Eclipse Arrowhead™ Core C Libraries <span class="version"></span></h1>
</header>
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Overview</span></a></li>
<li><a href="files.html"><span>Headers</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="examples.html"><span>Examples</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<!-- 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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_3583a647cf2eebbd3a049e8fa52f244e.html">ah_http</a></li><li class="navelem"><a class="el" href="dir_859d411e738c53b77ebe00580c150c56.html">include</a></li><li class="navelem"><a class="el" href="dir_ead88d34a1645f90205f09becd3a194c.html">ah</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">http.h</div></div>
</div><!--header-->
<div class="contents">
<a href="http_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">// SPDX-License-Identifier: EPL-2.0</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#ifndef AH_HTTP_H_</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#define AH_HTTP_H_</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span><span class="preprocessor">#include "internal/_http.h"</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> </div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span><span class="preprocessor">#include <stdbool.h></span></div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="preprocessor">#include <stdint.h></span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span><span class="preprocessor">#include <string.h></span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="http_8h.html#acffe2c2d672ade0d53546e2f133a471c"> 117</a></span><span class="preprocessor">#define AH_HTTP_VERSION_MAJOR AH_I_HTTP_VERSION_MAJOR</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"><a class="line" href="http_8h.html#a7406c21229291db53c74df46941df74f"> 123</a></span><span class="preprocessor">#define AH_HTTP_VERSION_MINOR AH_I_HTTP_VERSION_MINOR</span></div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"><a class="line" href="http_8h.html#ae16d61801758beff1dfabddf278a6d20"> 129</a></span><span class="preprocessor">#define AH_HTTP_VERSION_PATCH AH_I_HTTP_VERSION_PATCH</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> </div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"><a class="line" href="http_8h.html#aee82aceb495f1e5b3e7e7bd37cecf550"> 134</a></span><span class="preprocessor">#define AH_HTTP_VERSION_STR AH_I_HTTP_VERSION_STR</span></div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> </div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__chunk.html" title="HTTP chunk, including data and an arbitrary extension.">ah_http_chunk</a> <a class="code hl_struct" href="structah__http__chunk.html" title="HTTP chunk, including data and an arbitrary extension.">ah_http_chunk_t</a>;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client</a> <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client__cbs.html" title="HTTP client callback set.">ah_http_client_cbs</a> <a class="code hl_struct" href="structah__http__client__cbs.html" title="HTTP client callback set.">ah_http_client_cbs_t</a>;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client__obs.html" title="HTTP client observer.">ah_http_client_obs</a> <a class="code hl_struct" href="structah__http__client__obs.html" title="HTTP client observer.">ah_http_client_obs_t</a>;</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header</a> <a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header_t</a>;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__head.html" title="HTTP start line and field lines.">ah_http_head</a> <a class="code hl_struct" href="structah__http__head.html" title="HTTP start line and field lines.">ah_http_head_t</a>;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server</a> <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>;</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server__cbs.html" title="HTTP server callback set.">ah_http_server_cbs</a> <a class="code hl_struct" href="structah__http__server__cbs.html" title="HTTP server callback set.">ah_http_server_cbs_t</a>;</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server__obs.html" title="HTTP server observer.">ah_http_server_obs</a> <a class="code hl_struct" href="structah__http__server__obs.html" title="HTTP server observer.">ah_http_server_obs_t</a>;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__trailer.html" title="HTTP chunked message end, consisting of a last chunk extension and a trailer.">ah_http_trailer</a> <a class="code hl_struct" href="structah__http__trailer.html" title="HTTP chunked message end, consisting of a last chunk extension and a trailer.">ah_http_trailer_t</a>;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structah__http__ver.html" title="HTTP version indicator.">ah_http_ver</a> <a class="code hl_struct" href="structah__http__ver.html" title="HTTP version indicator.">ah_http_ver_t</a>;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="structah__http__client__obs.html"> 155</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client__obs.html" title="HTTP client observer.">ah_http_client_obs</a> {</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="structah__http__client__obs.html#af0fbccba8720ef5fb325efd6b9fcec8d"> 157</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client__cbs.html" title="HTTP client callback set.">ah_http_client_cbs_t</a>* <a class="code hl_variable" href="structah__http__client__obs.html#af0fbccba8720ef5fb325efd6b9fcec8d" title="Set of client event callbacks.">cbs</a>;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="structah__http__client__obs.html#a55b87686c448598ed9e61ec19a1461cb"> 160</a></span> <span class="keywordtype">void</span>* <a class="code hl_variable" href="structah__http__client__obs.html#a55b87686c448598ed9e61ec19a1461cb" title="Arbitrary pointer provided every time an event callback is fired.">ctx</a>;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span>};</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"><a class="line" href="structah__http__client.html"> 174</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client</a> {</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> AH_I_HTTP_CLIENT_FIELDS</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span>};</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html"> 189</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__client__cbs.html" title="HTTP client callback set.">ah_http_client_cbs</a> {</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#a063349ed990a73f70950b6bab686a953"> 218</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#a063349ed990a73f70950b6bab686a953" title="cln has been opened, or the attempt failed.">on_open</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> </div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#ab7d4ae298f4368e38183e97d5c855254"> 262</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#ab7d4ae298f4368e38183e97d5c855254" title="cln has been connected to a specified remote host, or the attempt to connect it has failed.">on_connect</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> </div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#af46cd4ef226ad15bfd77c29035fd4265"> 302</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#af46cd4ef226ad15bfd77c29035fd4265" title="cln finished sending an HTTP message or the attempt failed.">on_send</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__http__head.html" title="HTTP start line and field lines.">ah_http_head_t</a>* head, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> </div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#ad09e006b4ba8372f7385408709dbc878"> 337</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#ad09e006b4ba8372f7385408709dbc878" title="cln has received a start line.">on_recv_line</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <span class="keyword">const</span> <span class="keywordtype">char</span>* line, <a class="code hl_struct" href="structah__http__ver.html" title="HTTP version indicator.">ah_http_ver_t</a> version);</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> </div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#af18a6b358884c4d770c1c8730c43243c"> 352</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#af18a6b358884c4d770c1c8730c43243c" title="cln has received a header field.">on_recv_header</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header_t</a> header);</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> </div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#a8ff228727b15e855d4842e2c0ca1d6a7"> 362</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#a8ff228727b15e855d4842e2c0ca1d6a7" title="cln has seen all headers in the currently received message.">on_recv_headers</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> </div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#a784e42b0275174b861e20d26443d0023"> 385</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#a784e42b0275174b861e20d26443d0023" title="cln has received a chunk size and a chunk extension.">on_recv_chunk_line</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <span class="keywordtype">size_t</span> size, <span class="keyword">const</span> <span class="keywordtype">char</span>* ext);</div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> </div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#aac94c429ddda22abdf5fce0241784857"> 410</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#aac94c429ddda22abdf5fce0241784857" title="cln has received data part of a message body.">on_recv_data</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__tcp__in.html" title="TCP input stream.">ah_tcp_in_t</a>* in);</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> </div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#a97e8038e0c64c1ca61f39d7fde584ef1"> 453</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#a97e8038e0c64c1ca61f39d7fde584ef1" title="cln has finished receiving a message.">on_recv_end</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno"> 454</span> </div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"><a class="line" href="structah__http__client__cbs.html#a89d3133a1c1130ae7023e1fabbcc9bb1"> 467</a></span> void (*<a class="code hl_variable" href="structah__http__client__cbs.html#a89d3133a1c1130ae7023e1fabbcc9bb1" title="cln has been closed.">on_close</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span>};</div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span> </div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"><a class="line" href="structah__http__server__obs.html"> 477</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server__obs.html" title="HTTP server observer.">ah_http_server_obs</a> {</div>
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno"><a class="line" href="structah__http__server__obs.html#a3736bea7c4b13ff5042a3320504ea147"> 479</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structah__http__server__cbs.html" title="HTTP server callback set.">ah_http_server_cbs_t</a>* <a class="code hl_variable" href="structah__http__server__obs.html#a3736bea7c4b13ff5042a3320504ea147" title="Set of client event callbacks.">cbs</a>;</div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span> </div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"><a class="line" href="structah__http__server__obs.html#abe21346e607ba38cffade778c409d504"> 482</a></span> <span class="keywordtype">void</span>* <a class="code hl_variable" href="structah__http__server__obs.html#abe21346e607ba38cffade778c409d504" title="Arbitrary pointer provided every time an event callback is fired.">ctx</a>;</div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span>};</div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> </div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"><a class="line" href="structah__http__server.html"> 496</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server</a> {</div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"> 497</span> AH_I_HTTP_SERVER_FIELDS</div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"> 498</span>};</div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"> 499</span> </div>
<div class="line"><a id="l00511" name="l00511"></a><span class="lineno"><a class="line" href="structah__http__server__cbs.html"> 511</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__server__cbs.html" title="HTTP server callback set.">ah_http_server_cbs</a> {</div>
<div class="line"><a id="l00532" name="l00532"></a><span class="lineno"><a class="line" href="structah__http__server__cbs.html#a85a55797ca0d19cc5e60b6a585559949"> 532</a></span> void (*<a class="code hl_variable" href="structah__http__server__cbs.html#a85a55797ca0d19cc5e60b6a585559949" title="srv has been opened, or the attempt failed.">on_open</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00533" name="l00533"></a><span class="lineno"> 533</span> </div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno"><a class="line" href="structah__http__server__cbs.html#aedbc4b93c46551e8c3b7a8afaea6ca56"> 553</a></span> void (*<a class="code hl_variable" href="structah__http__server__cbs.html#aedbc4b93c46551e8c3b7a8afaea6ca56" title="srv has started to listen for connecting clients, or the attempt failed.">on_listen</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"> 554</span> </div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"><a class="line" href="structah__http__server__cbs.html#abbb985d805e54a56050ac0dfa13216dd"> 588</a></span> void (*<a class="code hl_variable" href="structah__http__server__cbs.html#abbb985d805e54a56050ac0dfa13216dd" title="srv has accepted the cln cln.">on_accept</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* client, <a class="code hl_struct" href="structah__http__client__obs.html" title="HTTP client observer.">ah_http_client_obs_t</a>* obs, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span> </div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"><a class="line" href="structah__http__server__cbs.html#adc089639e520f1328561076b493adac4"> 603</a></span> void (*<a class="code hl_variable" href="structah__http__server__cbs.html#adc089639e520f1328561076b493adac4" title="srv has been closed.">on_close</a>)(<span class="keywordtype">void</span>* ctx, <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> err);</div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span>};</div>
<div class="line"><a id="l00605" name="l00605"></a><span class="lineno"> 605</span> </div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno"><a class="line" href="structah__http__ver.html"> 613</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__ver.html" title="HTTP version indicator.">ah_http_ver</a> {</div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"><a class="line" href="structah__http__ver.html#afd3216f277e1b674c67ff59eb709aec0"> 614</a></span> uint8_t <a class="code hl_variable" href="structah__http__ver.html#afd3216f277e1b674c67ff59eb709aec0" title="Major version indicator. Must be between 0 and 9.">major</a>; </div>
<div class="line"><a id="l00615" name="l00615"></a><span class="lineno"><a class="line" href="structah__http__ver.html#a752f0578bfbe2c8a3a57470238f46205"> 615</a></span> uint8_t <a class="code hl_variable" href="structah__http__ver.html#a752f0578bfbe2c8a3a57470238f46205" title="Minor version indicator. Must be between 0 and 9.">minor</a>; </div>
<div class="line"><a id="l00616" name="l00616"></a><span class="lineno"> 616</span>};</div>
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span> </div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"><a class="line" href="structah__http__header.html"> 624</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header</a> {</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno"><a class="line" href="structah__http__header.html#a9097f6a5f3b5c1c49ac61ee6d46d3194"> 625</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structah__http__header.html#a9097f6a5f3b5c1c49ac61ee6d46d3194" title="Header name. Case insensitive.">name</a>; </div>
<div class="line"><a id="l00626" name="l00626"></a><span class="lineno"><a class="line" href="structah__http__header.html#aa011f33f2b6afce4cd0e3f69367ef8a2"> 626</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structah__http__header.html#aa011f33f2b6afce4cd0e3f69367ef8a2" title="Header values. Case sensitive.">value</a>; </div>
<div class="line"><a id="l00627" name="l00627"></a><span class="lineno"> 627</span>};</div>
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span> </div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"><a class="line" href="structah__http__head.html"> 641</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__head.html" title="HTTP start line and field lines.">ah_http_head</a> {</div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"><a class="line" href="structah__http__head.html#acb0e197b90cd2a267c5815afe7bde7b2"> 658</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structah__http__head.html#acb0e197b90cd2a267c5815afe7bde7b2" title="Start line, excluding HTTP version.">line</a>;</div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"> 659</span> </div>
<div class="line"><a id="l00667" name="l00667"></a><span class="lineno"><a class="line" href="structah__http__head.html#a261619a7b5406cd73fa6fa010129ec6e"> 667</a></span> <a class="code hl_struct" href="structah__http__ver.html" title="HTTP version indicator.">ah_http_ver_t</a> <a class="code hl_variable" href="structah__http__head.html#a261619a7b5406cd73fa6fa010129ec6e" title="HTTP version of request.">version</a>;</div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno"> 668</span> </div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno"><a class="line" href="structah__http__head.html#ad14db3bd85e5d0268a98227ad834e6de"> 675</a></span> <a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header_t</a>* <a class="code hl_variable" href="structah__http__head.html#ad14db3bd85e5d0268a98227ad834e6de" title="Pointer to array of headers, terminated by a { NULL, NULL } header, or NULL.">headers</a>;</div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno"> 676</span> </div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno"> 677</span> AH_I_HTTP_HEAD_FIELDS</div>
<div class="line"><a id="l00678" name="l00678"></a><span class="lineno"> 678</span>};</div>
<div class="line"><a id="l00679" name="l00679"></a><span class="lineno"> 679</span> </div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno"><a class="line" href="structah__http__chunk.html"> 691</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__chunk.html" title="HTTP chunk, including data and an arbitrary extension.">ah_http_chunk</a> {</div>
<div class="line"><a id="l00700" name="l00700"></a><span class="lineno"><a class="line" href="structah__http__chunk.html#aab34c3c80f00ffae1828ccdbc144a306"> 700</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structah__http__chunk.html#aab34c3c80f00ffae1828ccdbc144a306" title="Arbitrary chunk extension.">ext</a>;</div>
<div class="line"><a id="l00701" name="l00701"></a><span class="lineno"> 701</span> </div>
<div class="line"><a id="l00710" name="l00710"></a><span class="lineno"><a class="line" href="structah__http__chunk.html#a93100efbcbffcbab5bdd2bad82f60bd2"> 710</a></span> <a class="code hl_struct" href="structah__tcp__out.html" title="TCP output buffer.">ah_tcp_out_t</a> <a class="code hl_variable" href="structah__http__chunk.html#a93100efbcbffcbab5bdd2bad82f60bd2" title="Data to include in chunk.">data</a>;</div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"> 711</span> </div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno"> 712</span> AH_I_HTTP_CHUNK_FIELDS</div>
<div class="line"><a id="l00713" name="l00713"></a><span class="lineno"> 713</span>};</div>
<div class="line"><a id="l00714" name="l00714"></a><span class="lineno"> 714</span> </div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"><a class="line" href="structah__http__trailer.html"> 729</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structah__http__trailer.html" title="HTTP chunked message end, consisting of a last chunk extension and a trailer.">ah_http_trailer</a> {</div>
<div class="line"><a id="l00738" name="l00738"></a><span class="lineno"><a class="line" href="structah__http__trailer.html#abffb21f268420bd4003a6a40531b601b"> 738</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structah__http__trailer.html#abffb21f268420bd4003a6a40531b601b" title="Arbitrary chunk extension.">ext</a>;</div>
<div class="line"><a id="l00739" name="l00739"></a><span class="lineno"> 739</span> </div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"><a class="line" href="structah__http__trailer.html#ab01c7ffd61b9aacb4468bb35d52395ba"> 746</a></span> <a class="code hl_struct" href="structah__http__header.html" title="HTTP header field, which is a name/value pair.">ah_http_header_t</a>* <a class="code hl_variable" href="structah__http__trailer.html#ab01c7ffd61b9aacb4468bb35d52395ba" title="Pointer to array of headers, terminated by a { NULL, NULL } header, or NULL.">headers</a>;</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno"> 747</span> </div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span> AH_I_HTTP_TRAILER_FIELDS</div>
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"> 749</span>};</div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"> 750</span> </div>
<div class="line"><a id="l00778" name="l00778"></a><span class="lineno"><a class="line" href="http_8h.html#aba6230b627c5522ff6e9c8cf3e13feb7"> 778</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#aba6230b627c5522ff6e9c8cf3e13feb7" title="Initializes cln for subsequent use.">ah_http_client_init</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__loop.html" title="Event loop.">ah_loop_t</a>* loop, <a class="code hl_struct" href="structah__tcp__trans.html" title="TCP-based transport.">ah_tcp_trans_t</a> trans, <a class="code hl_struct" href="structah__http__client__obs.html" title="HTTP client observer.">ah_http_client_obs_t</a> obs);</div>
<div class="line"><a id="l00779" name="l00779"></a><span class="lineno"> 779</span> </div>
<div class="line"><a id="l00810" name="l00810"></a><span class="lineno"><a class="line" href="http_8h.html#a3407248cc10199c91877397d823f6c37"> 810</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a3407248cc10199c91877397d823f6c37" title="Schedules opening of cln, which must be initialized, and its binding to the local network interface r...">ah_http_client_open</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <span class="keyword">const</span> <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* laddr);</div>
<div class="line"><a id="l00811" name="l00811"></a><span class="lineno"> 811</span> </div>
<div class="line"><a id="l00839" name="l00839"></a><span class="lineno"><a class="line" href="http_8h.html#a2b95d0ccdc86388438d99fdfc65d45e2"> 839</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a2b95d0ccdc86388438d99fdfc65d45e2" title="Schedules connection of cln, which must be open, to raddr.">ah_http_client_connect</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <span class="keyword">const</span> <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* raddr);</div>
<div class="line"><a id="l00840" name="l00840"></a><span class="lineno"> 840</span> </div>
<div class="line"><a id="l00881" name="l00881"></a><span class="lineno"><a class="line" href="http_8h.html#afdfe56387101bf4b1bb954f002fa3ef2"> 881</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#afdfe56387101bf4b1bb954f002fa3ef2" title="Schedules sending of HTTP message head.">ah_http_client_send_head</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__http__head.html" title="HTTP start line and field lines.">ah_http_head_t</a>* head);</div>
<div class="line"><a id="l00882" name="l00882"></a><span class="lineno"> 882</span> </div>
<div class="line"><a id="l00911" name="l00911"></a><span class="lineno"><a class="line" href="http_8h.html#a038276fcd4deb032722bc2104c8fdb2b"> 911</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a038276fcd4deb032722bc2104c8fdb2b" title="Schedules sending of HTTP message body data.">ah_http_client_send_data</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__tcp__out.html" title="TCP output buffer.">ah_tcp_out_t</a>* out);</div>
<div class="line"><a id="l00912" name="l00912"></a><span class="lineno"> 912</span> </div>
<div class="line"><a id="l00932" name="l00932"></a><span class="lineno"><a class="line" href="http_8h.html#a684e4861788b51a68e3ed308aa20d6cf"> 932</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a684e4861788b51a68e3ed308aa20d6cf" title="Ends current HTTP message of cln.">ah_http_client_send_end</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l00933" name="l00933"></a><span class="lineno"> 933</span> </div>
<div class="line"><a id="l00969" name="l00969"></a><span class="lineno"><a class="line" href="http_8h.html#a95ac1840f6f2b2ae9d8a0b32e1366d79"> 969</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a95ac1840f6f2b2ae9d8a0b32e1366d79" title="Schedules sending of HTTP message body data in the form of a chunk.">ah_http_client_send_chunk</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__http__chunk.html" title="HTTP chunk, including data and an arbitrary extension.">ah_http_chunk_t</a>* chunk);</div>
<div class="line"><a id="l00970" name="l00970"></a><span class="lineno"> 970</span> </div>
<div class="line"><a id="l01005" name="l01005"></a><span class="lineno"><a class="line" href="http_8h.html#aef012c485382dc1051919809f266021e"> 1005</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#aef012c485382dc1051919809f266021e" title="Schedules sending of last chunk and trailer of and ends the current message of cln.">ah_http_client_send_trailer</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_struct" href="structah__http__trailer.html" title="HTTP chunked message end, consisting of a last chunk extension and a trailer.">ah_http_trailer_t</a>* trailer);</div>
<div class="line"><a id="l01006" name="l01006"></a><span class="lineno"> 1006</span> </div>
<div class="line"><a id="l01021" name="l01021"></a><span class="lineno"><a class="line" href="http_8h.html#a4a0cacd784a5c0c3dc2b0af93745d02a"> 1021</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a4a0cacd784a5c0c3dc2b0af93745d02a" title="Schedules closing of cln.">ah_http_client_close</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l01022" name="l01022"></a><span class="lineno"> 1022</span> </div>
<div class="line"><a id="l01037" name="l01037"></a><span class="lineno"><a class="line" href="http_8h.html#a64bab29aa1d7a7a0b35dcac9ea9a00fb"> 1037</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a64bab29aa1d7a7a0b35dcac9ea9a00fb" title="Terminates cln, releasing any resources it may hold.">ah_http_client_term</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l01038" name="l01038"></a><span class="lineno"> 1038</span> </div>
<div class="line"><a id="l01050" name="l01050"></a><span class="lineno"><a class="line" href="http_8h.html#a0459cfe2bd9f389b7ce586a8a3dcea3e"> 1050</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_struct" href="structah__tcp__conn.html" title="TCP connection handle.">ah_tcp_conn_t</a>* <a class="code hl_function" href="http_8h.html#a0459cfe2bd9f389b7ce586a8a3dcea3e" title="Gets the TCP connection of cln.">ah_http_client_get_conn</a>(<a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l01051" name="l01051"></a><span class="lineno"> 1051</span> </div>
<div class="line"><a id="l01073" name="l01073"></a><span class="lineno"><a class="line" href="http_8h.html#a1b622e70c0e84c971414994077bbed95"> 1073</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a1b622e70c0e84c971414994077bbed95" title="Stores local address bound by cln into laddr.">ah_http_client_get_laddr</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* laddr);</div>
<div class="line"><a id="l01074" name="l01074"></a><span class="lineno"> 1074</span> </div>
<div class="line"><a id="l01093" name="l01093"></a><span class="lineno"><a class="line" href="http_8h.html#a816bbf2d1973884cb3a8787e219eaf35"> 1093</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a816bbf2d1973884cb3a8787e219eaf35" title="Stores remote address of cln into raddr.">ah_http_client_get_raddr</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln, <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* raddr);</div>
<div class="line"><a id="l01094" name="l01094"></a><span class="lineno"> 1094</span> </div>
<div class="line"><a id="l01105" name="l01105"></a><span class="lineno"><a class="line" href="http_8h.html#a2ecd3e6fb122fcd92d181b0f31f7e931"> 1105</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_struct" href="structah__loop.html" title="Event loop.">ah_loop_t</a>* <a class="code hl_function" href="http_8h.html#a2ecd3e6fb122fcd92d181b0f31f7e931" title="Gets pointer to event loop of cln.">ah_http_client_get_loop</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l01106" name="l01106"></a><span class="lineno"> 1106</span> </div>
<div class="line"><a id="l01115" name="l01115"></a><span class="lineno"><a class="line" href="http_8h.html#a0a4114087cf499bd5ebc44a4b555c261"> 1115</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <span class="keywordtype">void</span>* <a class="code hl_function" href="http_8h.html#a0a4114087cf499bd5ebc44a4b555c261" title="Gets the context pointer of the client observer associated with srv.">ah_http_client_get_obs_ctx</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client.html" title="HTTP client.">ah_http_client_t</a>* cln);</div>
<div class="line"><a id="l01116" name="l01116"></a><span class="lineno"> 1116</span> </div>
<div class="line"><a id="l01135" name="l01135"></a><span class="lineno"><a class="line" href="http_8h.html#aa7e37041fb961caf21160ded7d0b0bc1"> 1135</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <span class="keywordtype">bool</span> <a class="code hl_function" href="http_8h.html#aa7e37041fb961caf21160ded7d0b0bc1" title="Checks if cbs is valid for handling clients initiated locally.">ah_http_client_cbs_is_valid</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__client__cbs.html" title="HTTP client callback set.">ah_http_client_cbs_t</a>* cbs);</div>
<div class="line"><a id="l01136" name="l01136"></a><span class="lineno"> 1136</span> </div>
<div class="line"><a id="l01173" name="l01173"></a><span class="lineno"><a class="line" href="http_8h.html#a481c2847576b4f3cbfaa6524af2f36a7"> 1173</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a481c2847576b4f3cbfaa6524af2f36a7" title="Initializes srv for subsequent use.">ah_http_server_init</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_struct" href="structah__loop.html" title="Event loop.">ah_loop_t</a>* loop, <a class="code hl_struct" href="structah__tcp__trans.html" title="TCP-based transport.">ah_tcp_trans_t</a> trans, <a class="code hl_struct" href="structah__http__server__obs.html" title="HTTP server observer.">ah_http_server_obs_t</a> obs);</div>
<div class="line"><a id="l01174" name="l01174"></a><span class="lineno"> 1174</span> </div>
<div class="line"><a id="l01205" name="l01205"></a><span class="lineno"><a class="line" href="http_8h.html#afef6c8c9a8201ce16aece2ea9d74a7e8"> 1205</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#afef6c8c9a8201ce16aece2ea9d74a7e8" title="Schedules opening of srv, which must be initialized, and its binding to the local network interface r...">ah_http_server_open</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <span class="keyword">const</span> <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* laddr);</div>
<div class="line"><a id="l01206" name="l01206"></a><span class="lineno"> 1206</span> </div>
<div class="line"><a id="l01236" name="l01236"></a><span class="lineno"><a class="line" href="http_8h.html#a99d76f255529dfb4a1604e97a7fbe90c"> 1236</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a99d76f255529dfb4a1604e97a7fbe90c" title="Schedules for srv, which must be open, to start listening for connecting clients.">ah_http_server_listen</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <span class="keywordtype">unsigned</span> backlog);</div>
<div class="line"><a id="l01237" name="l01237"></a><span class="lineno"> 1237</span> </div>
<div class="line"><a id="l01255" name="l01255"></a><span class="lineno"><a class="line" href="http_8h.html#ae9def4c4323d8884edd607006b650ae1"> 1255</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#ae9def4c4323d8884edd607006b650ae1" title="Schedules closing of srv.">ah_http_server_close</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv);</div>
<div class="line"><a id="l01256" name="l01256"></a><span class="lineno"> 1256</span> </div>
<div class="line"><a id="l01272" name="l01272"></a><span class="lineno"><a class="line" href="http_8h.html#adb9f40bf74053ecfec1718e13f18bcf0"> 1272</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#adb9f40bf74053ecfec1718e13f18bcf0" title="Terminates srv, freeing any resources it holds.">ah_http_server_term</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv);</div>
<div class="line"><a id="l01273" name="l01273"></a><span class="lineno"> 1273</span> </div>
<div class="line"><a id="l01284" name="l01284"></a><span class="lineno"><a class="line" href="http_8h.html#aed1d897bd5505e739ffedabaa04e33d6"> 1284</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_struct" href="structah__tcp__listener.html" title="TCP listener handle.">ah_tcp_listener_t</a>* <a class="code hl_function" href="http_8h.html#aed1d897bd5505e739ffedabaa04e33d6" title="Gets the TCP listener of srv.">ah_http_server_get_listener</a>(<a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv);</div>
<div class="line"><a id="l01285" name="l01285"></a><span class="lineno"> 1285</span> </div>
<div class="line"><a id="l01307" name="l01307"></a><span class="lineno"><a class="line" href="http_8h.html#a361734cf37a2a850071de1038eae4b3c"> 1307</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_typedef" href="defs_8h.html#a746483e29fbbad8cb71e1b3875763ae2" title="Signed integer type used to hold an error code.">ah_err_t</a> <a class="code hl_function" href="http_8h.html#a361734cf37a2a850071de1038eae4b3c" title="Stores local address bound by srv into laddr.">ah_http_server_get_laddr</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv, <a class="code hl_union" href="unionah__sockaddr.html" title="Socket address union type.">ah_sockaddr_t</a>* laddr);</div>
<div class="line"><a id="l01308" name="l01308"></a><span class="lineno"> 1308</span> </div>
<div class="line"><a id="l01319" name="l01319"></a><span class="lineno"><a class="line" href="http_8h.html#a05d424e3ea190fb884b10fcbfb7a6b31"> 1319</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <a class="code hl_struct" href="structah__loop.html" title="Event loop.">ah_loop_t</a>* <a class="code hl_function" href="http_8h.html#a05d424e3ea190fb884b10fcbfb7a6b31" title="Gets pointer to event loop of srv.">ah_http_server_get_loop</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv);</div>
<div class="line"><a id="l01320" name="l01320"></a><span class="lineno"> 1320</span> </div>
<div class="line"><a id="l01329" name="l01329"></a><span class="lineno"><a class="line" href="http_8h.html#a973c0bcf2b3409253896d15ea6073153"> 1329</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <span class="keywordtype">void</span>* <a class="code hl_function" href="http_8h.html#a973c0bcf2b3409253896d15ea6073153" title="Gets the context pointer of the server observer associated with srv.">ah_http_server_get_obs_ctx</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__server.html" title="HTTP server.">ah_http_server_t</a>* srv);</div>
<div class="line"><a id="l01330" name="l01330"></a><span class="lineno"> 1330</span> </div>
<div class="line"><a id="l01349" name="l01349"></a><span class="lineno"><a class="line" href="http_8h.html#a6b24355cd2c20fcd65fc08f763ef1972"> 1349</a></span><a class="code hl_define" href="defs_8h.html#a4a00eaa653b79c27bff40d48d658f86f" title="Specified before a function declaration or definition to make it available when linking.">ah_extern</a> <span class="keywordtype">bool</span> <a class="code hl_function" href="http_8h.html#a6b24355cd2c20fcd65fc08f763ef1972" title="Checks if cbs is valid for handling servers initiated locally.">ah_http_server_cbs_is_valid</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structah__http__server__cbs.html" title="HTTP server callback set.">ah_http_server_cbs_t</a>* cbs);</div>
<div class="line"><a id="l01350" name="l01350"></a><span class="lineno"> 1350</span> </div>
<div class="line"><a id="l01353" name="l01353"></a><span class="lineno"> 1353</span><span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<footer>Generated by <a href="https://doxygen.org">Doxygen</a> 1.9.5</footer>
</body>
</html>