DragonFly On-Line Manual Pages
XS_MSG_COPY(3) Crossroads I/O Manual XS_MSG_COPY(3)
NAME
xs_msg_copy - copy content of a message to another message
SYNOPSIS
int xs_msg_copy (xs_msg_t *dest, xs_msg_t *src);
DESCRIPTION
The xs_msg_copy() function shall copy the message object referenced by
src to the message object referenced by dest. The original content of
dest, if any, shall be released.
Caution
The implementation may choose not to physically copy the message
content, rather to share the underlying buffer between src and
dest. Avoid modifying message content after a message has been
copied with xs_msg_copy(), doing so can result in undefined
behaviour. If what you need is an actual hard copy, allocate a new
message using xs_msg_init_size() and copy the message content using
memcpy().
Caution
Never access xs_msg_t members directly, instead always use the
xs_msg family of functions.
RETURN VALUE
The xs_msg_copy() function shall return zero if successful. Otherwise
it shall return -1 and set errno to one of the values defined below.
ERRORS
EFAULT
Invalid message.
SEE ALSO
xs_msg_move(3) xs_msg_init(3) xs_msg_init_size(3) xs_msg_init_data(3)
xs_msg_close(3) xs(7)
AUTHORS
The Crossroads documentation was written by Martin Sustrik
<sustrik@250bpm.com[1]> and Martin Lucina <martin@lucina.net[2]>.
NOTES
1. sustrik@250bpm.com
mailto:sustrik@250bpm.com
2. martin@lucina.net
mailto:martin@lucina.net
Crossroads I/O 1.2.0 02/17/2016 XS_MSG_COPY(3)