SYNOPSIS
+#include <nanomsg/nn.h>
+
+void *nn_allocmsg(size_t size, int type);
+DESCRIPTION
+The nn_allocmsg() allocates a message structure of size size, and is
+primarily used to support zero-copy send operations, making use of the
+NNG_MSG special size indicator.
+The value returned is a pointer ot the start of the message payload buffer.
The value of size must be positive, and small enough to hold reasonable +message data plus book-keeping information.
+| + + | ++This function is provided for API +compatibility with legacy libnanomsg. +Consider using the relevant modern API instead. + | +
The value of type must be zero. +(This argument was reserved to support different kinds of memory spaces +for RDMA devices, but this was never developed in the legacy API.)
+The returned message must be disposed of by either
+nn_freemsg() or
+nn_send() when the caller is finished with it.
RETURN VALUES
+This function returns a pointer to message buffer space, or NULL
+on failure.
ERRORS
+
+ENOMEM
+ |
+
+ Insufficient memory is available. + |
+
+EINVAL
+ |
+
+ An invalid size or type was specified. + |
+
+ETERM
+ |
+
+ The library is shutting down. + |
+