ZMQ\_MSG\_MOVE(3) 0MQ Manual ZMQ\_MSG\_MOVE(3)

# [NAME](#NAME)

zmq\_msg\_move - move content of a message to another message

# [SYNOPSIS](#SYNOPSIS)

**int zmq\_msg\_move (zmq\_msg\_t \*dest, zmq\_msg\_t \*src);**

# [DESCRIPTION](#DESCRIPTION)

The *zmq\_msg\_move()* function shall move the content of the message object referenced by *src* to the message object referenced by *dest*. No actual copying of message content is performed, *dest* is simply updated to reference the new content. *src* becomes an empty message after calling *zmq\_msg\_move()*. The original content of *dest*, if any, shall be released.

**Caution**

Never access *zmq\_msg\_t* members directly, instead always use the *zmq\_msg* family of functions.

# [RETURN VALUE](#RETURN_VALUE)

The *zmq\_msg\_move()* function shall return zero if successful. Otherwise it shall return -1 and set *errno* to one of the values defined below.

# [ERRORS](#ERRORS)

**EFAULT**

Invalid message.

# [SEE ALSO](#SEE_ALSO)

[**zmq\_msg\_copy**(3)](/man/os/zeromq/zmq_msg_copy.3) [**zmq\_msg\_init**(3)](/man/os/zeromq/zmq_msg_init.3) [**zmq\_msg\_init\_size**(3)](/man/os/zeromq/zmq_msg_init_size.3) [**zmq\_msg\_init\_buffer**(3)](/man/os/zeromq/zmq_msg_init_buffer.3) [**zmq\_msg\_init\_data**(3)](/man/os/zeromq/zmq_msg_init_data.3) [**zmq\_msg\_close**(3)](/man/os/zeromq/zmq_msg_close.3) [**zmq**(7)](/man/os/zeromq/zmq.7)

# [AUTHORS](#AUTHORS)

This page was written by the 0MQ community. To make a change please read the 0MQ Contribution Policy at **http://www.zeromq.org/docs:contributing**.

08/29/2026 0MQ 4.3.5

---

Document: zmq_msg_move(3) from zeromq 4.3.5-r13 (Chainguard OS)
Source: https://github.com/zeromq/libzmq
