diff options
| author | Garrett D'Amore <garrett@damore.org> | 2018-03-15 08:40:17 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2018-03-17 08:49:12 -0700 |
| commit | 98f23e10cc1d65da6a7f6c7e4f5665d7afc27a86 (patch) | |
| tree | e3cc06524b26fd0773d1742de82a00862f95c5f6 /docs/man/nng_msg.5.adoc | |
| parent | 91866ed9365ab89069c12da41c873c23d0ba1d19 (diff) | |
| download | nng-98f23e10cc1d65da6a7f6c7e4f5665d7afc27a86.tar.gz nng-98f23e10cc1d65da6a7f6c7e4f5665d7afc27a86.tar.bz2 nng-98f23e10cc1d65da6a7f6c7e4f5665d7afc27a86.zip | |
fixes #286 nng_pair0_open (and all others) need man page
fixes #279 consider restructuring man sections
This represents a rather significant rework, and major editing
effort, for the entire set of manual pages.
All of the pages now have a section number in their filename;
this assists in some other tooling, particularly ebook generation
as every link needs to be programmatically modified when combined
into an ebook.
Section 5 is introduced, and populated with pages for the main
types, and all options are now documented.
Numerous errors have been corrected, including rewriting certain
portions such as the header section of the surveyor protocol.
Much work has been done to facilitate index generation, although
certainly more work remains here.
Every internal link within these pages now resolves; there are no
more dead links. (This is required to generate Kindle format books.)
Diffstat (limited to 'docs/man/nng_msg.5.adoc')
| -rw-r--r-- | docs/man/nng_msg.5.adoc | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/docs/man/nng_msg.5.adoc b/docs/man/nng_msg.5.adoc new file mode 100644 index 00000000..3b26bcf0 --- /dev/null +++ b/docs/man/nng_msg.5.adoc @@ -0,0 +1,70 @@ += nng_msg_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_msg - message + +== SYNOPSIS + +[source, c] +---- +#include <nng/nng.h> + +typedef struct nng_msg nng_msg; +---- + +== DESCRIPTION + +An `nng_msg` represents a single ((message)) sent between Scalability Protocols +peers. +Messages internally have a ((body)), containining the application supplied +payload, and a ((header)), containing protocol specific routing and similar +related information. + +TIP: Using the message-oriented functions in the <<nng.7#,_nng_>> API is +a good way to reduce the likelihood of data copies and improve application +performance. + +Messages are allocated using the <<nng_msg_alloc.3#,`nng_msg_alloc()`>> +function, and are deallocated using the <<nng_msg_free.3#,`nng_msg_free`>> +function. + +In addition there are other functions used to access message contents, +including adding data to either the beginning or end of the message, +automatic data conversion, and removing data from the beginning or end. +These functions are designed to try to avoid copying message contents +by making use of scratch areas at the beginning and end of the message. + +== RETURN VALUES + +This function returns 0 on success, and non-zero otherwise. + +== ERRORS + +`NNG_ENOMEM`:: Insufficient free memory exists to allocate a message. + +== SEE ALSO + +<<nng_aio_get_msg.3#,nng_aio_get_msg(3)>>, +<<nng_aio_set_msg.3#,nng_aio_set_msg(3)>>, +<<nng_msg_alloc.3#,nng_msg_alloc(3)>>, +<<nng_msg_body.3#,nng_msg_body(3)>>, +<<nng_msg_dup.3#,nng_msg_dup(3)>>, +<<nng_msg_free.3#,nng_msg_free(3)>>, +<<nng_msg_header.3#,nng_msg_header(3)>>, +<<nng_msg_header_len.3#,nng_msg_header_len(3)>>, +<<nng_msg_len.3#,nng_msg_len(3)>>, +<<nng_msg_realloc.3#,nng_msg_realloc(3)>>, +<<nng_recvmsg.3#,nng_recvmsg(3)>>, +<<nng_sendmsg.3#,nng_sendmsg(3)>>, +<<nng_strerror.3#,nng_strerror(3)>>, +<<nng.7#,nng(7)>> |
