zmq_ipc.txt 2.08 KB
Newer Older
1 2
zmq_ipc(7)
==========
3

4 5 6

NAME
----
Martin Lucina's avatar
Martin Lucina committed
7
zmq_ipc - 0MQ local inter-process communication transport
8 9 10 11


SYNOPSIS
--------
Martin Lucina's avatar
Martin Lucina committed
12 13
The inter-process transport passes messages between local processes using a
system-dependent IPC mechanism.
14

Martin Lucina's avatar
Martin Lucina committed
15 16
NOTE: The inter-process transport is currently only implemented on operating
systems that provide UNIX domain sockets.
17 18


Martin Lucina's avatar
Martin Lucina committed
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
ADDRESSING
----------
A 0MQ address string consists of two parts as follows:
'transport'`://`'endpoint'. The 'transport' part specifies the underlying
transport protocol to use, and for the inter-process transport shall be set to
`ipc`.  The meaning of the 'endpoint' part for the inter-process transport is
defined below.


Assigning a local address to a socket
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When assigning a local address to a 'socket' using _zmq_bind()_ with the 'ipc'
transport, the 'endpoint' shall be interpreted as an arbitrary string
identifying the 'pathname' to create. The 'pathname' must be unique within the
operating system namespace used by the 'ipc' implementation, and must fulfill
any restrictions placed by the operating system on the format and length of a
'pathname'.

Connecting a socket
~~~~~~~~~~~~~~~~~~~
When connecting a 'socket' to a peer address using _zmq_connect()_ with the
'ipc' transport, the 'endpoint' shall be interpreted as an arbitrary string
identifying the 'pathname' to connect to.  The 'pathname' must have been
previously created within the operating system namespace by assigning it to a
'socket' with _zmq_bind()_.
44 45


46 47
WIRE FORMAT
-----------
Martin Lucina's avatar
Martin Lucina committed
48 49
Not applicable.

50

Martin Lucina's avatar
Martin Lucina committed
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
EXAMPLES
--------
.Assigning a local address to a socket
----
/* Assign the pathname "/tmp/feeds/0" */
rc = zmq_bind(socket, "ipc:///tmp/feeds/0");
assert (rc == 0);
----

.Connecting a socket
----
/* Connect to the pathname "/tmp/feeds/0" */
rc = zmq_connect(socket, "ipc:///tmp/feeds/0");
assert (rc == 0);
----
66

67 68
SEE ALSO
--------
Martin Lucina's avatar
Martin Lucina committed
69 70
linkzmq:zmq_bind[3]
linkzmq:zmq_connect[3]
71 72 73
linkzmq:zmq_inproc[7]
linkzmq:zmq_tcp[7]
linkzmq:zmq_pgm[7]
Martin Lucina's avatar
Martin Lucina committed
74
linkzmq:zmq[7]
75 76


Martin Lucina's avatar
Martin Lucina committed
77 78 79 80
AUTHORS
-------
The 0MQ documentation was written by Martin Sustrik <sustrik@250bpm.com> and
Martin Lucina <mato@kotelna.sk>.