= nng_msg_header_trim(3) // // Copyright 2018 Staysail Systems, Inc. // Copyright 2018 Capitar IT Group BV // // 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_header_trim - remove data from start of message header == SYNOPSIS [source, c] ---- #include int nng_msg_header_trim(nng_msg *msg, size_t size); int nng_msg_header_trim_u16(nng_msg *msg, uint16_t *val16); int nng_msg_header_trim_u32(nng_msg *msg, uint32_t *val32); int nng_msg_header_trim_u64(nng_msg *msg, uint64_t *val64); ---- == DESCRIPTION The `nng_msg_header_trim()` family of functions remove data from the start of the header of message _msg_. The first function removes _size_ bytes. The remaining functions removes 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 This function returns 0 on success, and non-zero otherwise. == ERRORS [horizontal] `NNG_EINVAL`:: The message header is too short to remove the requested data. == SEE ALSO [.text-left] xref:nng_msg_alloc.3.adoc[nng_msg_alloc(3)], xref:nng_msg_header.3.adoc[nng_msg_header(3)], xref:nng_msg_header_append.3.adoc[nng_msg_header_append(3)], xref:nng_msg_header_chop.3.adoc[nng_msg_header_chop(3)], xref:nng_msg_header_insert.3.adoc[nng_msg_header_insert(3)], xref:nng_msg_header_len.3.adoc[nng_msg_header_len(3)], xref:nng_msg_free.3.adoc[nng_msg_free(3)], xref:nng_strerror.3.adoc[nng_strerror(3)], xref:nng_msg.5.adoc[nng_msg(5)], xref:nng.7.adoc[nng(7)]