zmq_msg_gets.txt 1.85 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
zmq_msg_gets(3)
===============


NAME
----
zmq_msg_gets - get message metadata property


SYNOPSIS
--------
12
*const char *zmq_msg_gets (zmq_msg_t '*message', const char *'property');*
13 14 15 16 17 18


DESCRIPTION
-----------
The _zmq_msg_gets()_ function shall return the string value for the metadata
property specified by the 'property' argument for the message pointed to by
19 20
the 'message' argument. Both the 'property' argument and the 'value'
shall be NULL-terminated UTF8-encoded strings.
21

22 23
Metadata is defined on a per-connection basis during the ZeroMQ connection
handshake as specified in <rfc.zeromq.org/spec:37>.
24

25 26 27 28 29 30
The following ZMTP properties can be retrieved with the _zmq_msg_gets()_
function:

    Socket-Type
    Identity
    Resource
31 32 33 34

Additionally, when available for the underlying transport, the *Peer-Address*
property will return the IP address of the remote endpoint as returned by
getnameinfo(2).
35

36
Other properties may be defined based on the underlying security mechanism,
37
see ZAP authenticated connection sample below.
38 39 40 41 42 43

RETURN VALUE
------------
The _zmq_msg_gets()_ function shall return the string value for the property
if successful. Otherwise it shall return NULL and set 'errno' to one of the
values defined below. The caller shall not modify or free the returned value,
44 45
which shall be owned by the message. The encoding of the property and value
shall be UTF8.
46 47 48 49 50 51 52 53 54 55


ERRORS
------
*EINVAL*::
The requested _property_ is unknown.


EXAMPLE
-------
Pieter Hintjens's avatar
Pieter Hintjens committed
56
.Getting the ZAP authenticated user id for a message:
57
----
Pieter Hintjens's avatar
Pieter Hintjens committed
58 59 60 61
zmq_msg_t msg;
zmq_msg_init (&msg);
rc = zmq_msg_recv (&msg, dealer, 0);
assert (rc != -1);
Pieter Hintjens's avatar
Pieter Hintjens committed
62
const char *user_id = zmq_msg_gets (&msg, "User-Id");
Pieter Hintjens's avatar
Pieter Hintjens committed
63
zmq_msg_close (&msg);
64 65 66 67 68 69 70 71 72 73 74 75
----


SEE ALSO
--------
linkzmq:zmq[7]


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>.