nanomsg next generation NNG  
Home GitHub Documentation

This documentation is for version v1.0.0 of nng, but the latest released version is v1.7.3. see the documentation for v1.7.3 for the most up-to-date information.


#include <nng/nng.h>

int nng_msg_insert(nng_msg *msg, const void *val, size_t size);

int nng_msg_insert(nng_msg *msg, uint32_t val32);


The nng_msg_insert() and nng_msg_insert_u32() functions prepend data to the front of the body of message msg, reallocating it if necessary. The first function prepends size bytes, copying them from val. The second function prepends the value val32 in network-byte order (big-endian).

This function makes use of pre-allocated “headroom” in the message if available, so it can often avoid performing any reallocation. Applications should use this instead of reallocating and copying message content themselves, in order to benefit from this capability.


This function returns 0 on success, and non-zero otherwise.



Insufficient free memory exists.

NNG Reference Manual vv1.0.0 © 2019 Staysail Systems, Inc, © 2018 Capitar IT Group BV
This document is supplied under the MIT License.
nanomsg™ and nng™ are trademarks of Garrett D'Amore.