# nng_msg_header_append(3) Manual Page

## NAME

nng_msg_header_append - append to message header

## SYNOPSIS

    #include <nng/nng.h>

    int nng_msg_header_append(nng_msg *msg, const void *val, size_t size);
    int nng_msg_header_append_u16(nng_msg *msg, uint16_t val16);
    int nng_msg_header_append_u32(nng_msg *msg, uint32_t val32);
    int nng_msg_header_append_u64(nng_msg *msg, uint64_t val64);

## DESCRIPTION

The `nng_msg_header_append()` family of functions appends data to the end of the headers of message msg, reallocating it if necessary. The first function appends size bytes, copying them from val.

The remaining functions append the value (such as val32) in network-byte order (big-endian).

## RETURN VALUES

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

## ERRORS

`NNG_ENOMEM` | Insufficient free memory exists.

## SEE ALSO

nng_msg_alloc(3), nng_msg_header(3), nng_msg_header_chop(3), nng_msg_header_insert(3), nng_msg_header_len(3), nng_msg_header_trim(3), nng_msg_free(3), nng_strerror(3), nng(7)