3
<link rel="stylesheet" href="style.css" type="text/css">
4
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
5
<link rel="Start" href="index.html">
6
<link title="Index of types" rel=Appendix href="index_types.html">
7
<link title="Index of exceptions" rel=Appendix href="index_exceptions.html">
8
<link title="Index of values" rel=Appendix href="index_values.html">
9
<link title="Index of class methods" rel=Appendix href="index_methods.html">
10
<link title="Index of classes" rel=Appendix href="index_classes.html">
11
<link title="Index of class types" rel=Appendix href="index_class_types.html">
12
<link title="Index of modules" rel=Appendix href="index_modules.html">
13
<link title="Netcgi_env" rel="Chapter" href="Netcgi_env.html">
14
<link title="Netcgi_types" rel="Chapter" href="Netcgi_types.html">
15
<link title="Netcgi" rel="Chapter" href="Netcgi.html">
16
<link title="Netcgi_jserv" rel="Chapter" href="Netcgi_jserv.html">
17
<link title="Netcgi_jserv_ajp12" rel="Chapter" href="Netcgi_jserv_ajp12.html">
18
<link title="Netcgi_jserv_app" rel="Chapter" href="Netcgi_jserv_app.html">
19
<link title="Netcgi_fcgi_10" rel="Chapter" href="Netcgi_fcgi_10.html">
20
<link title="Netcgi_fcgi" rel="Chapter" href="Netcgi_fcgi.html">
21
<link title="Netcgi1_compat" rel="Chapter" href="Netcgi1_compat.html"><title>Ocamlnet 2 Reference Manual (netcgi1 add-on) : Index of types</title>
24
<center><h1>Index of types</h1></center>
26
<tr><td align="left"><br>A</td></tr>
27
<tr><td><a href="Netcgi1_compat.Netcgi.html#TYPEargument_processing">argument_processing</a> [<a href="Netcgi1_compat.Netcgi.html">Netcgi1_compat.Netcgi</a>]</td>
29
<tr><td><a href="Netcgi.html#TYPEargument_processing">argument_processing</a> [<a href="Netcgi.html">Netcgi</a>]</td>
30
<td><div class="info">
31
How to process CGI arguments: <code class="code">`Memory</code>: Keep the value of the argument in memory, <code class="code">`File</code>: Store the value of the argument in an external file, <code class="code">`Automatic</code>: If the argument is structured and carries a file name,
32
the value will be stored in a file; otherwise it is loaded into
33
memory. (Note: The meaning of <code class="code">`Automatic</code> changed in OcamlNet 0.92.)
36
<tr><td><a href="Netcgi_jserv.html#TYPEauth">auth</a> [<a href="Netcgi_jserv.html">Netcgi_jserv</a>]</td>
37
<td><div class="info">
41
<tr><td align="left"><br>C</td></tr>
42
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEcache_control">cache_control</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
44
<tr><td><a href="Netcgi_types.html#TYPEcache_control">cache_control</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
45
<td><div class="info">
46
This is only a small subset of the HTTP 1.1 cache control features,
47
but they are usually sufficient, and they work for HTTP/1.0 as well.
50
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEcgi_config">cgi_config</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
52
<tr><td><a href="Netcgi_env.html#TYPEcgi_config">cgi_config</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
54
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEcgi_cookie">cgi_cookie</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
56
<tr><td><a href="Netcgi_types.html#TYPEcgi_cookie">cgi_cookie</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
58
<tr><td><a href="Netcgi_jserv.html#TYPEcontrolpipe">controlpipe</a> [<a href="Netcgi_jserv.html">Netcgi_jserv</a>]</td>
59
<td><div class="info">
60
The type of the control pipe
63
<tr><td align="left"><br>F</td></tr>
64
<tr><td><a href="Netcgi_fcgi_10.html#TYPEfcgiBeginRequestBody">fcgiBeginRequestBody</a> [<a href="Netcgi_fcgi_10.html">Netcgi_fcgi_10</a>]</td>
65
<td><div class="info">
69
<tr><td><a href="Netcgi_fcgi_10.html#TYPEfcgiEndRequestBody">fcgiEndRequestBody</a> [<a href="Netcgi_fcgi_10.html">Netcgi_fcgi_10</a>]</td>
70
<td><div class="info">
74
<tr><td><a href="Netcgi_fcgi_10.html#TYPEfcgiHeader">fcgiHeader</a> [<a href="Netcgi_fcgi_10.html">Netcgi_fcgi_10</a>]</td>
75
<td><div class="info">
79
<tr><td><a href="Netcgi_fcgi_10.html#TYPEfcgiRequest">fcgiRequest</a> [<a href="Netcgi_fcgi_10.html">Netcgi_fcgi_10</a>]</td>
80
<td><div class="info">
81
fcgi params will return an asociation list fcgi stdin will return
82
a string a full request record, what you get when you call
86
<tr><td align="left"><br>I</td></tr>
87
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEinput_mode">input_mode</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
89
<tr><td><a href="Netcgi_env.html#TYPEinput_mode">input_mode</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
90
<td><div class="info">
91
Determines how to read the request: <code class="code">`Standard</code>: Only the request body is read from the input
92
channel (CGI standard), Not yet implemented: <code class="code">`Direct</code>: Both header and body of the
93
request are read from the input channel
96
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEinput_state">input_state</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
98
<tr><td><a href="Netcgi_env.html#TYPEinput_state">input_state</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
99
<td><div class="info">
100
The input processing state: <code class="code">`Start</code>: Input data have not yet been received, <code class="code">`Receiving_header</code>: The request header is currently being
101
received, <code class="code">`Received_header</code>: The request header has been completely
102
received, and nothing of the request body has yet been
103
received, <code class="code">`Receiving_body</code>: The request body is currently being
104
received, <code class="code">`Received_body</code>: The request body has been completely
107
<pre><code class="code">
109
`Receiving_header ->
110
`Received_header ->
111
`Receiving_body ->
112
`Received_body </code></pre>
115
<tr><td align="left"><br>J</td></tr>
116
<tr><td><a href="Netcgi_jserv_app.html#TYPEjserv_config">jserv_config</a> [<a href="Netcgi_jserv_app.html">Netcgi_jserv_app</a>]</td>
117
<td><div class="info">
118
Server configuration: <code class="code">js_backlog</code> is the maximum length of the backlog queue (containing
119
client connections that are not yet accepted by the application
120
server), <code class="code">js_reuseaddr</code>: Whether to reuse the port immediately, <code class="code">js_cgiconfig</code>: The CGI-level configuration, <code class="code">js_init_process</code>: This hook is called when a new process is
121
initialized. For <code class="code">`Sequential</code> servers it is called once before
122
the server begins to accept connections. For <code class="code">`Forking</code> and
123
<code class="code">`Process_pool</code> servers it is called when new processes are
124
forking., <code class="code">js_fini_process</code>: The reverse hook of <code class="code">js_init_process</code>: Called
125
after a process receives the shutdown notification.
126
For <code class="code">`Sequential</code> servers it is called once after
127
the server stops to accept connections. For <code class="code">`Forking</code> and
128
<code class="code">`Process_pool</code> servers it is called before sub processes exit., <code class="code">js_idle_master</code>: This hook is called every second by the
129
master process that accepts new connections. When it raises
130
an exception, the master socket is closed, and the exception
131
falls through to the caller., <code class="code">js_idle_worker</code>: This hook is called every second by the
132
worker process that processes connections. Exceptions are logged.
133
Examples: <code class="code">js_init_process</code>: Open a new database connection for every process, <code class="code">js_fini_process</code>: Close the database connection, <code class="code">js_idle_master</code>: Check whether the server should shut down, and
134
if so, raise an exception to exit, <code class="code">js_idle_worker</code>: Close database connections after a period
138
<tr><td align="left"><br>O</td></tr>
139
<tr><td><a href="Netcgi1_compat.Netcgi.html#TYPEoperating_type">operating_type</a> [<a href="Netcgi1_compat.Netcgi.html">Netcgi1_compat.Netcgi</a>]</td>
141
<tr><td><a href="Netcgi.html#TYPEoperating_type">operating_type</a> [<a href="Netcgi.html">Netcgi</a>]</td>
142
<td><div class="info">
143
The operating type determines how generated data are buffered.
146
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEother_url_spec">other_url_spec</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
148
<tr><td><a href="Netcgi_types.html#TYPEother_url_spec">other_url_spec</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
149
<td><div class="info">
150
Determines how an URL part is generated:
153
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEoutput_mode">output_mode</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
155
<tr><td><a href="Netcgi_env.html#TYPEoutput_mode">output_mode</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
156
<td><div class="info">
157
Determines how to deliver the response: <code class="code">`Standard</code>: The format of the response header has CGI format,
158
followed by the response body, Not yet implemented: <code class="code">`Direct</code>: The format of the response
159
header has HTTP format, followed by the response body. This
160
is also known as "non-parsed header" format.
163
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEoutput_state">output_state</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
165
<tr><td><a href="Netcgi_env.html#TYPEoutput_state">output_state</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
166
<td><div class="info">
167
The output processing state: <code class="code">`Start</code>: Output has not yet been sent, <code class="code">`Sending_header</code>: The response header is currently being sent, <code class="code">`Sent_header</code>: The response header has been completely sent,
168
and nothing of the body has yet been sent, <code class="code">`Sending_body</code>: The response body is currently being sent, <code class="code">`Sent_body</code>: The response body has been sent up to a
169
check point, <code class="code">`End</code>: The response has been completely sent
171
<pre><code class="code"> `Start ->
172
`Sending_header ->
183
<tr><td align="left"><br>P</td></tr>
184
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEprotocol">protocol</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
186
<tr><td><a href="Netcgi_env.html#TYPEprotocol">protocol</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
187
<td><div class="info">
188
Now defined in <code class="code">Nethttp</code>
191
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEprotocol_attribute">protocol_attribute</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
193
<tr><td><a href="Netcgi_env.html#TYPEprotocol_attribute">protocol_attribute</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
194
<td><div class="info">
195
Now defined in <code class="code">Nethttp</code>
198
<tr><td><a href="Netcgi_jserv_app.html#TYPEprotocol_type">protocol_type</a> [<a href="Netcgi_jserv_app.html">Netcgi_jserv_app</a>]</td>
199
<td><div class="info">
200
Selects the protocol.
203
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEprotocol_version">protocol_version</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
205
<tr><td><a href="Netcgi_env.html#TYPEprotocol_version">protocol_version</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
206
<td><div class="info">
207
Now defined in <code class="code">Nethttp</code>
210
<tr><td align="left"><br>Q</td></tr>
211
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEquery_string_spec">query_string_spec</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
213
<tr><td><a href="Netcgi_types.html#TYPEquery_string_spec">query_string_spec</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
214
<td><div class="info">
215
Determines how the query part of URLs is generated:
218
<tr><td align="left"><br>R</td></tr>
219
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPErepresentation">representation</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
220
<td><div class="info">
221
Embedded in the single place of use.
224
<tr><td><a href="Netcgi_types.html#TYPErepresentation">representation</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
225
<td><div class="info">
226
Representations of CGI arguments: <code class="code">`Simple msg</code>: The argument is unstructured, <code class="code">`MIME msg</code>: The argument has a MIME header in addition to the value
229
<tr><td><a href="Netcgi_jserv_app.html#TYPErequest_handler">request_handler</a> [<a href="Netcgi_jserv_app.html">Netcgi_jserv_app</a>]</td>
230
<td><div class="info">
231
The request handler consists of: <code class="code">req_activate</code>: A function to process requests and to generate
232
responses. The function gets a fully initialized <code class="code">cgi_activation</code>
233
object, and is expected to write the response., <code class="code">req_processing</code>: Style of CGI argument processing. Same meaning as in
234
<a href="Netcgi.html"><code class="code">Netcgi</code></a>., <code class="code">req_operating_type</code>: Style of CGI response buffering. Same meaning as in
235
<a href="Netcgi.html"><code class="code">Netcgi</code></a>.
238
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPErequest_method">request_method</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
240
<tr><td><a href="Netcgi_types.html#TYPErequest_method">request_method</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
241
<td><div class="info">
242
The supported request methods: <code class="code">`GET</code>: Side effect-free request of a web resource, <code class="code">`POST</code>: Request with side effects, <code class="code">`HEAD</code>: Only the header of the corresponding <code class="code">`GET</code> are requested, <code class="code">`DELETE</code>: Request to delete the web resource, <code class="code">`PUT arg</code>: Request to upload the web resource
245
<tr><td align="left"><br>S</td></tr>
246
<tr><td><a href="Netcgi_jserv_app.html#TYPEserver_type">server_type</a> [<a href="Netcgi_jserv_app.html">Netcgi_jserv_app</a>]</td>
247
<td><div class="info">
248
Server type: <code class="code">`Sequential servlets</code>: The server processes the requests sequentially., <code class="code">`Forking(n,servlets)</code>: The server forks for every request, and processes it in the
249
child process. The integer <code class="code">n</code> is the maximum number of children
250
processes; if it is exceeded, an error message is displayed immediately
251
without forking., <code class="code">`Process_pool(n,servlets)</code>: The server forks a fixed number of times (the integer <code class="code">n</code>).
252
The children will process the requests concurrently. If more requests
253
arrive than children are available, the requests must wait until
254
a child becomes free again.
255
In <code class="code">servlets</code> the list of available servlets is passed.
258
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEstatus">status</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
260
<tr><td><a href="Netcgi_types.html#TYPEstatus">status</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
262
<tr><td><a href="Netcgi1_compat.Netcgi_types.html#TYPEstore">store</a> [<a href="Netcgi1_compat.Netcgi_types.html">Netcgi1_compat.Netcgi_types</a>]</td>
263
<td><div class="info">
264
Embedded in the single place of use.
267
<tr><td><a href="Netcgi_types.html#TYPEstore">store</a> [<a href="Netcgi_types.html">Netcgi_types</a>]</td>
268
<td><div class="info">
269
Determines where the data of the CGI argument are actually stored.
272
<tr><td align="left"><br>T</td></tr>
273
<tr><td><a href="Netcgi_jserv.html#TYPEt">t</a> [<a href="Netcgi_jserv.html">Netcgi_jserv</a>]</td>
274
<td><div class="info">
275
The type of an AJP server
278
<tr><td align="left"><br>W</td></tr>
279
<tr><td><a href="Netcgi1_compat.Netcgi_env.html#TYPEworkaround">workaround</a> [<a href="Netcgi1_compat.Netcgi_env.html">Netcgi1_compat.Netcgi_env</a>]</td>
281
<tr><td><a href="Netcgi_env.html#TYPEworkaround">workaround</a> [<a href="Netcgi_env.html">Netcgi_env</a>]</td>
282
<td><div class="info">
283
Indicates special behaviour: <code class="code">`Work_around_MSIE_Content_type_bug</code>: Versions of the Internet
284
Explorer send illegal content types. This workaround extracts
285
the right data from the malformed data field, <code class="code">`Work_around_backslash_bug</code>: Almost all browsers send illegal
286
backslash sequences when backslashes occur in filenames.
287
This workaround accepts such sequences.
b'\\ No newline at end of file'