aboutsummaryrefslogtreecommitdiff
path: root/docs/man/nng_tls_config_own_cert.adoc
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2018-02-25 17:56:55 -0800
committerGarrett D'Amore <garrett@damore.org>2018-02-25 17:56:55 -0800
commit87795b46f2bc732bd11067805709161bdc00d6b6 (patch)
tree892f3bcea1a14df5dde8dba413d394f5ccb0a0e0 /docs/man/nng_tls_config_own_cert.adoc
parent545942f7ace7cde8a1b8a6a5289cecc185b08fbc (diff)
downloadnng-87795b46f2bc732bd11067805709161bdc00d6b6.tar.gz
nng-87795b46f2bc732bd11067805709161bdc00d6b6.tar.bz2
nng-87795b46f2bc732bd11067805709161bdc00d6b6.zip
More man page reorganization.
Man pages need special handling, and we can have other kinds of documentation like initial starting guides, etc., which would have different processing applied. So lets move them off into their own directory.
Diffstat (limited to 'docs/man/nng_tls_config_own_cert.adoc')
-rw-r--r--docs/man/nng_tls_config_own_cert.adoc62
1 files changed, 62 insertions, 0 deletions
diff --git a/docs/man/nng_tls_config_own_cert.adoc b/docs/man/nng_tls_config_own_cert.adoc
new file mode 100644
index 00000000..bd13fa92
--- /dev/null
+++ b/docs/man/nng_tls_config_own_cert.adoc
@@ -0,0 +1,62 @@
+= nng_tls_config_own_cert(3)
+//
+// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2018 Capitar IT Group BV <info@capitar.com>
+//
+// This document is supplied under the terms of the MIT License, a
+// copy of which should be located in the distribution where this
+// file was obtained (LICENSE.txt). A copy of the license may also be
+// found online at https://opensource.org/licenses/MIT.
+//
+
+== NAME
+
+nng_tls_config_own_cert - configure own certificate and key
+
+== SYNOPSIS
+
+[source, c]
+-----------
+#include <nng/nng.h>
+
+int nng_tls_config_own_cert(nni_tls_config *cfg, const char *cert,
+ const char *key, const char *pass);
+-----------
+
+== DESCRIPTION
+
+The `nng_tls_config_own_cert()` function configures a certificate _cert_
+identifying the local side of a TLS connection used with _cfg_, along with an
+associated private or secret key _key_. The certificate may be
+a chain, with the leaf signer first and the root at the end. The
+self-signed certificate at the end can be omitted. (The client should already
+have it, and will have to in order to validate this certificate anyway).
+
+The _key_ may be encrypted with a password, in which can be supplied in
+_pass_. The value `NULL` should be supplied for _pass_ if the key is not
+encrypted.
+
+On servers, it is possible to call this function multiple times for the
+same configuration. This can be useful for specifying different parameters
+to be used for different cryptographic algorithms.
+
+The certificate located in _cert_ and _key_ must be NUL (`\0`) terminated C
+strings containing
+https://tools.ietf.org/html/rfc7468[PEM] formatted material.
+
+== RETURN VALUES
+
+This function returns 0 on success, and non-zero otherwise.
+
+== ERRORS
+
+`NNG_ENOMEM`:: Insufficient memory is available.
+`NNG_EBUSY`:: The configuration _cfg_ is already in use, and cannot be modified.
+`NNG_EINVAL`:: An invalid _cert_ or _key_ was supplied.
+
+== SEE ALSO
+
+<<nng_strerror#,nng_strerror(3)>>,
+<<nng_tls_config_alloc#,nng_tls_config_alloc(3)>>,
+<<nng_tls_config_cert_key_file#,nng_tls_config_cert_key_file(3)>>,
+<<nng#,nng(7)>>