From 51bebe0c6f137d293dbb6f1194ad3f6fca5b79e9 Mon Sep 17 00:00:00 2001
From: Garrett D'Amore <garrett@damore.org>
Date: Tue, 6 Feb 2018 16:07:10 -0800
Subject: Document HTTP server API completely.

---
 docs/nng_http_handler_set_host.adoc | 59 +++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)
 create mode 100644 docs/nng_http_handler_set_host.adoc

(limited to 'docs/nng_http_handler_set_host.adoc')

diff --git a/docs/nng_http_handler_set_host.adoc b/docs/nng_http_handler_set_host.adoc
new file mode 100644
index 00000000..470cbead
--- /dev/null
+++ b/docs/nng_http_handler_set_host.adoc
@@ -0,0 +1,59 @@
+= nng_http_handler_set_host(3)
+:doctype: manpage
+:manmanual: nng
+:mansource: nng
+:manvolnum: 3
+:copyright: Copyright 2018 mailto:info@staysail.tech[Staysail Systems, Inc.] + \
+            Copyright 2018 mailto:info@capitar.com[Capitar IT Group BV] + \
+            {blank} + \
+            This document is supplied under the terms of the \
+            https://opensource.org/licenses/MIT[MIT License].
+
+== NAME
+
+nng_http_handler_set_host - set host for HTTP handler
+
+== SYNOPSIS
+
+[source, c]
+-----------
+#include <nng/nng.h>
+
+int nng_http_handler_set_host(nng_http_handler *handler, const char *host);
+-----------
+
+== DESCRIPTION
+
+The `nng_http_handler_set_host()` function is used to limit the scope of the
+_handler_ so that it will only be called when the specified _host_ matches
+the value of the `Host:` HTTP header.
+
+TIP: This can be used to create servers with multiple handlers for virtual
+hosting.
+
+The value of the _host_ can include a colon and port, and should match
+exactly the value of the `Host` header sent by the client.  (Canonicaliztion
+of the host name is performed though.)
+
+TIP: As the server framework does not support listening on multiple
+ports, the port number can be elided.  The matching test only considers
+the hostname or IP address, and ignores any trailing port number.
+
+== RETURN VALUES
+
+This function returns 0 on success, and non-zero otherwise.
+
+== ERRORS
+
+`NNG_ENOMEM`:: Insufficient free memory to perform the operation.
+`NNG_ENOTSUP`:: No support for HTTP in the library.
+
+== SEE ALSO
+
+<<nng_http_handler_alloc#,nng_http_handler_alloc(3)>>,
+<<nng_http_server_add_handler#,nng_http_server_add_handler(3)>>,
+<<nng#,nng(7)>>
+
+== COPYRIGHT
+
+{copyright}
-- 
cgit v1.2.3-70-g09d2

