http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_download.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_download.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_download.md
new file mode 100644
index 0000000..1dbded0
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_download.md
@@ -0,0 +1,37 @@
+# Civetweb API Reference
+
+### `mg_download( host, port, use_ssl, error_buffer, error_buffer_size, fmt, 
... );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`host`**|`const char *`|The hostname or IP address of the server|
+|**`port`**|`int`|The port number on the server|
+|**`use_ssl`**|`int`|Use SSL if this value is not equal zero|
+|**`error_buffer`**|`char *`|Buffer to store an error message|
+|**`error_buffer_size`**|`size_t`|Size of the error message buffer including 
the terminating NUL|
+|**`fmt`**|`const char *`|Format string specifying the remote command to 
execute|
+|**`...`**|*various*|Parameters used in the format string|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`struct mg_connection *`|A pointer to the connection structure if successful 
and NULL otherwise|
+
+### Description
+
+The `mg_download()` function is used to download data from a remote webserver. 
The server address can either be specified as a hostname or IP address and SSL 
can be used if needed. If the function succeeds, a pointer is returned to a 
connection structure. The connection must be closed with a call to the 
[`mg_close_connection()`](mg_close_connection.md) function.
+
+The format string is a format string from the `printf()` series of functions 
to specify the remote command. An example to get the main index page from 
Google is the following call:
+
+`conn = mg_download( "google.com", 80, 0, ebuf, sizeof(ebuf),
+                     "%s", "GET / HTTP/1.0\r\nHost: google.com\r\n\r\n" );`
+
+Please note that although Civetweb supports both IPv4 and IPv6 communication 
that IPv6 addressing is only available if it was enabled at compile time. When 
running an application it is possible to check if IPv6 support has been 
compiled in by using the [`mg_check_feature()`](md_check_feature.md) function 
with the parameter `USE_IPV6`.
+
+### See Also
+
+* [`mg_check_feature();`](mg_check_feature.md)
+* [`mg_close_connection();`](mg_close_connection.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_form_data_handler.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_form_data_handler.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_form_data_handler.md
new file mode 100644
index 0000000..2338b72
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_form_data_handler.md
@@ -0,0 +1,36 @@
+# Civetweb API Reference
+
+### `struct mg_form_data_handler;`
+
+### Fields
+
+|Field|Description|
+|:---|:---|
+|**`field_found`**|**`int field_found( const char *key, const char *filename, 
char *path, size_t pathlen, void *user_data )`**;|
+||The callback function `field_found()` is called when a new field has been 
found. The return value of this callback is used to define how the field should 
be processed. The parameters contain the following information:|
+||**`key`** - The name of the field as it was named with the `name` tag in the 
HTML source.|
+||**`filename`** - The name of the file to upload. Please not that this 
parameter is only valid when the input type was set to `file`. Otherwise this 
parameter has the value `NULL`.|
+||**`path`** - This is an output parameter used to store the full name of the 
file including the path to store an incoming file at the computer. This 
parameter must be provided by the application to Civetweb when a form field of 
type `file` is found. Please not that together with setting this parameter, the 
callback function must return `FORM_FIELD_STORAGE_STORE`.i With any other 
return value the contents of the `path` buffer is ignored by Civetweb.|
+||**`pathlen`** - The length of the buffer where the output path can be 
stored.|
+||**`user_data`** - A pointer to the value of the field `user_data` of the 
structure `struct mg_form_data_handler`.|
+||The callback function `field_found()` can return the following values back 
to Civetweb:|
+||**`FORM_FIELD_STORAGE_SKIP`** - Ignore the field and continue with 
processing the next field|
+||**`FORM_FIELD_STORAGE_GET`** - Call the callback function `field_get()` to 
receive the form data|
+||**`FORM_FIELD_STORAGE_STORE`** - Store a file as `path` and overwrite that 
file if it already exists|
+||**`FORM_FIELD_STORAGE_ABORT`** - Stop parsing the request and ignore all 
remaining form fields|
+|**`field_get`**|**`int field_get( const char *key, const char *value, size_t 
valuelen, void *user_data );`**|
+|**`field_store`**|**`int field_store( const char *path, long long file_size, 
void *user_data );`**|
+||If the callback function `field_found()` returned 
`FORM_FIELD_STORAGE_STORE`, Civetweb will try to store the received data in a 
file. If writing the file is successful, the callback function `field_store()` 
is called. This function is only called after completion of a full upload, not 
if a file has only partly been uploaded. When only part of a file is received, 
Civetweb will delete that partly upload in the background and not inform the 
main application through this callback. The following parameters are provided 
in the function call:|
+||**`path`** -|
+||**`file_size`** - The path on the server where the file was stored|
+||**`user_data`** - The size of the stored file in bytes|
+|**`user_data`**|**`void *`** The value of the field `user_data` when the 
callback functions were registered with a call to `mg_handle_form_request();`|
+||The `user_data` field is a user supplied argument that will be passed as 
parameter to each of callback functions|
+
+### Description
+
+The structure `struct mg_form_data_handler` contains callback functions for 
handling form fields. Form fields give additional information back from a web 
page to the server which can be processed by these callback functions.
+
+### See Also
+
+* [`mg_handle_form_request();`](mg_handle_form_request.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_builtin_mime_type.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_builtin_mime_type.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_builtin_mime_type.md
new file mode 100644
index 0000000..c9044ae
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_builtin_mime_type.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_get_builtin_mime_type( file_name );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`file_name`**|`const char *`|The name of the file for which the MIME type 
has to be determined|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char *`|A text string describing the MIME type|
+
+### Description
+
+The function `mg_get_builtin_mime_type()` tries to determine the MIME type of 
a given file. If the MIME type cannot be determined, the value `text/plain` is 
returned. Please note that this function does not an intelligent check of the 
file contents. The MIME type is solely determined based on the file name 
extension.
+
+### See Also
+
+* [`mg_send_mime_file();`](mg_send_mime_file.md)
+* [`mg_send_mime_file2();`](mg_send_mime_file2.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_context.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_context.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_context.md
new file mode 100644
index 0000000..ce6cb2b
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_context.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_get_context( conn );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`const struct mg_connection *`|The connection for which the 
context has to be returned|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`struct mg_context *`|A pointer to the context of the given connection|
+
+### Description
+
+The function `mg_get_context()` returns the context associated with a 
connection.
+
+### See Also
+
+* [`mg_start();`](mg_start.md)
+* [`mg_stop();`](mg_stop.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_cookie.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_cookie.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_cookie.md
new file mode 100644
index 0000000..a738bc0
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_cookie.md
@@ -0,0 +1,29 @@
+# Civetweb API Reference
+
+### `mg_get_cookie( cookie, var_name, buf, buf_len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`cookie`**|`const char *`|The cookie name|
+|**`var_name`**|`const char *`|The variable name|
+|**`buf`**|`char *`|The buffer where to store the contents of the cookie|
+|**`buf_len`**|`size_t`|The length of the cookie buffer, including the 
terminating NUL|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The length of the cookie or an error code|
+
+### Description
+
+The function `mg_get_cookie()` tries to fetch the value of a certain cookie 
variable. The contents will either be stored in an application provided buffer, 
or an error code will be returned. The destination buffer is guaranteed to be 
NUL terminated if the pointer of the buffer is not a NULL pointer and the size 
of the buffer is at least one byte.
+
+If the function succeeds, the return value of the function is the length in 
bytes of the cookie. The value **`-1`** is returned if the requested cookie 
could not be found and **`-2`** if the destination buffer is represented by a 
NULL pointer, is zero length or too short to store the whole cookie.
+
+### See Also
+
+* [`mg_get_var();`](mg_get_var.md)
+* [`mg_get_var2();`](mg_get_var2.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_header.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_header.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_header.md
new file mode 100644
index 0000000..8ad1810
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_header.md
@@ -0,0 +1,22 @@
+# Civetweb API Reference
+
+### `mg_get_header( conn, name );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`| A pointer referencing the connection |
+|**`name`**|`const char *`| The name of the request header |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char *`| A pointer to the value of the request header, or NULL of no 
matching header count be found |
+
+### Description
+
+HTTP and HTTPS clients can send request headers to the server to provide 
details about the communication. These request headers can for example specify 
the preferred language in which the server should respond and the supported 
compression algorithms. The function `mg_get_header()` can be called to return 
the contents of a specific request header. The function will return a pointer 
to the value text of the header when succesful, and NULL of no matching request 
header from the client could be found.
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_option.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_option.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_option.md
new file mode 100644
index 0000000..b731dd7
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_option.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_get_option( ctx, name );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`const struct mg_context *`| A pointer to the webserver context |
+|**`name`**|`const char *`| The name of the option to query |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char *`| A pointer to the option value in text, or NULL if an error 
occured |
+
+### Description
+
+When starting the CivetWeb webserver, options are provided to set the wanted 
behaviour of the server. The options which were used during startup can be 
queried through the `mg_get_option()` function. Options are read-only and 
cannot be changed while the webserver is running. The function returns a 
pointer to a text string containing the value of the queried option, or NULL if 
an error occured. It is guaranteed however that if a valid option name is 
provided as a parameter to this function, that a pointer to a string is 
returned and not NULL. In case an option was empty or NULL during 
initialisation, `mg_get_option()` will return a pointer to an empty string.
+
+### See Also
+
+* [`mg_start();`](mg_start.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_ports.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_ports.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_ports.md
new file mode 100644
index 0000000..ba492ca
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_ports.md
@@ -0,0 +1,31 @@
+# Civetweb API Reference
+
+### ~~`mg_get_ports( ctx, size, ports, ssl );`~~
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`const struct mg_context *`||
+|**`size`**|`size_t`|The number of ports which can be stored in the buffer|
+|**`ports`**|`int *`|Buffer for storage of the port numbers|
+|**`ssl`**|`int *`|Buffer used to store if SSL is used for the ports|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`size_t`|The number of ports stored in the buffer|
+
+### Description
+
+This function is deprecated. Use 
[`mg_get_server_ports()`](mg_get_server_ports.md) instead.
+
+The function `mg_get_ports()` returns a list of ports the Civetweb server is 
listening on. The port numbers are stored in a buffer of integers which is 
supplied by the calling party. The function also stores information if SSL is 
used on the ports. This information is stored in a second buffer which should 
be capable of storing the same amount of items as the ports buffer.
+
+The function returns the number of ports actually stored in the buffer.
+
+### See Also
+
+* [`struct mg_server_ports;`](mg_server_ports.md)
+* [`mg_get_server_ports();`](mg_get_server_ports.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_request_info.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_request_info.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_request_info.md
new file mode 100644
index 0000000..2b5ac32
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_request_info.md
@@ -0,0 +1,23 @@
+# Civetweb API Reference
+
+### `mg_get_request_info( conn );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`const struct mg_connection *`|The connection for which the 
request info is needed|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const struct mg_request_info *`|Pointer to the requested info, or NULL if an 
error occured|
+
+### Description
+
+The function `mg_get_request_info()` returns information about the request on 
a given connection. This information is returned as a pointer to a 
[`mg_request_info`](mg_request_info.md) structure. If an error occurs, a NULL 
pointer is returned instead.
+
+### See Also
+
+* [`struct mg_request_info;`](mg_request_info.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_response.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_response.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_response.md
new file mode 100644
index 0000000..3e7b727
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_response.md
@@ -0,0 +1,29 @@
+# Civetweb API Reference
+
+### `mg_get_response( conn, ebuf, ebuf_len, timeout );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection to listen on|
+|**`ebuf`**|`char *`|Buffer to store an error message|
+|**`ebuf_len`**|`size_t`|Size of the error message buffer including the 
terminating NUL|
+|**`timeout`**|`int`|Time to wait for a response in milliseconds|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Success value of the wait|
+
+### Description
+
+The function `mg_get_reponse()` wait for a response from a remote server. A 
return value equal or greater than zero is an indication for success, a 
negative value us used to signal an error condition. A timeout can be specified 
which lets the function return after a specified number of milliseconds, even 
if no data is received from the remote party. If the timeout value is negative, 
the function will not return until data has been read or an unrecoverable error 
occurs.
+
+Error messages are stored in a caller supplied error message buffer.
+
+### See Also
+
+* [`mg_connect_client();`](mg_connect_client.md)
+* [`mg_connect_client_secure();`](mg_connect_client_secure.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_response_code_text.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_response_code_text.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_response_code_text.md
new file mode 100644
index 0000000..79ffa13
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_response_code_text.md
@@ -0,0 +1,25 @@
+# Civetweb API Reference
+
+### `mg_get_response_code_text( conn, response_code );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`| A pointer referencing the connection |
+|**`response_code`**|`int`| Response code for which the text is queried |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char *`| A pointer to a human readable text explaining the response 
code. |
+
+### Description
+
+The function `mg_get_response_code_text()` returns a pointer to a human 
readable text describing the HTTP response code which was provided as a 
parameter.
+
+### See Also
+
+* [`mg_get_builtin_mime_type();`](mg_get_builtin_mime_type.md)
+* [`mg_version();`](mg_version.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_server_ports.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_server_ports.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_server_ports.md
new file mode 100644
index 0000000..323b470
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_server_ports.md
@@ -0,0 +1,28 @@
+# Civetweb API Reference
+
+### `mg_get_server_ports( ctx, size, ports );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`const struct mg_context *`|The context for which the server ports 
are requested|
+|**`size`**|`int`|The size of the buffer to store the port information|
+|**`ports`**|`struct mg_server_ports *`|Buffer to store the port information|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The actual number of ports returned, or an error condition|
+
+### Description
+
+The `mg_get_server_ports()` returns a list with server ports on which the 
Civetweb server is listening. The ports are returned for a given context and 
stored with additional information like the SSL and redirection state in a list 
of structures. The list of structures must be allocated by the calling routine. 
The size of the structure is also passed to `mg_get_server_ports()`.
+
+The function returns the number of items in the list, or a negative value if 
an error occured.
+
+### See Also
+
+* [~~`mg_get_ports();`~~](mg_get_ports.md)
+* [`struct mg_server_ports;`](mg_server_ports.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_connection_data.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_connection_data.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_connection_data.md
new file mode 100644
index 0000000..2e24c13
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_connection_data.md
@@ -0,0 +1,23 @@
+# Civetweb API Reference
+
+### `mg_get_user_connection_data( conn );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`const struct mg_connection *`|The connection for which to return 
the user data|
+
+### Return Value
+
+| Type | Description | 
+| :--- | :--- |
+|`void *`|A pointer to the user data, or NULL if no user data was registered 
with the connection|
+
+### Description
+
+The function `mg_get_user_connection_data()` returns the user data associated 
with a connection. This user data is represented with a pointer which has been 
prevously registered with a call to 
[`mg_set_user_connection_data();`](mg_set_user_connection_data.md). With this 
function it is possible to pass state information between callback functions 
refering to a specific connection.
+
+### See Also
+
+* [`mg_set_user_connection_data();`](mg_set_user_connection_data.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_data.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_data.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_data.md
new file mode 100644
index 0000000..87bbe04
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_user_data.md
@@ -0,0 +1,23 @@
+# Civetweb API Reference
+
+### `mg_get_user_data( ctx );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`const struct mg_context *`|The context for which the user data is 
requested|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`void *`||
+
+### Description
+
+The function `mg_get_user_data()` returns the user data associated with a 
Civetweb context. This is a pointer value which has previously been used in the 
call to [`mg_start()`](mg_start.md) to initialize the server context.
+
+### See Also
+
+* [`mg_start();`](mg_start.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_option_names.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_option_names.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_option_names.md
new file mode 100644
index 0000000..c6b43ad
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_option_names.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### ~~`mg_get_valid_option_names();`~~
+
+### Parameters
+
+*none*
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char **`|An array with strings where the even elements represent the 
option names, and the odd element the option values The array is NULL 
terminated.|
+
+### Description
+
+The function `mg_get_valid_option_names()` is depricated. Use 
[`mg_get_valid_options()`](mg_get_valid_options.md) instead.
+
+This function returns an array with option/value pairs describing the valid 
configuration options for Civetweb. En element value of NULL signals the end of 
the list.
+
+### See Also
+
+* [`struct mg_option;`](mg_option.md)
+* [`mg_get_valid_options();`](mg_get_valid_options.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_options.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_options.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_options.md
new file mode 100644
index 0000000..fd6755e
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_valid_options.md
@@ -0,0 +1,22 @@
+# Civetweb API Reference
+
+### `mg_get_valid_options();`
+
+### Parameters
+
+*none*
+
+### Return Value
+
+| Type | Description | 
+| :--- | :--- |
+|`const struct mg_option *`|An array with all valid configuration options|
+
+### Description
+
+The function `mg_get_valid_options()` returns an array with all valid 
configuration options of Civetweb. Each element in the array is a structure 
with three fields which represent the name of the option, the value of the 
option and the type of the value. The array is terminated with an element for 
which the name is `NULL`. See for more details about this structure the 
documentation of [`struct mg_option`](mg_option.md).
+
+### See Also
+
+* [`struct mg_option;`](mg_option.md)
+* [`mg_start();`](mg_start.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_var.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_var.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_var.md
new file mode 100644
index 0000000..c21c7bb
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_var.md
@@ -0,0 +1,30 @@
+# Civetweb API Reference
+
+### `mg_get_var( data, data_len, var_name, dst, dst_len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`data`**|`const char *`|Encoded buffer from either POST data or the URI of 
a GET call|
+|**`data_len`**|`size_t`|Size of the encode buffer including the terminating 
NULL|
+|**`var_name`**|`const char *`|Name of the variable to search for|
+|**`dst`**|`char *`|Output buffer to store the content of the variable|
+|**`dst_len`**|`size_t`|Length of the output buffer|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The length of the variable or an error code|
+
+### Description
+
+The function `mg_get_var()` returns the value of a variable which is passed to 
the server with either a POST method, or as a parameter in the URI of a GET 
call. The data pointer passed to the function points to a form-URI encoded 
buffer. This can either be POST data or the `request_info.query_string`. The 
name of the searched variable and a buffer to store the results are also 
parameters to the function.
+
+The function either returns the length of the variable when successful, 
**`-1`** if the variable could not be found and **`-2`** if the destination 
buffer is NULL, has size zero or is too small to store the resulting variable 
value.
+
+### See Also
+
+* [`mg_get_cookie();`](mg_get_cookie.md)
+* [`mg_get_var2();`](mg_get_var2.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_get_var2.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_get_var2.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_get_var2.md
new file mode 100644
index 0000000..3a47d91
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_get_var2.md
@@ -0,0 +1,31 @@
+# Civetweb API Reference
+
+### `mg_get_var2( data, data_len, var_name, dst, dst_len, occurrence );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`data`**|`const char *`|Encoded data buffer from either POST data or a GET 
URI|
+|**`data_len`**|`size_t`|The size of the encoded data buffer|
+|**`var_name`**|`const char *`|The name of the variable to search for|
+|**`dst`**|`char *`|Destination buffer to store the variable content|
+|**`dst_len`**|`size_t`|The size of the destination buffer including the 
terminating NUL|
+|**`occurrence`**|`size_t`|The instance index of the wanted variable|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Length of the variable contents, or an error code|
+
+### Description
+
+The function `mg_get_var2()` can be used to return the contents of a variable 
passed to the server as either POST data, or in the URI in a GET call. The 
function is somilar to [`mg_get_var()`](mg_get_var.md) but the difference is 
that `mg_get_var2()` can be used if the same variable is present multiple times 
in the data. The `occurence` parameter is used to identify which instance of 
the variable must be returned where **`0`** is used for the first variable with 
the specified name, **`1`** for the second and so on.
+
+The function returns the length of the variable content in the return buffer, 
**`-1`** if a variable with the specified name could not be found and **`-2`** 
if the pointer to the result buffer is NULL, the size of the result buffer is 
zero or when the result buffer is too small to contain the variable content and 
terminating NUL.
+
+### See Also
+
+* [`mg_get_cookie();`](mg_get_cookie.md)
+* [`mg_get_var();`](mg_get_var.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_handle_form_request.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_handle_form_request.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_handle_form_request.md
new file mode 100644
index 0000000..4a1d888
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_handle_form_request.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_handle_form_request( conn, fdh );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection on which form data must be 
processed|
+|**`fdh`**|`struct mg_form_data_handler`|Structure with callback functions to 
to the heavy work|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The number of fields processed, or an error code|
+
+### Description
+
+The function `mg_handle_form_request()` processes form data on a connection. 
The function uses callback functions for the heavy lifting which are passed to 
the function as fields in a [`struct 
mg_form_data_handler`](mg_form_data_handler.md) structure. The number of 
processed fields is returned by the function, or a negative value when an error 
occured. I nthe situation where some fields are processed successfully (for 
example file downloads) and an error occurs later in the form processing, the 
function still returns a negative value. It is the responsibility of the 
calling party to do the necessary cleanup. The calling party should also do the 
cleanup of any files which are created, but not required anymore later.
+
+### See Also
+
+* [`struct mg_form_data_handler;`](mg_form_data_handler.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_header.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_header.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_header.md
new file mode 100644
index 0000000..403dc88
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_header.md
@@ -0,0 +1,18 @@
+# Civetweb API Reference
+
+### `struct mg_header;`
+
+### Fields
+
+| Field | Type | Description |
+| :--- | :--- | :--- |
+|**`name`**|`const char *`| The name of the client request header |
+|**`value`**|`const char *`| The value of the client request header |
+
+### Description
+
+The structure `mg_header` is used as a sub-structure in the [`struct 
mg_request_info;`](mg_request_info.md) structure to store the name and value of 
one HTTP request header as sent by the client.
+
+### See Also
+
+* [`struct mg_request_info;`](mg_request_info.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_lock_connection.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_lock_connection.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_lock_connection.md
new file mode 100644
index 0000000..167f922
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_lock_connection.md
@@ -0,0 +1,26 @@
+# Civetweb API Reference
+
+### `mg_lock_connection( conn );`
+
+### Parameters
+
+| Parameter | Type | Description |
+|**`conn`**|`struct mg_connection *`|The connection to retrieve a lock|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_lock_connection()` is specifically for websocket connections 
to lock connection. Using this function in combination with 
[`mg_unlock_connection();`](mg_unlock_connection.md) is necessary around 
[`mg_write()`](mg_write.md) and [`mg_printf()`](mg_printf.md) calls if the code 
has server-initiated communication, as well as with communication in direct 
response to a message.
+
+### See Also
+
+* [`mg_lock_context();`](mg_lock_context.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)
+* [`mg_unlock_context();`](mg_unlock_context.md)
+* [`mg_websocket_client_write();`](mg_websocket_client_write.md)
+* [`mg_websocket_write();`](mg_websocket_write.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_lock_context.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_lock_context.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_lock_context.md
new file mode 100644
index 0000000..8be6bac
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_lock_context.md
@@ -0,0 +1,23 @@
+# Civetweb API Reference
+
+### `mg_lock_context( ctx );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`struct mg_context *`|The context to put the lock on|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_lock_context()` can be used to acquire a lock for exclusive 
access to resources which are shared between connection of threads. The lock is 
context wide. The lock must be released with a call to 
[`mg_unlock_context()`](mg_unlock_context.md).
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)
+* [`mg_unlock_context();`](mg_unlock_context.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_md5.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_md5.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_md5.md
new file mode 100644
index 0000000..067a6a2
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_md5.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_md5( buf, ... );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`buf`**|`char[33]`|Storage buffer for the calculated MD5 sum|
+|**`...`**|`char *, ...`|NULL terminated list of pointers to strings with data|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`char *`|Pointer to the resulting MD5 string|
+
+### Description
+
+The function `mg_md5()` caluclates the MD5 checksum of a NULL terminated list 
of NUL terminated ASCII strings. The MD5 checksum is returned in human readable 
format as an MD5 string in a caller supplied buffer.
+
+The function returns a pointer to the supplied result buffer.
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_modify_passwords_file.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_modify_passwords_file.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_modify_passwords_file.md
new file mode 100644
index 0000000..5aa2069
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_modify_passwords_file.md
@@ -0,0 +1,28 @@
+# Civetweb API Reference
+
+### `mg_modify_passwords_file( passwords_file_name, domain, user, password );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`passwords_file_name`**|`const char *`|The path to the passwords file|
+|**`domain`**|`const char *`|The domain of the user record|
+|**`user`**|`const char *`|Username of the record to be added, changed or 
deleted|
+|**`password`**|`const char *`|Password associated with the user or NULL if 
the record must be deleted|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Success or error code|
+
+### Description
+
+The function `mg_modify_passwords_file()` allows an application to manipulate 
.htpasswd files on the fly by adding, deleting and changing user records. This 
is one of the several ways to implement authentication on the server side.
+
+If the password parameter is not `NULL` an entry is added to the password 
file. An existing records is modified in that case. If `NULL` is used as the 
password the enrty is removed from the file.
+
+The function returns 1 when successful and 0 if an error occurs.
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_option.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_option.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_option.md
new file mode 100644
index 0000000..dd7f090
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_option.md
@@ -0,0 +1,31 @@
+# Civetweb API Reference
+
+### `struct mg_option;`
+
+### Fields
+
+| Field | Type | Description |
+| :--- | :--- | :--- |
+|**`name`**|`const char *`|Name of the option|
+|**`type`**|`int`|Type of the option|
+|**`default_value`**|`const char *`|Value of the option|
+
+### Description
+
+A list of valid configuration options of the Civetweb instance can be 
retrieved with a call to [`mg_get_valid_options()`](mg_get_valid_options.md). 
This function fills a list of `struct mg_option` structures where the content 
of each structure represents a configuration option. Each structure contains 
three fields. One field contains the name of the option, the second contains 
the value of the option and the third is an identifier used to define the type 
of the option and how the value contents should be interpreted.
+
+The field `type` can be one of the following values:
+
+|Value|Description|
+| :--- | :--- |
+|**`CONFIG_TYPE_UNKNOWN`**|The type of the option value is unknown|
+|**`CONFIG_TYPE_NUMBER`**|The option value is an integer|
+|**`CONFIG_TYPE_STRING`**|The option value is a number|
+|**`CONFIG_TYPE_FILE`**|The option value is a file name|
+|**`CONFIG_TYPE_DIRECTORY`**|The option value is a directory name|
+|**`CONFIG_TYPE_BOOLEAN`**|The option value is a boolean|
+|**`CONFIG_TYPE_EXT_PATTERN`**|The option value is a list of regular 
expression patterns|
+
+### See Also
+
+* [`mg_get_valid_options();`](mg_get_valid_options.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_printf.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_printf.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_printf.md
new file mode 100644
index 0000000..8beb9c0
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_printf.md
@@ -0,0 +1,27 @@
+# Civetweb API Reference
+
+### `mg_printf( conn, fmt, ... );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection over which the data must 
be sent|
+|**`fmt`**|`const char *`|Format string|
+|**`...`**|*various*|Parameters as specified in the format string|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Number of bytes written or an error code|
+
+### Description
+
+The function `mg_printf()` can be used to send formatted strings over a 
connection. The functionality is comparable to the `printf()` family of 
functions in the standard C library. The function returns **0** when the 
connection has been closed, **-1** if an error occurred and otherwise the 
number of bytes written over the connection. Except for the formatting part, 
the `mg_printf()` function is identical to the function 
[`mg_write()`](mg_write.md).
+
+### See Also
+
+* [`mg_websocket_client_write();`](mg_websocket_client_write.md)
+* [`mg_websocket_write();`](mg_websocket_write.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_read.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_read.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_read.md
new file mode 100644
index 0000000..c7ec6c3
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_read.md
@@ -0,0 +1,26 @@
+# Civetweb API Reference
+
+### `mg_read( conn, buf, len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`| A pointer referencing the connection |
+|**`buf`**|`void *`| A pointer to the location where the received data can be 
stored |
+|**`len`**|`size_t`| The maximum number of bytes to be stored in the buffer |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`| The number of read bytes, or a status indication |
+
+### Description
+
+The function `mg_read()` receives data over an existing connection. The data 
is handled as binary and is stored in a buffer whose address has been provided 
as a parameter. The function returns the number of read bytes when successful, 
the value **0** when the connection has been closed by peer and a negative 
value when no more data could be read from the connection.
+
+### See Also
+
+* [`mg_printf();`](mg_printf.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_request_info.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_request_info.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_request_info.md
new file mode 100644
index 0000000..b0689bf
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_request_info.md
@@ -0,0 +1,34 @@
+# Civetweb API Reference
+
+### `struct mg_request_info;`
+
+### Fields
+
+| Field | Type | Description |
+| :--- | :--- | :--- |
+|**`request_method`**|`const char *`| The request method used by the client 
for the connection this can be **GET**, **POST** or one of the other common 
HTTP request methods |
+|**`request_uri`**|`const char *`| The absolute or URL-encoded URI as it was 
sent in the request |
+|**`local_uri`**|`const char *`| The relative URL-encoded URI as it references 
the local resource. If the request URI does not reference a resource on the 
local server, this field is NULL |
+|~~`uri`~~|`const char *`| *Deprecated. Use* `local_uri` *instead* |
+|**`http_version`**|`const char *`| The HTTP version as mentioned in the 
client request. This can be "1.0", "1.1", etc. |
+|**`remote_user`**|`const char *`| The name of the authenticated remote user, 
or NULL if no authentication was used |
+|**`remote addr`**|`char[48]`| The IP address of the remote client as a 
string. This can either represent an IPv4 or an IPv6 address. |
+|~~`remote_ip`~~|`long`| *Deprecated. Use* `remote_addr` *instead* |
+|**`content_length`**|`long long`| The content length of the request body. 
This value can be -1 if no content length was provided. |
+|**`remote_port`**|`int`| The port number at the client's side |
+|**`is_ssl`**|`int`| 1 if the connection is over SSL, and 0 if it is a plain 
connection |
+|**`user_data`**|`void *`| A pointer to the `user_data` information which was 
provided as a parameter to `mg_start()`. |
+|**`conn_data`**|`void *`| A pointer to connection specific user data |
+|**`num_headers`**|`int`| The number of HTTP request headers sent by the 
client |
+|**`http_headers`**|`struct mg_header[64]`| Array of structures with the HTTP 
request headers sent by the client |
+|**`client_cert`**|`struct client_cert *`| Pointer to the client certificate 
information, when available |
+
+### Description
+
+The `mg_request_info` structure contains the client information of an existing 
connection.
+
+### See Also
+
+* [`struct client_cert;`](client_cert.md)
+* [`struct mg_header;`](mg_header.md)
+* [`mg_get_request_info();`](mg_get_request_info.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_send_file.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_send_file.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_send_file.md
new file mode 100644
index 0000000..bffe075
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_send_file.md
@@ -0,0 +1,25 @@
+# Civetweb API Reference
+
+### `mg_send_file( conn, path );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection over which the file must 
be sent|
+|**`path`**|`const char *`|The full path and filename of the file|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_send_file()` sends the contents of a file over a connection 
to the remote peer. The function also adds the necessary HTTP headers.
+
+### See Also
+
+* [`mg_printf();`](mg_printf.md)
+* [`mg_send_mime_file();`](mg_send_mime_file.md)
+* [`mg_send_mime_file2();`](mg_send_mime_file2.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file.md
new file mode 100644
index 0000000..424b0dc
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file.md
@@ -0,0 +1,27 @@
+# Civetweb API Reference
+
+### `mg_send_mime_file( conn, path, mime_type );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection over which the file must 
be sent|
+|**`path`**|`const char *`|The full path and filename of the file|
+|**`mime_type`**|`const char *`|The mime type of the file, or NULL for 
automatic detection|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_send_mime_file()` sends a file over a connection including 
the HTTP headers. The function is similar to the 
[`mg_send_file()`](mg_send_file.md) with the additional functionality that the 
MIME type of the file can be specified. If the `mime_type` parameter is NULL, 
the routine will try to determine the MIME type based on the extension of the 
filename.
+
+### See Also
+
+* [`mg_get_builtin_mime_type();`](mg_get_builtin_mime_type.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_send_file();`](mg_send_file.md)
+* [`mg_send_mime_file2();`](mg_send_mime_file2.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file2.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file2.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file2.md
new file mode 100644
index 0000000..1350df8
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_send_mime_file2.md
@@ -0,0 +1,30 @@
+# Civetweb API Reference
+
+### `mg_send_mime_file2( conn, path, mime_type, additional_headers );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|The connection over which the file must 
be sent|
+|**`path`**|`const char *`|The full path and filename of the file|
+|**`mime_type`**|`const char *`|The mime type or NULL for automatic detection|
+|**`additional_headers`**|`const char *`|Additional headers to be sent|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_send_mime_file2()` can be used to send a file over a 
connection. The function is similar to 
[`mg_send_mime_file()`](mg_send_mime_file.md) with the additional functionality 
that user specified headers can be sent. The MIME type of the file can be 
specified in the function call, or will be automatically determined based on 
the extension of the filename if the `mime_type` parameter has the value NULL.
+
+Additional custom header fields can be added as a parameter. Please make sure 
that these header names begin with `X-` to prevent name clashes with other 
headers. If the `additional_headers` parameter is NULL, no custom headers will 
be added.
+
+### See Also
+
+* [`mg_get_builtin_mime_type();`](mg_get_builtin_mime_type.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_send_file();`](mg_send_file.md)
+* [`mg_send_mime_file();`](mg_send_mime_file.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_server_ports.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_server_ports.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_server_ports.md
new file mode 100644
index 0000000..e969f03
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_server_ports.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `struct mg_server_ports;`
+
+### Fields
+
+| Field | Type | Description |
+| :--- | :--- | :--- |
+|**`protocol`**|`int`|The protocol mask where `IPv4` is **1**, `IPv6` is **2** 
and both `IPv4` and `IPv6` is **3**|
+|**`port`**|`int`|The port number on which the service listens|
+|**`is_ssl`**|`int`|**0** for `HTTP` communication, **1** for `HTTPS`|
+|**`is_redirect`**|`int`|**1** if all requests are redirected, otherwise **0**|
+|**`_reserved1`**|`int`|Reserved for internal use|
+|**`_reserved2`**|`int`|Reserved for internal use|
+|**`_reserved3`**|`int`|Reserved for internal use|
+|**`_reserved4`**|`int`|Reserved for internal use|
+
+### Description
+
+A call to the function [`mg_get_server_ports()`](mg_get_server_ports.md) 
returns a list of structures with information about each running Civetweb 
service. These structures are of type `struct mg_server_ports` and contain the 
base information of each service.
+
+### See Also
+
+* [`mg_get_server_ports();`](mg_get_server_ports.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_set_auth_handler.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_set_auth_handler.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_set_auth_handler.md
new file mode 100644
index 0000000..302324a
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_set_auth_handler.md
@@ -0,0 +1,30 @@
+# Civetweb API Reference
+
+### `mg_set_auth_handler( ctx, uri, handler, cbdata );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`struct mg_context *`|The context on which the handler must be set|
+|**`uri`**|`const char *`|The URI for the authorization handler|
+|**`handler`**|`mg_authorization_handler`|Callback function doing the actual 
authorization|
+|**`cbdata`**|`void *`|Optional user data|
+
+`int mg_authorization_handler( struct mg_connection *conn, void *cbdata );`
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_set_auth_handler()` hooks an authorization function to an URI 
to check if a user is authorized to visit that URI. The check is performed by a 
callback function of type `mg_authorization_handler`. The callback function is 
passed two parameters: the current connection and a pointer to optional user 
defined data which was passed to `mg_set_auth_handler()` when the callback was 
hooked to the URI.
+
+The callback function can return **0** to deny access, and **1** to allow 
access.
+
+The `mg_set_auth_handler()` function is very similar in use to 
[`mg_set_request_handler()`](mg_set_request_handler.md).
+
+### See Also
+
+* [`mg_set_request_handler();`](mg_set_request_handler.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_set_request_handler.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_set_request_handler.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_set_request_handler.md
new file mode 100644
index 0000000..95a09a0
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_set_request_handler.md
@@ -0,0 +1,26 @@
+# Civetweb API Reference
+
+### `mg_set_request_handler( ctx, uri, handler, cbdata );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`struct mg_context *`|The context where the handler must be active|
+|**`uri`**|`const char *`|The URI to hook the handler on|
+|**`handler`**|`mg_request_handler`|Callback function doing the heavy lifting|
+|**`cbdata`**|`void *`|Optional user supplied data|
+
+`int mg_request_handler( struct mg_connection *conn, void *cbdata );`
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_set_request_handler()` hooks a callback function on a URI. 
That callback function is called whenever a client requests the specific URI. 
The callback function receives the connection information and optional user 
supplied data as parameters and can serve information back to the client. When 
the callback function does not send any information back to the client, it 
should return **0** to signal Civetweb that the Civetweb core should handle the 
request. A return value between 1 and 999 is used to tell Civetweb that the 
request has been handled and no further processing is necessary. The returned 
code is stored as the status code in the access log, it is therefore 
recommended, although not mandatory to return a status code which matches the 
state of the request.
+
+### See Also
+
+* [`mg_set_auth_handler();`](mg_set_auth_handler.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_set_user_connection_data.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_set_user_connection_data.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_set_user_connection_data.md
new file mode 100644
index 0000000..dad69b8
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_set_user_connection_data.md
@@ -0,0 +1,22 @@
+# Civetweb API Reference
+
+### `mg_set_user_connection_data( conn, data );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|connection to add the user data|
+|**`data`**|`void *`|Pointer to the user data|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_set_user_connection_data()` can be used to add or change the 
user data pointer attached to a connection. Using the value NULL in the call 
will remove a previously assigned user data pointer.
+
+### See Also
+
+* [`mg_get_user_connection_data();`](mg_user_connection_data.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_set_websocket_handler.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_set_websocket_handler.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_set_websocket_handler.md
new file mode 100644
index 0000000..f838c81
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_set_websocket_handler.md
@@ -0,0 +1,30 @@
+# Civetweb API Reference
+
+### `mg_set_websocket_handler( ctx, uri, connect_handler, ready_handler, 
data_handler, close_handler, cbdata );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`mg_context *`|The context in which to add the handlers|
+|**`uri`**|`const char *`|The URI for which the handlers should be activated|
+|**`connect_handler`**|`mg_websocket_connect_handler`|Handler called when a 
connect is signalled|
+|**`ready_handler`**|`mg_websocket_ready_handler`|Handler called when the 
connection is ready|
+|**`data_handler`**|`mg_websocket_data_handler`|Handler called when data is 
received|
+|**`close_handler`**|`mg_websocket_close_handler`|Handler called when the 
connection closes|
+|**`cbdata`**|`void *`|User defined data|
+
+`int mg_websocket_connect_handler( const struct mg_connection *conn, void 
*cbdata );`
+`int mg_websocket_ready_handler( struct mg_connection *conn, void *cbdata );`
+`int mg_websocket_data_handler( struct mg_connection *conn, int opcode, char * 
buf, size_t buf_len, void *cbdata );`
+`int mg_websocket_close_handler( const struct mg_connection *conn,  void 
*cbdata );`
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_set_websocket_handler()` connects callback functions to a 
websocket URI. The callback functions are called when a state change is 
detected on the URI like an incomming connection or data received from a remote 
peer.
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_start.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_start.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_start.md
new file mode 100644
index 0000000..c597d55
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_start.md
@@ -0,0 +1,39 @@
+# Civetweb API Reference
+
+### `mg_start( callbacks, user_data, options );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`callbacks`**|`const struct mg_callbacks *`| A structure with optional 
callback functions to process requests from the web server |
+|**`user_data`**|`void *`| A pointer to optional user data |
+|**`options`**|`char **`| A list of options used to initialize the web server. 
The list consists of an NULL terminated list of option-value string pairs. |
+
+The option list can be used to set the following options:
+
+| Option | Default | Description |
+| :--- | :--- | :--- |
+| **`cgi_environment`** | *empty* | The option `cgi_environment` can contain 
extra variables to be passed to the CGI script in addition to the standard 
environment variables. The lust must be a comma separated list of name=value 
pairs like this: `VARIABLE1=VALUE1,VARIABLE2=VALUE2`.|
+| **`cgi_interpreter`**| *empty* | The option `cgi_interpreter` can contain a 
path to an executable which will be used as a CGI interpreter for **all** CGI 
scripts regardless of the script file extension. If this option is not set 
(which is the default), CivetWeb looks at the first line of a CGI script to see 
if an interpreter is defined there. This first line is formatted as a shebang 
line as common in unix style shell scripts, but this will also work in Windows. 
For more information about the syntax, please see the Wikipedia page about the 
[shebang line](http://en.wikipedia.org/wiki/Shebang_(Unix\)).|
+| | |For example on a Windows system where both PHP and Perl CGI scripts are 
used, `#!/path/to/php-cgi.exe` and `#!/path/to/perl.exe` must be the first line 
of the respective CGI scripts. Note that the paths should be either full file 
paths, or file paths relative to the current working directory of the CivetWeb 
server. The current working directory may be dependent on the way the 
application is started. When started from the command line it is the directory 
from where the executable was called, but when starting it from a shortcut in a 
graphical desktop environment, it will be the directory where the executable is 
located, the default directory of the user or a directory mentioned in the 
shortcut, depending on the operating system and graphical user interface used.|
+| | |If all CGIs use the same interpreter, it is more efficient to set the 
option `cgi_interpreter` to the path to that executable because in that case no 
processing of the shebang line is necessary. When using PHP, be sure to point 
tot php-cgi(.exe) and not the php(.exe) executable, as the latter is a stand 
alone interpreter which doesn't interface over CGI with CivetWeb.
+| **`cgi_pattern`** | `**.cgi$|**.pl$|**.php$` | All files that match 
`cgi_pattern` are treated as CGI files. The default pattern allows CGI files to 
be anywhere. To restrict CGIs to a certain directory, use 
`/path/to/cgi-bin/**.cgi` as a pattern. Note that the full path of the local 
file is matched against the pattern, not the URI provided in the client 
request.|
+|**`put_delete_auth_file`**| *empty* | The option `put_delete_auth_file` 
defines the password file to be used for PUT and DELETE requests. Without a 
password file it is not possible to put new files to the server, or to delete 
existing ones. This only applies to direct HTTP requests which use the PUT and 
DELETE methods without server side scripting. PUT and DELETE requests might 
still be handled by Lua scripts and CGI pages. |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`struct mg_context *`| A pointer to a context structure when successful, or 
NULL in case of failure |
+
+### Description
+
+The function `mg_start()` is the only function needed to call to initialize 
the webserver. After the function returns and a pointer to a context structure 
is provided, it is guaranteed that the server has started and is listening on 
the designated ports. In case of failure a NULL pointer is returned.  The 
behaviour of the web server is controlled by a list of callback functions and a 
list of options.  The callback functions can do application specific processing 
of events which are encountered by the webserver. If a specific callback 
function is set to NULL, the webserver uses their default callback routine. The 
options list controls how the webserver should be started and contains settings 
for for example the ports to listen on, the maximum number of threads created 
to handle requests in parallel and if settings for SSL encryption.
+
+As a side effect on Unix systems, SIGCHLD and SIGPIPE signals will be ignored. 
If custom processing is needed for these signals, signal handlers must be setup 
after the call to `mg_start()` has completed.
+
+### See Also
+
+* [`struct mg_callbacks;`](mg_callbacks.md)
+* [`mg_stop();`](mg_stop.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_start_thread.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_start_thread.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_start_thread.md
new file mode 100644
index 0000000..e817226
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_start_thread.md
@@ -0,0 +1,26 @@
+# Civetweb API Reference
+
+### `mg_start_thread( func, cbdata );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`func`**|`mg_thread_func_t`|Function to start as a separate thread|
+|**`cbdata`**|`void *`|User defined data to be passed to the thread as 
parameter|
+
+`void mg_thread_func_t( void *cbdata );`
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Success or error code|
+
+### Description
+
+The function `mg_start_thread()` is a convenience function to create a 
detached thread. The function returns **0** when successful and another value 
if an error occured. A pointer to user supplied data can be passed which is 
then passed further on to the thread function as parameter.
+
+### See Also
+
+* [`mg_start();`](mg_start.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_stop.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_stop.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_stop.md
new file mode 100644
index 0000000..ea0d246
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_stop.md
@@ -0,0 +1,22 @@
+# Civetweb API Reference
+
+### `mg_stop( ctx );`
+
+#### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|**`struct mg_context *`**| A pointer to the current webserver 
context |
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_stop()` is used to stop and cleanup a running webserver. A 
pointer to the context of the running webserver is provided as a parameter. The 
execution of this function may take some time because it waits until all 
threads have stopped and returns all memory to the heap. After the function 
returns, the location the context pointer points to is invalid. The function 
does not return a return value and it is therefore not possible to know if 
stopping the webserver succeeded or not.
+
+### See Also
+
+* [`mg_start();`](mg_start.md)
+* [`mg_start_thread();`](mg_start_thread.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_store_body.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_store_body.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_store_body.md
new file mode 100644
index 0000000..4cde44a
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_store_body.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_store_body( conn, path );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|connection on which to read the data|
+|**`path`**|`const char *`|file to store the request body|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`long long`|Number of bytes written to the file, or an error code|
+
+### Description
+
+The function `mg_store_body()` stores the body of an incoming request to a 
data file. The function returns the number of bytes stored in the file, or a 
negative value to indicate an error.
+
+### See Also
+
+* [`mg_read();`](mg_read.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_strcasecmp.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_strcasecmp.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_strcasecmp.md
new file mode 100644
index 0000000..cba6b92
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_strcasecmp.md
@@ -0,0 +1,24 @@
+# Civetweb API Reference
+
+### `mg_strcasecmp( s1, s2 );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`s1`**|`const char *`|First string to compare|
+|**`s2`**|`const char *`|Second string to compare|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Integer value with the result of the comparison|
+
+### Description
+
+The function `mg_strcasecmp()` is a helper function to compare two strings. 
The comparison is case insensitive. The return value is **0** if both strings 
are equal, less then zero if the first string is less than the second in a 
lexical comparison, and greater than zero if the first string is greater than 
the second.
+
+### See Also
+
+* [`mg_strncasecmp();`](mg_strncasecmp.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_strncasecmp.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_strncasecmp.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_strncasecmp.md
new file mode 100644
index 0000000..b4affd6
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_strncasecmp.md
@@ -0,0 +1,25 @@
+# Civetweb API Reference
+
+### `mg_strncasecmp( s1, s2, len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`s1`**|`const char *`|First string in the comparison|
+|**`s2`**|`const char *`|Second string in the comparison|
+|**`len`**|`size_t`|The maximum number of characters to compare|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The result of the comparison|
+
+### Description
+
+The function `mg_strncasecmp()` is a helper function to compare two strings. 
The comparison is case insensitive and only a limited number of characters are 
compared. This limit is provided as third parameter in the function call. The 
return value is **0** if both strings are equal, less then zero if the first 
string is less than the second in a lexical comparison, and greater than zero 
if the first string is greater than the second.
+
+### See Also
+
+* [`mg_strcasecmp();`](mg_strcasecmp.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_connection.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_connection.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_connection.md
new file mode 100644
index 0000000..b74138f
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_connection.md
@@ -0,0 +1,27 @@
+# Civetweb API Reference
+
+### `mg_unlock_connection( conn );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|Connection to remove the lock from|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_unlock_connection()` removes the lock on a connection which 
was previously set with a call to 
[`mg_lock_connection()`](mg_lock_connection.md). Locking may be necessary when 
using [`mg_write()`](mg_write.md) or [`mg_printf()`](mg_printf.md) on websocket 
connections to prevent data corruption.
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_lock_context();`](mg_lock_context.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_unlock_context();`](mg_unlock_context.md)
+* [`mg_websocket_client_write();`](mg_websocket_client_write.md)
+* [`mg_websocket_write();`](mg_websocket_write.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_context.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_context.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_context.md
new file mode 100644
index 0000000..a630acd
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_unlock_context.md
@@ -0,0 +1,23 @@
+# Civetweb API Reference
+
+### `mg_unlock_context( ctx );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`ctx`**|`struct mg_context *`|The context to remove the lock from|
+
+### Return Value
+
+*none*
+
+### Description
+
+The function `mg_unlock_contect()` removes a lock put previously on a context 
with a call to [`mg_lock_context()`](mg_lock_context.md). Locking a context may 
be necessary when accessing shared resources.
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_lock_context();`](mg_lock_context.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_upload.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_upload.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_upload.md
new file mode 100644
index 0000000..de7f1c8
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_upload.md
@@ -0,0 +1,22 @@
+# Civetweb API Reference
+
+### ~~`mg_upload( conn, destination_dir );`~~
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|Connection on which files to upload|
+|**`destination_dir`**|`const char *`|The destination directory to upload to|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Success or error code|
+
+### Description
+
+The function `mg_upload()` is deprecated and may be removed from future 
releases. Use of this function is therefore highly discouraged.
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_url_decode.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_url_decode.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_url_decode.md
new file mode 100644
index 0000000..6794088
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_url_decode.md
@@ -0,0 +1,27 @@
+# Civetweb API Reference
+
+### `mg_url_decode( src, src_len, dst, dst_len, is_form_url_encoded );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`src`**|`const char *`|Source data to convert|
+|**`src_len`**|`int`|Length of the source buffer|
+|**`dst`**|`char *`|Destination buffer to store the result|
+|**`dst_len`**|`int`|Length of the destination buffer|
+|**`is_form_url_encoded`**|`int`|Not equal zero when form decoding must be 
used|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The number of bytes stored in the destination buffer, or **-1** if the 
buffer doesn't exist or is too small|
+
+### Description
+
+The function `mg_url_decode()` Decodes a in input buffer. Both normal URIs and 
form URIs can be decoded. In the latter case the space character is converted 
to a `+` as defined in [RFC 
1866](http://ftp.ics.uci.edu/pub/ietf/html/rfc1866.txt) in section 8.2.1.
+
+### See Also
+
+* [`mg_url_encode();`](mg_url_encode.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_url_encode.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_url_encode.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_url_encode.md
new file mode 100644
index 0000000..465af12
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_url_encode.md
@@ -0,0 +1,25 @@
+# Civetweb API Reference
+
+### `mg_url_encode( src, dst, des_len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`src`**|`const char *`|Input string to encode|
+|**`dst`**|`char *`|Destination buffer to store the encoded result|
+|**`dst_len`**|`size_t`|Length of the destination buffer including the 
terminating NUL|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|The number of characters written in the destination buffer|
+
+### Description
+
+The function `mg_url_encode()` encodes a in input buffer. Both normal URIs and 
form URIs can be encoded. In the latter case the space character is converted 
to a `+` as defined in [RFC 
1866](http://ftp.ics.uci.edu/pub/ietf/html/rfc1866.txt) in section 8.2.1.
+
+### See Also
+
+* [`mg_url_decode();`](mg_url_decode.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_version.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_version.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_version.md
new file mode 100644
index 0000000..a31128b
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_version.md
@@ -0,0 +1,19 @@
+# Civetweb API Reference
+
+### `mg_version();`
+
+### Parameters
+
+*none*
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`const char *`| A pointer to a text with the current CivetWeb version |
+
+### Description
+
+The function `mg_version()` can be used to return the current CivetWeb 
version.  The function returns a pointer to a string with the current major and 
minor version number separated with a dot, for example "1.9".
+
+### See Also

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_client_write.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_client_write.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_client_write.md
new file mode 100644
index 0000000..f792f4c
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_client_write.md
@@ -0,0 +1,32 @@
+# Civetweb API Reference
+
+### `mg_websocket_client_write( conn, opcode, data, data_len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|Connection on which to send data|
+|**`opcode`**|`int`|Opcode|
+|**`data const`**|`char *`|The data to be written|
+|**`data_len`**|`size_t`|Length of the data buffer|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Number of bytes written or an error code|
+
+### Description
+
+The function `mg_websocket_client_write()` sends data to a websocket server 
wrapped in a masked websocket frame. The function issues calls to 
[`mg_lock_connection()`](mg_lock_connection.md) and 
[`mg_unlock_connection()`](mg_unlock_connection.md) to ensure that the 
transmission is not interrupted. Interruption can happen the the application is 
proactively communicating and responding to a request simultaneously. This 
function is available only, if Civetweb is compiled with the option 
`-DUSE_WEBSOCKET`.
+
+The return value is the number of bytes written on success, **0** when the 
connection has been closed and **-1** if an error occured.
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)
+* [`mg_websocket_write();`](mg_websocket_write.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_write.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_write.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_write.md
new file mode 100644
index 0000000..764eebd
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_websocket_write.md
@@ -0,0 +1,34 @@
+# Civetweb API Reference
+
+### `mg_websocket_write( conn, opcode, data, data_len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`|Connection on which the data must be 
written|
+|**`opcode`**|`int`|Opcode|
+|**`data`**|`const char *`|Data to be written to the client|
+|**`data_len`**|`size_t`|Length of the data|
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`|Number of bytes written or an error code|
+
+### Description
+
+The function `mg_websocket_write()` sends data to a websocket client wrapped 
in a websocket frame. The function issues calls to 
[`mg_lock_connection()`](mg_lock_connection.md) and 
[`mg_unlock_connaction()`](mg_unlock_connection.md) to ensure that the 
transmission is not interrupted. Data corruption can otherwise happn if the 
application is proactively communicating and responding to a request 
simultaneously.
+
+The function is available only when Civetweb is compilet with the 
`-DUSE_WEBSOCKET` option.
+
+The function returns the number of bytes written, **0** when the connection 
has been closed and **-1** if an error occured.
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_printf();`](mg_printf.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)
+* [`mg_websocket_client_write();`](mg_websocket_client_write.md)
+* [`mg_write();`](mg_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/api/mg_write.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/api/mg_write.md 
b/thirdparty/civetweb-1.9.1/docs/api/mg_write.md
new file mode 100644
index 0000000..d501857
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/api/mg_write.md
@@ -0,0 +1,29 @@
+# Civetweb API Reference
+
+### `mg_write( conn, buf, len );`
+
+### Parameters
+
+| Parameter | Type | Description |
+| :--- | :--- | :--- |
+|**`conn`**|`struct mg_connection *`| A pointer to the connection to be used 
to send data |
+|**`buf`**|`const void *`| A pointer to the blob of information to be sent |
+|**`len`**|`size_t`| The amount of bytes to be sent |
+
+### Return Value
+
+| Type | Description |
+| :--- | :--- |
+|`int`| An integer indicating the amount of bytes sent, or failure |
+
+### Description
+
+The function `mg_write()` can be used to send a blob of arbitrary data over a 
connection. The size of the data is provided as a parameter. The only length 
limitation on this function is `MAX_INT`, because the return value of this 
function will turn negative with larger blocks of data, although they may have 
been sent correctly. The function returns the amount of bytes sent in case of 
success, the value **0** when the connection has been closed, and **-1** in 
case of an error.
+
+### See Also
+
+* [`mg_lock_connection();`](mg_lock_connection.md)
+* [`mg_printf();`](mg_print.md)
+* [`mg_unlock_connection();`](mg_unlock_connection.md)
+* [`mg_websocket_client_write();`](mg_websocket_client_write.md)
+* [`mg_websocket_write();`](mg_websocket_write.md)

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/docs/yaSSL.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/docs/yaSSL.md 
b/thirdparty/civetweb-1.9.1/docs/yaSSL.md
new file mode 100644
index 0000000..7f2e85f
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/docs/yaSSL.md
@@ -0,0 +1,87 @@
+Adding wolfSSL (formerly CyaSSL) support
+=====
+
+In order to support SSL *HTTPS* connections in Civetweb,
+you may wish to use the GPLv2 licensed CyaSSL library.  By using this
+library, the resulting binary may have to have the GPL license unless
+you buy a commercial license from [wolfSSL](http://www.yassl.com/).
+
+*Note: The following instructions have not been checked for the most recent 
versions of CivetWeb and wolfSSL. Some information might be outdated.*
+
+
+Getting Started
+----
+
+- Download Cayssl at https://www.wolfssl.com (formerly http://www.yassl.com/)
+- Extract the zip file
+    - To make this seemless, extract to a directory parallel to with Civetweb 
is
+
+### Example Project
+
+If you download cyaSSL to cyassl-2.7.0 in a directory parallel to Civetweb, 
you can open the *VS/civetweb_yassl* solution in Visual Studio.
+
+Build Configuration
+----
+
+#### Required include paths for both civetweb and cyassl
+ - *cyassl_directory*\
+ - *cyassl_directory*\cyassl\
+
+#### Required civetweb preprocessor defines
+ - USE_YASSL
+ - NO_SSL_DL
+
+#### Required cySSL preprocessor defines
+ - OPENSSL_EXTRA
+ - HAVE_ERRNO_H
+ - HAVE_GETHOSTBYNAME
+ - HAVE_INET_NTOA
+ - HAVE_LIMITS_H
+ - HAVE_MEMSET
+ - HAVE_SOCKET
+ - HAVE_STDDEF_H
+ - HAVE_STDLIB_H
+ - HAVE_STRING_H
+ - HAVE_SYS_STAT_H
+ - HAVE_SYS_TYPES_H
+
+#### Required CyaSSL source files
+
+ - ctaocrypt/src/aes.c
+ - ctaocrypt/src/arc4.c
+ - ctaocrypt/src/asn.c
+ - ctaocrypt/src/coding.c
+ - ctaocrypt/src/des3.c
+ - ctaocrypt/src/dh.c
+ - ctaocrypt/src/dsa.c
+ - ctaocrypt/src/ecc.c
+ - ctaocrypt/src/error.c
+ - ctaocrypt/src/hc128.c
+ - ctaocrypt/src/hmac.c
+ - ctaocrypt/src/integer.c
+ - ctaocrypt/src/logging.c
+ - ctaocrypt/src/md2.c
+ - ctaocrypt/src/md4.c
+ - ctaocrypt/src/md5.c
+ - ctaocrypt/src/memory.c
+ - ctaocrypt/src/misc.c
+ - ctaocrypt/src/pwdbased.c
+ - ctaocrypt/src/rabbit.c
+ - ctaocrypt/src/random.c
+ - ctaocrypt/src/ripemd.c
+ - ctaocrypt/src/rsa.c
+ - ctaocrypt/src/sha.c
+ - ctaocrypt/src/sha256.c
+ - ctaocrypt/src/sha512.c
+ - ctaocrypt/src/tfm.c
+ - src/crl.c
+ - src/internal.c
+ - src/io.c
+ - src/keys.c
+ - src/ocsp.c
+ - src/sniffer.c
+ - src/ssl.c
+ - src/tls.c
+
+
+

http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/a9485aeb/thirdparty/civetweb-1.9.1/examples/README.md
----------------------------------------------------------------------
diff --git a/thirdparty/civetweb-1.9.1/examples/README.md 
b/thirdparty/civetweb-1.9.1/examples/README.md
new file mode 100644
index 0000000..523c52c
--- /dev/null
+++ b/thirdparty/civetweb-1.9.1/examples/README.md
@@ -0,0 +1,8 @@
+
+Examples
+=====
+
+These examples show how to embed civetweb into a C 
([embedded_c](https://github.com/civetweb/civetweb/tree/master/examples/embedded_c))
 or a C++ 
([embedded_cpp](https://github.com/civetweb/civetweb/tree/master/examples/embedded_cpp))
 application.
+The C++ wrapper only offers a subset of the full C API, thus the C example is 
more complete than the C++ example.
+
+Some no longer maintained examples can be found in the 
["obsolete"](https://github.com/civetweb/civetweb/tree/master/examples/_obsolete)
 folder. It is not guaranteed that they work in the current version - they are 
kept for reference, but might be removed in the future.

Reply via email to