This documentation is for version v1.3.0 of NNG, but the latest released version is v1.7.2. see the documentation for v1.7.2 for the most up-to-date information.

SYNOPSIS

#include <nng/nng.h>

int nng_msg_chop(nng_msg *msg, size_t size);
int nng_msg_chop_u16(nng_msg *msg, uint16_t *val16);
int nng_msg_chop_u32(nng_msg *msg, uint32_t *val32);
int nng_msg_chop_u64(nng_msg *msg, uint64_t *val64);

DESCRIPTION

The nng_msg_chop() family of functions removes data from the end of the body of message msg. The first function removes size bytes. The remaining functions remove 2, 4, or 8 bytes, and stores them in the value (such as val32), after converting them from network-byte order (big-endian) to native byte order.

RETURN VALUES

These functions return 0 on success, and non-zero otherwise.

ERRORS

NNG_EINVAL

The message body is too short to remove the requested data.