diff options
Diffstat (limited to 'docs/man/nng_tls_config_alloc.adoc')
| -rw-r--r-- | docs/man/nng_tls_config_alloc.adoc | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/docs/man/nng_tls_config_alloc.adoc b/docs/man/nng_tls_config_alloc.adoc new file mode 100644 index 00000000..e67982da --- /dev/null +++ b/docs/man/nng_tls_config_alloc.adoc @@ -0,0 +1,70 @@ += nng_tls_config_alloc(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_alloc - allocate TLS configuration object + +== SYNOPSIS + +[source, c] +----------- +#include <nng/nng.h> + +typedef enum nng_tls_mode { + NNG_TLS_MODE_CLIENT, + NNG_TLS_MODE_SERVER +} nng_tls_mode; + +int nng_tls_config_alloc(nni_tls_config **cfgp, nng_tls_mode mode); +----------- + +== DESCRIPTION + +The `nng_tls_config_alloc()` function creates a newly initialized +https://tools.ietf.org/html/rfc5246[Transport Layer Security]) +configuration object, and stores a pointer to it in the value pointed +to by _cfgp_. + +This object is initialized for use when acting as either a +client (`NNG_TLS_MODE_CLIENT`) or as a server (`NNG_TLS_MODE_SERVER`), +depending on the value of _mode_. + +A TLS object can be further modified by functions that set the security +keys used, peeer certificates, protocol policies, and so forth. + +A single TLS configuration object can be used with multiple TLS streams +or services. The underlying system uses reference counting to ensure +that object is not inadvertently freed while in use. + +Also note that a TLS configuration object becomes "read-only" after it +is first used with a service. After this points, attempts to apply +further changes to the configuration will result in `NNG_EBUSY`. + + +== RETURN VALUES + +This function returns 0 on success, and non-zero otherwise. + +== ERRORS + +`NNG_ENOMEM`:: Insufficient memory is available. +`NNG_EINVAL`:: An invalid _mode_ was specified. + +== SEE ALSO + +<<nng_strerror#,nng_strerror(3)>>, +<<nng_tls_config_auth_mode#,nng_tls_config_auth_mode(3)>>, +<<nng_tls_config_ca_chain#,nng_tls_config_ca_chain(3)>>, +<<nng_tls_config_own_cert#,nng_tls_config_own_cert(3)>>, +<<nng_tls_config_free#,nng_tls_config_free(3)>>, +<<nng_tls_config_server_name#,nng_tls_config_server_name(3)>>, +<<nng#,nng(7)>> |
