mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-25 22:30:51 +08:00
add ReadTheDocs integration
This commit is contained in:
parent
267699b1ce
commit
bf70ba7097
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,7 +17,6 @@ autom4te.cache
|
||||
*.html
|
||||
*.pdf
|
||||
*.ps
|
||||
.*
|
||||
*~
|
||||
.*~
|
||||
tools/curve_keygen.o
|
||||
|
37
.readthedocs.yaml
Normal file
37
.readthedocs.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
#
|
||||
# libzmq readthedocs.io integration
|
||||
#
|
||||
# This configuration file is processed by readthedocs.io to rebuild the
|
||||
# libzmq documentation using Asciidoctor, see
|
||||
# https://docs.readthedocs.io/en/stable/build-customization.html#asciidoc
|
||||
|
||||
version: "2"
|
||||
|
||||
formats:
|
||||
- htmlzip
|
||||
|
||||
build:
|
||||
os: "ubuntu-22.04"
|
||||
tools:
|
||||
nodejs: "20"
|
||||
# NOTE: as of Nov 2023, build.apt_packages is NOT considered when using build.commands
|
||||
#apt_packages:
|
||||
# - automake
|
||||
# - autoconf
|
||||
# - cmake
|
||||
# - libtool
|
||||
commands:
|
||||
# install required tools
|
||||
- npm install -g asciidoctor
|
||||
|
||||
# HTML docs
|
||||
# ---------
|
||||
- doc/create_page_list.sh "$(pwd)/doc/__pagelist" "$(pwd)/doc"
|
||||
- asciidoctor --backend html --destination-dir $READTHEDOCS_OUTPUT/html --attribute zmq_version='4.0.10' --attribute zmq_pagelist_dir=$(pwd)/doc doc/*.txt
|
||||
|
||||
# HTMLZIP docs
|
||||
# ------------
|
||||
# Note that for usability we make sure zip will create a zipfile containing just a flat list of HTML files;
|
||||
# to achieve that it's important to avoid storing absolute paths when invoking "zip", thus we use -j
|
||||
- mkdir -p $READTHEDOCS_OUTPUT/htmlzip/
|
||||
- cd $READTHEDOCS_OUTPUT/html && zip -j ../htmlzip/zeromq.zip *.html
|
20
doc/create_page_list.sh
Executable file
20
doc/create_page_list.sh
Executable file
@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This Bash snippet is used to automatically generate an alphabetical list included by index.adoc
|
||||
# It's invoked by at least 2 callers:
|
||||
# - the Makefile[.am] for automake builds
|
||||
# - the ReadTheDocs pipeline, see .readthedocs.yaml
|
||||
|
||||
OUTPUT_FILE="$1"
|
||||
ASCIIDOC_DIR="$2"
|
||||
|
||||
echo >$OUTPUT_FILE
|
||||
for adocfile in $(ls ${ASCIIDOC_DIR}/*.txt); do
|
||||
adocfile_basename=$(basename ${adocfile})
|
||||
|
||||
# this script is used to produce an Asciidoc snippet that goes inside index.adoc... avoid listing index.adoc itself!
|
||||
if [ "${adocfile_basename}" != "index.txt" ]; then
|
||||
adocfile_basename_noext=${adocfile_basename//.txt/}
|
||||
echo "* link:${adocfile_basename_noext}.html[${adocfile_basename_noext}]" >>$OUTPUT_FILE
|
||||
fi
|
||||
done
|
9
doc/index.txt
Normal file
9
doc/index.txt
Normal file
@ -0,0 +1,9 @@
|
||||
ZMQ API reference
|
||||
=================
|
||||
|
||||
This documentation is for libzmq {zmq_version}.
|
||||
|
||||
Alphabetic list of documentation pages
|
||||
--------------------------------------
|
||||
|
||||
include::{zmq_pagelist_dir}/__pagelist[]
|
94
doc/zmq.txt
94
doc/zmq.txt
@ -35,22 +35,22 @@ you exit your application you must destroy the 'context'. These functions let
|
||||
you work with 'contexts':
|
||||
|
||||
Create a new 0MQ context::
|
||||
linkzmq:zmq_ctx_new[3]
|
||||
link:zmq_ctx_new.html[zmq_ctx_new]
|
||||
|
||||
Work with context properties::
|
||||
linkzmq:zmq_ctx_set[3]
|
||||
linkzmq:zmq_ctx_get[3]
|
||||
link:zmq_ctx_set.html[zmq_ctx_set]
|
||||
link:zmq_ctx_get.html[zmq_ctx_get]
|
||||
|
||||
Destroy a 0MQ context::
|
||||
linkzmq:zmq_ctx_term[3]
|
||||
link:zmq_ctx_term.html[zmq_ctx_term]
|
||||
|
||||
These deprecated functions let you create and destroy 'contexts':
|
||||
|
||||
Initialise 0MQ context::
|
||||
linkzmq:zmq_init[3]
|
||||
link:zmq_init.html[zmq_init]
|
||||
|
||||
Terminate 0MQ context::
|
||||
linkzmq:zmq_term[3]
|
||||
link:zmq_term.html[zmq_term]
|
||||
|
||||
|
||||
Thread safety
|
||||
@ -85,68 +85,68 @@ data.
|
||||
The following functions are provided to work with messages:
|
||||
|
||||
Initialise a message::
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
|
||||
Sending and receiving a message::
|
||||
linkzmq:zmq_msg_send[3]
|
||||
linkzmq:zmq_msg_recv[3]
|
||||
link:zmq_msg_send.html[zmq_msg_send]
|
||||
link:zmq_msg_recv.html[zmq_msg_recv]
|
||||
|
||||
Release a message::
|
||||
linkzmq:zmq_msg_close[3]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
|
||||
Access message content::
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq_msg_more[3]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq_msg_more.html[zmq_msg_more]
|
||||
|
||||
Work with message properties::
|
||||
linkzmq:zmq_msg_get[3]
|
||||
linkzmq:zmq_msg_set[3]
|
||||
link:zmq_msg_get.html[zmq_msg_get]
|
||||
link:zmq_msg_set.html[zmq_msg_set]
|
||||
|
||||
Message manipulation::
|
||||
linkzmq:zmq_msg_copy[3]
|
||||
linkzmq:zmq_msg_move[3]
|
||||
link:zmq_msg_copy.html[zmq_msg_copy]
|
||||
link:zmq_msg_move.html[zmq_msg_move]
|
||||
|
||||
|
||||
Sockets
|
||||
~~~~~~~
|
||||
0MQ sockets present an abstraction of a asynchronous _message queue_, with the
|
||||
exact queueing semantics depending on the socket type in use. See
|
||||
linkzmq:zmq_socket[3] for the socket types provided.
|
||||
link:zmq_socket.html[zmq_socket] for the socket types provided.
|
||||
|
||||
The following functions are provided to work with sockets:
|
||||
|
||||
Creating a socket::
|
||||
linkzmq:zmq_socket[3]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
|
||||
Closing a socket::
|
||||
linkzmq:zmq_close[3]
|
||||
link:zmq_close.html[zmq_close]
|
||||
|
||||
Manipulating socket options::
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
|
||||
Establishing a message flow::
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
|
||||
Sending and receiving messages::
|
||||
linkzmq:zmq_msg_send[3]
|
||||
linkzmq:zmq_msg_recv[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_send_const[3]
|
||||
link:zmq_msg_send.html[zmq_msg_send]
|
||||
link:zmq_msg_recv.html[zmq_msg_recv]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_send_const.html[zmq_send_const]
|
||||
|
||||
Monitoring socket events:
|
||||
linkzmq:zmq_socket_monitor[3]
|
||||
link:zmq_socket_monitor.html[zmq_socket_monitor]
|
||||
|
||||
.Input/output multiplexing
|
||||
0MQ provides a mechanism for applications to multiplex input/output events over
|
||||
a set containing both 0MQ sockets and standard sockets. This mechanism mirrors
|
||||
the standard _poll()_ system call, and is described in detail in
|
||||
linkzmq:zmq_poll[3].
|
||||
link:zmq_poll.html[zmq_poll].
|
||||
|
||||
|
||||
Transports
|
||||
@ -158,16 +158,16 @@ advantages and drawbacks.
|
||||
The following transport mechanisms are provided:
|
||||
|
||||
Unicast transport using TCP::
|
||||
linkzmq:zmq_tcp[7]
|
||||
link:zmq_tcp.html[zmq_tcp]
|
||||
|
||||
Reliable multicast transport using PGM::
|
||||
linkzmq:zmq_pgm[7]
|
||||
link:zmq_pgm.html[zmq_pgm]
|
||||
|
||||
Local inter-process communication transport::
|
||||
linkzmq:zmq_ipc[7]
|
||||
link:zmq_ipc.html[zmq_ipc]
|
||||
|
||||
Local in-process (inter-thread) communication transport::
|
||||
linkzmq:zmq_inproc[7]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
|
||||
|
||||
Proxies
|
||||
@ -175,7 +175,7 @@ Proxies
|
||||
0MQ provides 'proxies' to create fanout and fan-in topologies. A proxy connects
|
||||
a 'frontend' socket to a 'backend' socket and switches all messages between the
|
||||
two sockets, opaquely. A proxy may optionally capture all traffic to a third
|
||||
socket. To start a proxy in an application thread, use linkzmq:zmq_proxy[3].
|
||||
socket. To start a proxy in an application thread, use link:zmq_proxy.html[zmq_proxy].
|
||||
|
||||
|
||||
Security
|
||||
@ -186,22 +186,22 @@ security mechanism.
|
||||
The following security mechanisms are provided for IPC and TCP connections:
|
||||
|
||||
Null security::
|
||||
linkzmq:zmq_null[7]
|
||||
link:zmq_null.html[zmq_null]
|
||||
|
||||
Plain-text authentication using username and password::
|
||||
linkzmq:zmq_plain[7]
|
||||
link:zmq_plain.html[zmq_plain]
|
||||
|
||||
Elliptic curve authentication and encryption::
|
||||
linkzmq:zmq_curve[7]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
|
||||
Generate a CURVE keypair in armored text format:
|
||||
linkzmq:zmq_curve_keypair[3]
|
||||
link:zmq_curve_keypair.html[zmq_curve_keypair]
|
||||
|
||||
Convert an armored key into a 32-byte binary key:
|
||||
linkzmq:zmq_z85_decode[3]
|
||||
link:zmq_z85_decode.html[zmq_z85_decode]
|
||||
|
||||
Convert a 32-byte binary CURVE key to an armored text string:
|
||||
linkzmq:zmq_z85_encode[3]
|
||||
link:zmq_z85_encode.html[zmq_z85_encode]
|
||||
|
||||
|
||||
ERROR HANDLING
|
||||
@ -214,10 +214,10 @@ shall return either a NULL value (if returning a pointer) or a negative value
|
||||
|
||||
On non-POSIX systems some users may experience issues with retrieving the
|
||||
correct value of the 'errno' variable. The _zmq_errno()_ function is provided
|
||||
to assist in these cases; for details refer to linkzmq:zmq_errno[3].
|
||||
to assist in these cases; for details refer to link:zmq_errno.html[zmq_errno].
|
||||
|
||||
The _zmq_strerror()_ function is provided to translate 0MQ-specific error codes
|
||||
into error message strings; for details refer to linkzmq:zmq_strerror[3].
|
||||
into error message strings; for details refer to link:zmq_strerror.html[zmq_strerror].
|
||||
|
||||
|
||||
MISCELLANEOUS
|
||||
@ -225,7 +225,7 @@ MISCELLANEOUS
|
||||
The following miscellaneous functions are provided:
|
||||
|
||||
Report 0MQ library version::
|
||||
linkzmq:zmq_version[3]
|
||||
link:zmq_version.html[zmq_version]
|
||||
|
||||
|
||||
LANGUAGE BINDINGS
|
||||
|
@ -23,17 +23,17 @@ The 'endpoint' is a string consisting of a 'transport'`://` followed by an
|
||||
|
||||
0MQ provides the the following transports:
|
||||
|
||||
'tcp':: unicast transport using TCP, see linkzmq:zmq_tcp[7]
|
||||
'ipc':: local inter-process communication transport, see linkzmq:zmq_ipc[7]
|
||||
'inproc':: local in-process (inter-thread) communication transport, see linkzmq:zmq_inproc[7]
|
||||
'pgm', 'epgm':: reliable multicast transport using PGM, see linkzmq:zmq_pgm[7]
|
||||
'tcp':: unicast transport using TCP, see link:zmq_tcp.html[zmq_tcp]
|
||||
'ipc':: local inter-process communication transport, see link:zmq_ipc.html[zmq_ipc]
|
||||
'inproc':: local in-process (inter-thread) communication transport, see link:zmq_inproc.html[zmq_inproc]
|
||||
'pgm', 'epgm':: reliable multicast transport using PGM, see link:zmq_pgm.html[zmq_pgm]
|
||||
|
||||
Every 0MQ socket type except 'ZMQ_PAIR' supports one-to-many and many-to-one
|
||||
semantics. The precise semantics depend on the socket type and are defined in
|
||||
linkzmq:zmq_socket[3].
|
||||
link:zmq_socket.html[zmq_socket].
|
||||
|
||||
The 'ipc' and 'tcp' transports accept wildcard addresses: see linkzmq:zmq_ipc[7]
|
||||
and linkzmq:zmq_tcp[7] for details.
|
||||
The 'ipc' and 'tcp' transports accept wildcard addresses: see link:zmq_ipc.html[zmq_ipc]
|
||||
and link:zmq_tcp.html[zmq_tcp] for details.
|
||||
|
||||
NOTE: the address syntax may be different for _zmq_bind()_ and _zmq_connect()_
|
||||
especially for the 'tcp', 'pgm' and 'epgm' transports.
|
||||
@ -41,7 +41,7 @@ especially for the 'tcp', 'pgm' and 'epgm' transports.
|
||||
NOTE: following a _zmq_bind()_, the socket enters a 'mute' state unless or
|
||||
until at least one incoming or outgoing connection is made, at which point
|
||||
the socket enters a 'ready' state. In the mute state, the socket blocks or
|
||||
drops messages according to the socket type, as defined in linkzmq:zmq_socket[3].
|
||||
drops messages according to the socket type, as defined in link:zmq_socket.html[zmq_socket].
|
||||
By contrast, following a libzmq:zmq_connect[3], the socket enters the 'ready' state.
|
||||
|
||||
|
||||
@ -91,9 +91,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -23,7 +23,7 @@ _ZMQ_LINGER_ socket option for the specified 'socket'.
|
||||
|
||||
NOTE: The default setting of _ZMQ_LINGER_ does not discard unsent messages;
|
||||
this behaviour may cause the application to block when calling _zmq_term()_.
|
||||
For details refer to linkzmq:zmq_setsockopt[3] and linkzmq:zmq_term[3].
|
||||
For details refer to link:zmq_setsockopt.html[zmq_setsockopt] and link:zmq_term.html[zmq_term].
|
||||
|
||||
|
||||
RETURN VALUE
|
||||
@ -40,10 +40,10 @@ The provided 'socket' was invalid.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq_term[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq_term.html[zmq_term]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -23,14 +23,14 @@ The 'endpoint' is a string consisting of a 'transport'`://` followed by an
|
||||
|
||||
0MQ provides the the following transports:
|
||||
|
||||
'tcp':: unicast transport using TCP, see linkzmq:zmq_tcp[7]
|
||||
'ipc':: local inter-process communication transport, see linkzmq:zmq_ipc[7]
|
||||
'inproc':: local in-process (inter-thread) communication transport, see linkzmq:zmq_inproc[7]
|
||||
'pgm', 'epgm':: reliable multicast transport using PGM, see linkzmq:zmq_pgm[7]
|
||||
'tcp':: unicast transport using TCP, see link:zmq_tcp.html[zmq_tcp]
|
||||
'ipc':: local inter-process communication transport, see link:zmq_ipc.html[zmq_ipc]
|
||||
'inproc':: local in-process (inter-thread) communication transport, see link:zmq_inproc.html[zmq_inproc]
|
||||
'pgm', 'epgm':: reliable multicast transport using PGM, see link:zmq_pgm.html[zmq_pgm]
|
||||
|
||||
Every 0MQ socket type except 'ZMQ_PAIR' supports one-to-many and many-to-one
|
||||
semantics. The precise semantics depend on the socket type and are defined in
|
||||
linkzmq:zmq_socket[3].
|
||||
link:zmq_socket.html[zmq_socket].
|
||||
|
||||
NOTE: for most transports and socket types the connection is not performed
|
||||
immediately but as needed by 0MQ. Thus a successful call to _zmq_connect()_
|
||||
@ -45,7 +45,7 @@ NOTE: following a _zmq_connect()_, for socket types except for ZMQ_ROUTER,
|
||||
the socket enters its normal 'ready' state. By contrast, following a
|
||||
_zmq_bind()_ alone, the socket enters a 'mute' state in which the socket
|
||||
blocks or drops messages according to the socket type, as defined in
|
||||
linkzmq:zmq_socket[3]. A ZMQ_ROUTER socket enters its normal 'ready' state
|
||||
link:zmq_socket.html[zmq_socket]. A ZMQ_ROUTER socket enters its normal 'ready' state
|
||||
for a specific peer only when handshaking is complete for that peer, which
|
||||
may take an arbitrary time.
|
||||
|
||||
@ -89,9 +89,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -34,9 +34,9 @@ Context termination is performed in the following steps:
|
||||
option has expired.
|
||||
|
||||
For further details regarding socket linger behavior refer to the _ZMQ_LINGER_
|
||||
option in linkzmq:zmq_setsockopt[3].
|
||||
option in link:zmq_setsockopt.html[zmq_setsockopt].
|
||||
|
||||
This function is deprecated by linkzmq:zmq_ctx_term[3].
|
||||
This function is deprecated by link:zmq_ctx_term.html[zmq_ctx_term].
|
||||
|
||||
|
||||
RETURN VALUE
|
||||
@ -55,10 +55,10 @@ Termination was interrupted by a signal. It can be restarted if needed.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_init[3]
|
||||
linkzmq:zmq_close[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_init.html[zmq_init]
|
||||
link:zmq_close.html[zmq_close]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -62,8 +62,8 @@ assert (max_sockets == 256);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_ctx_set[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_ctx_set.html[zmq_ctx_set]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -16,7 +16,7 @@ DESCRIPTION
|
||||
-----------
|
||||
The _zmq_ctx_new()_ function creates a new 0MQ 'context'.
|
||||
|
||||
This function replaces the deprecated function linkzmq:zmq_init[3].
|
||||
This function replaces the deprecated function link:zmq_init.html[zmq_init].
|
||||
|
||||
.Thread safety
|
||||
A 0MQ 'context' is thread safe and may be shared among as many application
|
||||
@ -38,10 +38,10 @@ No error values are defined for this function.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_ctx_set[3]
|
||||
linkzmq:zmq_ctx_get[3]
|
||||
linkzmq:zmq_ctx_term[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_ctx_set.html[zmq_ctx_set]
|
||||
link:zmq_ctx_get.html[zmq_ctx_get]
|
||||
link:zmq_ctx_term.html[zmq_ctx_term]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -77,8 +77,8 @@ assert (max_sockets == 256);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_ctx_get[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_ctx_get.html[zmq_ctx_get]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -21,7 +21,7 @@ sockets open within 'context' to return immediately with an error code of ETERM.
|
||||
With the exception of _zmq_close()_, any further operations on sockets open within
|
||||
'context' shall fail with an error code of ETERM.
|
||||
|
||||
This function is optional, client code is still required to call the linkzmq:zmq_ctx_term[3]
|
||||
This function is optional, client code is still required to call the link:zmq_ctx_term.html[zmq_ctx_term]
|
||||
function to free all resources allocated by zeromq.
|
||||
|
||||
|
||||
@ -39,11 +39,11 @@ The provided 'context' was invalid.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_init[3]
|
||||
linkzmq:zmq_ctx_term[3]
|
||||
linkzmq:zmq_close[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_init.html[zmq_init]
|
||||
link:zmq_ctx_term.html[zmq_ctx_term]
|
||||
link:zmq_close.html[zmq_close]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -34,9 +34,9 @@ Context termination is performed in the following steps:
|
||||
option has expired.
|
||||
|
||||
For further details regarding socket linger behavior refer to the _ZMQ_LINGER_
|
||||
option in linkzmq:zmq_setsockopt[3].
|
||||
option in link:zmq_setsockopt.html[zmq_setsockopt].
|
||||
|
||||
This function replaces the deprecated function linkzmq:zmq_term[3].
|
||||
This function replaces the deprecated function link:zmq_term.html[zmq_term].
|
||||
|
||||
|
||||
WARNING
|
||||
@ -64,10 +64,10 @@ Termination was interrupted by a signal. It can be restarted if needed.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_init[3]
|
||||
linkzmq:zmq_close[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_init.html[zmq_init]
|
||||
link:zmq_close.html[zmq_close]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -78,12 +78,12 @@ secret:
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_z85_encode[3]
|
||||
linkzmq:zmq_z85_decode[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq_null[7]
|
||||
linkzmq:zmq_plain[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_z85_encode.html[zmq_z85_encode]
|
||||
link:zmq_z85_decode.html[zmq_z85_decode]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_null.html[zmq_null]
|
||||
link:zmq_plain.html[zmq_plain]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -17,7 +17,7 @@ DESCRIPTION
|
||||
The _zmq_curve_keypair()_ function shall return a newly generated random
|
||||
keypair consisting of a public key and a secret key. The caller provides
|
||||
two buffers, each at least 41 octets large, in which this method will
|
||||
store the keys. The keys are encoded using linkzmq:zmq_z85_encode[3].
|
||||
store the keys. The keys are encoded using link:zmq_z85_encode.html[zmq_z85_encode].
|
||||
|
||||
|
||||
RETURN VALUE
|
||||
@ -45,9 +45,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_z85_decode[3]
|
||||
linkzmq:zmq_z85_encode[3]
|
||||
linkzmq:zmq_curve[7]
|
||||
link:zmq_z85_decode.html[zmq_z85_decode]
|
||||
link:zmq_z85_encode.html[zmq_z85_encode]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -18,7 +18,7 @@ The _zmq_disconnect()_ function shall disconnect a socket specified
|
||||
by the 'socket' argument from the endpoint specified by the 'endpoint'
|
||||
argument.
|
||||
|
||||
The 'endpoint' argument is as described in linkzmq:zmq_connect[3]
|
||||
The 'endpoint' argument is as described in link:zmq_connect.html[zmq_connect]
|
||||
|
||||
|
||||
RETURN VALUE
|
||||
@ -56,9 +56,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -1 +0,0 @@
|
||||
zmq_pgm.txt
|
163
doc/zmq_epgm.txt
Normal file
163
doc/zmq_epgm.txt
Normal file
@ -0,0 +1,163 @@
|
||||
zmq_pgm(7)
|
||||
==========
|
||||
|
||||
|
||||
NAME
|
||||
----
|
||||
zmq_pgm - 0MQ reliable multicast transport using PGM
|
||||
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
PGM (Pragmatic General Multicast) is a protocol for reliable multicast
|
||||
transport of data over IP networks.
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
0MQ implements two variants of PGM, the standard protocol where PGM datagrams
|
||||
are layered directly on top of IP datagrams as defined by RFC 3208 (the 'pgm'
|
||||
transport) and "Encapsulated PGM" or EPGM where PGM datagrams are encapsulated
|
||||
inside UDP datagrams (the 'epgm' transport).
|
||||
|
||||
The 'pgm' and 'epgm' transports can only be used with the 'ZMQ_PUB' and
|
||||
'ZMQ_SUB' socket types.
|
||||
|
||||
Further, PGM sockets are rate limited by default. For details, refer to the
|
||||
'ZMQ_RATE', and 'ZMQ_RECOVERY_IVL' options documented in
|
||||
link:zmq_setsockopt.html[zmq_setsockopt].
|
||||
|
||||
CAUTION: The 'pgm' transport implementation requires access to raw IP sockets.
|
||||
Additional privileges may be required on some operating systems for this
|
||||
operation. Applications not requiring direct interoperability with other PGM
|
||||
implementations are encouraged to use the 'epgm' transport instead which does
|
||||
not require any special privileges.
|
||||
|
||||
|
||||
ADDRESSING
|
||||
----------
|
||||
A 0MQ endpoint is a string consisting of a 'transport'`://` followed by an
|
||||
'address'. The 'transport' specifies the underlying protocol to use. The
|
||||
'address' specifies the transport-specific address to connect to.
|
||||
|
||||
For the PGM transport, the transport is `pgm`, and for the EPGM protocol the
|
||||
transport is `epgm`. The meaning of the 'address' part is defined below.
|
||||
|
||||
|
||||
Connecting a socket
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
When connecting a socket to a peer address using _zmq_connect()_ with the 'pgm'
|
||||
or 'epgm' transport, the 'endpoint' shall be interpreted as an 'interface'
|
||||
followed by a semicolon, followed by a 'multicast address', followed by a colon
|
||||
and a port number.
|
||||
|
||||
An 'interface' may be specified by either of the following:
|
||||
|
||||
* The interface name as defined by the operating system.
|
||||
* The primary IPv4 address assigned to the interface, in its numeric
|
||||
representation.
|
||||
|
||||
NOTE: Interface names are not standardised in any way and should be assumed to
|
||||
be arbitrary and platform dependent. On Win32 platforms no short interface
|
||||
names exist, thus only the primary IPv4 address may be used to specify an
|
||||
'interface'. The 'interface' part can be omitted, in that case the default one
|
||||
will be selected.
|
||||
|
||||
A 'multicast address' is specified by an IPv4 multicast address in its numeric
|
||||
representation.
|
||||
|
||||
|
||||
WIRE FORMAT
|
||||
-----------
|
||||
Consecutive PGM datagrams are interpreted by 0MQ as a single continuous stream
|
||||
of data where 0MQ messages are not necessarily aligned with PGM datagram
|
||||
boundaries and a single 0MQ message may span several PGM datagrams. This stream
|
||||
of data consists of 0MQ messages encapsulated in 'frames' as described in
|
||||
link:zmq_tcp.html[zmq_tcp].
|
||||
|
||||
|
||||
PGM datagram payload
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
The following ABNF grammar represents the payload of a single PGM datagram as
|
||||
used by 0MQ:
|
||||
|
||||
....
|
||||
datagram = (offset data)
|
||||
offset = 2OCTET
|
||||
data = *OCTET
|
||||
....
|
||||
|
||||
In order for late joining consumers to be able to identify message boundaries,
|
||||
each PGM datagram payload starts with a 16-bit unsigned integer in network byte
|
||||
order specifying either the offset of the first message 'frame' in the datagram
|
||||
or containing the value `0xFFFF` if the datagram contains solely an
|
||||
intermediate part of a larger message.
|
||||
|
||||
Note that offset specifies where the first message begins rather than the first
|
||||
message part. Thus, if there are trailing message parts at the beginning of
|
||||
the packet the offset ignores them and points to first initial message part
|
||||
in the packet.
|
||||
|
||||
The following diagram illustrates the layout of a single PGM datagram payload:
|
||||
|
||||
....
|
||||
+------------------+----------------------+
|
||||
| offset (16 bits) | data |
|
||||
+------------------+----------------------+
|
||||
....
|
||||
|
||||
The following diagram further illustrates how three example 0MQ frames are laid
|
||||
out in consecutive PGM datagram payloads:
|
||||
|
||||
....
|
||||
First datagram payload
|
||||
+--------------+-------------+---------------------+
|
||||
| Frame offset | Frame 1 | Frame 2, part 1 |
|
||||
| 0x0000 | (Message 1) | (Message 2, part 1) |
|
||||
+--------------+-------------+---------------------+
|
||||
|
||||
Second datagram payload
|
||||
+--------------+---------------------+
|
||||
| Frame offset | Frame 2, part 2 |
|
||||
| 0xFFFF | (Message 2, part 2) |
|
||||
+--------------+---------------------+
|
||||
|
||||
Third datagram payload
|
||||
+--------------+----------------------------+-------------+
|
||||
| Frame offset | Frame 2, final 8 bytes | Frame 3 |
|
||||
| 0x0008 | (Message 2, final 8 bytes) | (Message 3) |
|
||||
+--------------+----------------------------+-------------+
|
||||
....
|
||||
|
||||
|
||||
EXAMPLE
|
||||
-------
|
||||
.Connecting a socket
|
||||
----
|
||||
// Connecting to the multicast address 239.192.1.1, port 5555,
|
||||
// using the first Ethernet network interface on Linux
|
||||
// and the Encapsulated PGM protocol
|
||||
rc = zmq_connect(socket, "epgm://eth0;239.192.1.1:5555");
|
||||
assert (rc == 0);
|
||||
// Connecting to the multicast address 239.192.1.1, port 5555,
|
||||
// using the network interface with the address 192.168.1.1
|
||||
// and the standard PGM protocol
|
||||
rc = zmq_connect(socket, "pgm://192.168.1.1;239.192.1.1:5555");
|
||||
assert (rc == 0);
|
||||
----
|
||||
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_tcp.html[zmq_tcp]
|
||||
link:zmq_ipc.html[zmq_ipc]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
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>.
|
@ -41,7 +41,7 @@ No errors are defined.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -45,7 +45,7 @@ The 'ZMQ_RCVMORE' option shall return True (1) if the message part last
|
||||
received from the 'socket' was a data part with more parts to follow. If there
|
||||
are no data parts to follow, this option shall return False (0).
|
||||
|
||||
Refer to linkzmq:zmq_send[3] and linkzmq:zmq_recv[3] for a detailed description
|
||||
Refer to link:zmq_send.html[zmq_send] and link:zmq_recv.html[zmq_recv] for a detailed description
|
||||
of multi-part messages.
|
||||
|
||||
[horizontal]
|
||||
@ -66,7 +66,7 @@ limit.
|
||||
If this limit has been reached the socket shall enter an exceptional state and
|
||||
depending on the socket type, 0MQ shall take appropriate action such as
|
||||
blocking or dropping sent messages. Refer to the individual socket descriptions
|
||||
in linkzmq:zmq_socket[3] for details on the exact action taken for each socket
|
||||
in link:zmq_socket.html[zmq_socket] for details on the exact action taken for each socket
|
||||
type.
|
||||
|
||||
[horizontal]
|
||||
@ -87,7 +87,7 @@ limit.
|
||||
If this limit has been reached the socket shall enter an exceptional state and
|
||||
depending on the socket type, 0MQ shall take appropriate action such as
|
||||
blocking or dropping sent messages. Refer to the individual socket descriptions
|
||||
in linkzmq:zmq_socket[3] for details on the exact action taken for each socket
|
||||
in link:zmq_socket.html[zmq_socket] for details on the exact action taken for each socket
|
||||
type.
|
||||
|
||||
[horizontal]
|
||||
@ -110,7 +110,7 @@ corresponds to thread 1, second lowest bit to thread 2 and so on. For example,
|
||||
a value of 3 specifies that subsequent connections on 'socket' shall be handled
|
||||
exclusively by I/O threads 1 and 2.
|
||||
|
||||
See also linkzmq:zmq_init[3] for details on allocating the number of I/O
|
||||
See also link:zmq_init.html[zmq_init] for details on allocating the number of I/O
|
||||
threads for a specific _context_.
|
||||
|
||||
[horizontal]
|
||||
@ -196,8 +196,8 @@ ZMQ_LINGER: Retrieve linger period for socket shutdown
|
||||
The 'ZMQ_LINGER' option shall retrieve the linger period for the specified
|
||||
'socket'. The linger period determines how long pending messages which have
|
||||
yet to be sent to a peer shall linger in memory after a socket is closed with
|
||||
linkzmq:zmq_close[3], and further affects the termination of the socket's
|
||||
context with linkzmq:zmq_term[3]. The following outlines the different
|
||||
link:zmq_close.html[zmq_close], and further affects the termination of the socket's
|
||||
context with link:zmq_term.html[zmq_term]. The following outlines the different
|
||||
behaviours:
|
||||
|
||||
* The default value of '-1' specifies an infinite linger period. Pending
|
||||
@ -630,9 +630,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -25,7 +25,7 @@ A 0MQ 'context' is thread safe and may be shared among as many application
|
||||
threads as necessary, without any additional locking required on the part of
|
||||
the caller.
|
||||
|
||||
This function is deprecated by linkzmq:zmq_ctx_new[3].
|
||||
This function is deprecated by link:zmq_ctx_new.html[zmq_ctx_new].
|
||||
|
||||
RETURN VALUE
|
||||
------------
|
||||
@ -42,8 +42,8 @@ An invalid number of 'io_threads' was requested.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_term[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_term.html[zmq_term]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -15,7 +15,7 @@ sharing a single 0MQ 'context'.
|
||||
NOTE: No I/O threads are involved in passing messages using the 'inproc'
|
||||
transport. Therefore, if you are using a 0MQ 'context' for in-process messaging
|
||||
only you can initialise the 'context' with zero I/O threads. See
|
||||
linkzmq:zmq_init[3] for details.
|
||||
link:zmq_init.html[zmq_init] for details.
|
||||
|
||||
|
||||
ADDRESSING
|
||||
@ -71,12 +71,12 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_ipc[7]
|
||||
linkzmq:zmq_tcp[7]
|
||||
linkzmq:zmq_pgm[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_ipc.html[zmq_ipc]
|
||||
link:zmq_tcp.html[zmq_tcp]
|
||||
link:zmq_pgm.html[zmq_pgm]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -37,7 +37,7 @@ any restrictions placed by the operating system on the format and length of a
|
||||
|
||||
When the address is `*`, _zmq_bind()_ shall generate a unique temporary
|
||||
pathname. The caller should retrieve this pathname using the ZMQ_LAST_ENDPOINT
|
||||
socket option. See linkzmq:zmq_getsockopt[3] for details.
|
||||
socket option. See link:zmq_getsockopt.html[zmq_getsockopt] for details.
|
||||
|
||||
NOTE: any existing binding to the same endpoint shall be overridden. That is,
|
||||
if a second process binds to an endpoint already bound by a process, this
|
||||
@ -80,13 +80,13 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_inproc[7]
|
||||
linkzmq:zmq_tcp[7]
|
||||
linkzmq:zmq_pgm[7]
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
link:zmq_tcp.html[zmq_tcp]
|
||||
link:zmq_pgm.html[zmq_pgm]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -42,12 +42,12 @@ Invalid message.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -43,12 +43,12 @@ Invalid message.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_move[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_move.html[zmq_msg_move]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -34,12 +34,12 @@ No errors are defined.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -61,10 +61,10 @@ while (true) {
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_set[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_set.html[zmq_msg_set]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -50,12 +50,12 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -71,12 +71,12 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -44,12 +44,12 @@ Insufficient storage space is available.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_size[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_size.html[zmq_msg_size]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -52,11 +52,11 @@ while (true) {
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_get[3]
|
||||
linkzmq:zmq_msg_set[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_get.html[zmq_msg_get]
|
||||
link:zmq_msg_set.html[zmq_msg_set]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -38,12 +38,12 @@ Invalid message.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_copy[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_copy.html[zmq_msg_copy]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -14,7 +14,7 @@ SYNOPSIS
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
The _zmq_msg_recv()_ function is identical to linkzmq:zmq_recvmsg[3], which
|
||||
The _zmq_msg_recv()_ function is identical to link:zmq_recvmsg.html[zmq_recvmsg], which
|
||||
shall be deprecated in future versions. _zmq_msg_recv()_ is more consistent
|
||||
with other message manipulation functions.
|
||||
|
||||
@ -40,7 +40,7 @@ message or none at all. The total number of message parts is unlimited except
|
||||
by available memory.
|
||||
|
||||
An application that processes multi-part messages must use the _ZMQ_RCVMORE_
|
||||
linkzmq:zmq_getsockopt[3] option after calling _zmq_msg_recv()_ to determine if
|
||||
link:zmq_getsockopt.html[zmq_getsockopt] option after calling _zmq_msg_recv()_ to determine if
|
||||
there are further parts to receive.
|
||||
|
||||
|
||||
@ -61,7 +61,7 @@ The _zmq_msg_recv()_ operation is not supported by this socket type.
|
||||
The _zmq_msg_recv()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -110,12 +110,12 @@ do {
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_msg_send[3]
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_msg_send.html[zmq_msg_send]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -14,7 +14,7 @@ SYNOPSIS
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
The _zmq_msg_send()_ function is identical to linkzmq:zmq_sendmsg[3], which
|
||||
The _zmq_msg_send()_ function is identical to link:zmq_sendmsg.html[zmq_sendmsg], which
|
||||
shall be deprecated in future versions. _zmq_msg_send()_ is more consistent
|
||||
with other message manipulation functions.
|
||||
|
||||
@ -71,7 +71,7 @@ The _zmq_msg_send()_ operation is not supported by this socket type.
|
||||
The _zmq_msg_send()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -112,11 +112,11 @@ rc = zmq_msg_send (&part3, socket, 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_msg_recv[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_msg_recv.html[zmq_msg_recv]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -36,8 +36,8 @@ The requested property _property_ is unknown.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_get[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_get.html[zmq_msg_get]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -34,12 +34,12 @@ No errors are defined.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_msg_data[3]
|
||||
linkzmq:zmq_msg_init[3]
|
||||
linkzmq:zmq_msg_init_size[3]
|
||||
linkzmq:zmq_msg_init_data[3]
|
||||
linkzmq:zmq_msg_close[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_msg_data.html[zmq_msg_data]
|
||||
link:zmq_msg_init.html[zmq_msg_init]
|
||||
link:zmq_msg_init_size.html[zmq_msg_init_size]
|
||||
link:zmq_msg_init_data.html[zmq_msg_init_data]
|
||||
link:zmq_msg_close.html[zmq_msg_close]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -16,9 +16,9 @@ for ZeroMQ sockets.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_plain[7]
|
||||
linkzmq:zmq_curve[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_plain.html[zmq_plain]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -25,7 +25,7 @@ The 'pgm' and 'epgm' transports can only be used with the 'ZMQ_PUB' and
|
||||
|
||||
Further, PGM sockets are rate limited by default. For details, refer to the
|
||||
'ZMQ_RATE', and 'ZMQ_RECOVERY_IVL' options documented in
|
||||
linkzmq:zmq_setsockopt[3].
|
||||
link:zmq_setsockopt.html[zmq_setsockopt].
|
||||
|
||||
CAUTION: The 'pgm' transport implementation requires access to raw IP sockets.
|
||||
Additional privileges may be required on some operating systems for this
|
||||
@ -73,7 +73,7 @@ Consecutive PGM datagrams are interpreted by 0MQ as a single continuous stream
|
||||
of data where 0MQ messages are not necessarily aligned with PGM datagram
|
||||
boundaries and a single 0MQ message may span several PGM datagrams. This stream
|
||||
of data consists of 0MQ messages encapsulated in 'frames' as described in
|
||||
linkzmq:zmq_tcp[7].
|
||||
link:zmq_tcp.html[zmq_tcp].
|
||||
|
||||
|
||||
PGM datagram payload
|
||||
@ -149,12 +149,12 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq_tcp[7]
|
||||
linkzmq:zmq_ipc[7]
|
||||
linkzmq:zmq_inproc[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_tcp.html[zmq_tcp]
|
||||
link:zmq_ipc.html[zmq_ipc]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -25,10 +25,10 @@ options. Which peer binds, and which connects, is not relevant.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq_null[7]
|
||||
linkzmq:zmq_curve[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_null.html[zmq_null]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -114,10 +114,10 @@ assert (rc >= 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
Your operating system documentation for the _poll()_ system call.
|
||||
|
||||
|
@ -31,7 +31,7 @@ If the capture socket is not NULL, the proxy shall send all messages, received
|
||||
on both frontend and backend, to the capture socket. The capture socket should
|
||||
be a 'ZMQ_PUB', 'ZMQ_DEALER', 'ZMQ_PUSH', or 'ZMQ_PAIR' socket.
|
||||
|
||||
Refer to linkzmq:zmq_socket[3] for a description of the available socket types.
|
||||
Refer to link:zmq_socket.html[zmq_socket] for a description of the available socket types.
|
||||
|
||||
EXAMPLE USAGE
|
||||
-------------
|
||||
@ -86,10 +86,10 @@ zmq_proxy (frontend, backend, NULL);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -29,8 +29,8 @@ If the control socket is NULL, the function behave exactly as if zmq_proxy
|
||||
had been called.
|
||||
|
||||
|
||||
Refer to linkzmq:zmq_socket[3] for a description of the available socket types.
|
||||
Refer to linkzmq:zmq_proxy[3] for a description of the zmq_proxy.
|
||||
Refer to link:zmq_socket.html[zmq_socket] for a description of the available socket types.
|
||||
Refer to link:zmq_proxy.html[zmq_proxy] for a description of the zmq_proxy.
|
||||
|
||||
EXAMPLE USAGE
|
||||
-------------
|
||||
@ -86,11 +86,11 @@ assert (zmq_send (control, "TERMINATE", 9, 0) == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_proxy[3]
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_proxy.html[zmq_proxy]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -35,7 +35,7 @@ message or none at all. The total number of message parts is unlimited except
|
||||
by available memory.
|
||||
|
||||
An application that processes multi-part messages must use the _ZMQ_RCVMORE_
|
||||
linkzmq:zmq_getsockopt[3] option after calling _zmq_recv()_ to determine if
|
||||
link:zmq_getsockopt.html[zmq_getsockopt] option after calling _zmq_recv()_ to determine if
|
||||
there are further parts to receive.
|
||||
|
||||
RETURN VALUE
|
||||
@ -56,7 +56,7 @@ The _zmq_recv()_ operation is not supported by this socket type.
|
||||
The _zmq_recv()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -78,10 +78,10 @@ assert (nbytes != -1);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -38,7 +38,7 @@ message or none at all. The total number of message parts is unlimited except
|
||||
by available memory.
|
||||
|
||||
An application that processes multi-part messages must use the _ZMQ_RCVMORE_
|
||||
linkzmq:zmq_getsockopt[3] option after calling _zmq_recvmsg()_ to determine if
|
||||
link:zmq_getsockopt.html[zmq_getsockopt] option after calling _zmq_recvmsg()_ to determine if
|
||||
there are further parts to receive.
|
||||
|
||||
|
||||
@ -59,7 +59,7 @@ The _zmq_recvmsg()_ operation is not supported by this socket type.
|
||||
The _zmq_recvmsg()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -108,11 +108,11 @@ do {
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -62,7 +62,7 @@ The _zmq_send()_ operation is not supported by this socket type.
|
||||
The _zmq_send()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -90,10 +90,10 @@ assert (rc == 2);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_send_const[3]
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_send_const.html[zmq_send_const]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -63,7 +63,7 @@ The _zmq_send_const()_ operation is not supported by this socket type.
|
||||
The _zmq_send_const()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -91,10 +91,10 @@ assert (rc == 2);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -67,7 +67,7 @@ The _zmq_sendmsg()_ operation is not supported by this socket type.
|
||||
The _zmq_sendmsg()_ operation cannot be performed on this socket at the moment
|
||||
due to the socket not being in the appropriate state. This error may occur with
|
||||
socket types that switch between several states, such as ZMQ_REP. See the
|
||||
_messaging patterns_ section of linkzmq:zmq_socket[3] for more information.
|
||||
_messaging patterns_ section of link:zmq_socket.html[zmq_socket] for more information.
|
||||
*ETERM*::
|
||||
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
||||
*ENOTSOCK*::
|
||||
@ -108,9 +108,9 @@ rc = zmq_sendmsg (socket, &part3, 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_socket[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -41,7 +41,7 @@ limit.
|
||||
If this limit has been reached the socket shall enter an exceptional state and
|
||||
depending on the socket type, 0MQ shall take appropriate action such as
|
||||
blocking or dropping sent messages. Refer to the individual socket descriptions
|
||||
in linkzmq:zmq_socket[3] for details on the exact action taken for each socket
|
||||
in link:zmq_socket.html[zmq_socket] for details on the exact action taken for each socket
|
||||
type.
|
||||
|
||||
NOTE: 0MQ does not guarantee that the socket will accept as many as ZMQ_SNDHWM
|
||||
@ -66,7 +66,7 @@ limit.
|
||||
If this limit has been reached the socket shall enter an exceptional state and
|
||||
depending on the socket type, 0MQ shall take appropriate action such as
|
||||
blocking or dropping sent messages. Refer to the individual socket descriptions
|
||||
in linkzmq:zmq_socket[3] for details on the exact action taken for each socket
|
||||
in link:zmq_socket.html[zmq_socket] for details on the exact action taken for each socket
|
||||
type.
|
||||
|
||||
[horizontal]
|
||||
@ -89,7 +89,7 @@ corresponds to thread 1, second lowest bit to thread 2 and so on. For example,
|
||||
a value of 3 specifies that subsequent connections on 'socket' shall be handled
|
||||
exclusively by I/O threads 1 and 2.
|
||||
|
||||
See also linkzmq:zmq_init[3] for details on allocating the number of I/O
|
||||
See also link:zmq_init.html[zmq_init] for details on allocating the number of I/O
|
||||
threads for a specific _context_.
|
||||
|
||||
[horizontal]
|
||||
@ -153,7 +153,7 @@ Applicable socket types:: ZMQ_REQ, ZMQ_REP, ZMQ_ROUTER, ZMQ_DEALER.
|
||||
ZMQ_RATE: Set multicast data rate
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The 'ZMQ_RATE' option shall set the maximum send or receive data rate for
|
||||
multicast transports such as linkzmq:zmq_pgm[7] using the specified 'socket'.
|
||||
multicast transports such as link:zmq_pgm.html[zmq_pgm] using the specified 'socket'.
|
||||
|
||||
[horizontal]
|
||||
Option value type:: int
|
||||
@ -213,8 +213,8 @@ ZMQ_LINGER: Set linger period for socket shutdown
|
||||
The 'ZMQ_LINGER' option shall set the linger period for the specified 'socket'.
|
||||
The linger period determines how long pending messages which have yet to be
|
||||
sent to a peer shall linger in memory after a socket is closed with
|
||||
linkzmq:zmq_close[3], and further affects the termination of the socket's
|
||||
context with linkzmq:zmq_term[3]. The following outlines the different
|
||||
link:zmq_close.html[zmq_close], and further affects the termination of the socket's
|
||||
context with link:zmq_term.html[zmq_term]. The following outlines the different
|
||||
behaviours:
|
||||
|
||||
* The default value of '-1' specifies an infinite linger period. Pending
|
||||
@ -571,7 +571,7 @@ ZMQ_PLAIN_SERVER: Set PLAIN server role
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Defines whether the socket will act as server for PLAIN security, see
|
||||
linkzmq:zmq_plain[7]. A value of '1' means the socket will act as
|
||||
link:zmq_plain.html[zmq_plain]. A value of '1' means the socket will act as
|
||||
PLAIN server. A value of '0' means the socket will not act as PLAIN
|
||||
server, and its security role then depends on other option settings.
|
||||
Setting this to '0' shall reset the socket security to NULL.
|
||||
@ -588,8 +588,8 @@ ZMQ_PLAIN_USERNAME: Set PLAIN security username
|
||||
|
||||
Sets the username for outgoing connections over TCP or IPC. If you set this
|
||||
to a non-null value, the security mechanism used for connections shall be
|
||||
PLAIN, see linkzmq:zmq_plain[7]. If you set this to a null value, the security
|
||||
mechanism used for connections shall be NULL, see linkzmq:zmq_null[3].
|
||||
PLAIN, see link:zmq_plain.html[zmq_plain]. If you set this to a null value, the security
|
||||
mechanism used for connections shall be NULL, see link:zmq_null.html[zmq_null].
|
||||
|
||||
[horizontal]
|
||||
Option value type:: character string
|
||||
@ -603,8 +603,8 @@ ZMQ_PLAIN_PASSWORD: Set PLAIN security password
|
||||
|
||||
Sets the password for outgoing connections over TCP or IPC. If you set this
|
||||
to a non-null value, the security mechanism used for connections shall be
|
||||
PLAIN, see linkzmq:zmq_plain[7]. If you set this to a null value, the security
|
||||
mechanism used for connections shall be NULL, see linkzmq:zmq_null[3].
|
||||
PLAIN, see link:zmq_plain.html[zmq_plain]. If you set this to a null value, the security
|
||||
mechanism used for connections shall be NULL, see link:zmq_null.html[zmq_null].
|
||||
|
||||
[horizontal]
|
||||
Option value type:: character string
|
||||
@ -617,7 +617,7 @@ ZMQ_CURVE_SERVER: Set CURVE server role
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Defines whether the socket will act as server for CURVE security, see
|
||||
linkzmq:zmq_curve[7]. A value of '1' means the socket will act as
|
||||
link:zmq_curve.html[zmq_curve]. A value of '1' means the socket will act as
|
||||
CURVE server. A value of '0' means the socket will not act as CURVE
|
||||
server, and its security role then depends on other option settings.
|
||||
Setting this to '0' shall reset the socket security to NULL. When you
|
||||
@ -636,10 +636,10 @@ ZMQ_CURVE_PUBLICKEY: Set CURVE public key
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sets the socket's long term public key. You must set this on CURVE client
|
||||
sockets, see linkzmq:zmq_curve[7]. You can provide the key as 32 binary
|
||||
sockets, see link:zmq_curve.html[zmq_curve]. You can provide the key as 32 binary
|
||||
bytes, or as a 40-character string encoded in the Z85 encoding format.
|
||||
The public key must always be used with the matching secret key. To
|
||||
generate a public/secret key pair, use linkzmq:zmq_curve_keypair[3].
|
||||
generate a public/secret key pair, use link:zmq_curve_keypair.html[zmq_curve_keypair].
|
||||
|
||||
[horizontal]
|
||||
Option value type:: binary data or Z85 text string
|
||||
@ -652,10 +652,10 @@ ZMQ_CURVE_SECRETKEY: Set CURVE secret key
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sets the socket's long term secret key. You must set this on both CURVE
|
||||
client and server sockets, see linkzmq:zmq_curve[7]. You can provide the
|
||||
client and server sockets, see link:zmq_curve.html[zmq_curve]. You can provide the
|
||||
key as 32 binary bytes, or as a 40-character string encoded in the Z85
|
||||
encoding format. To generate a public/secret key pair, use
|
||||
linkzmq:zmq_curve_keypair[3].
|
||||
link:zmq_curve_keypair.html[zmq_curve_keypair].
|
||||
|
||||
[horizontal]
|
||||
Option value type:: binary data or Z85 text string
|
||||
@ -668,7 +668,7 @@ ZMQ_CURVE_SERVERKEY: Set CURVE server key
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sets the socket's long term server key. You must set this on CURVE client
|
||||
sockets, see linkzmq:zmq_curve[7]. You can provide the key as 32 binary
|
||||
sockets, see link:zmq_curve.html[zmq_curve]. You can provide the key as 32 binary
|
||||
bytes, or as a 40-character string encoded in the Z85 encoding format.
|
||||
This key must have been generated together with the server's secret key.
|
||||
|
||||
@ -760,11 +760,11 @@ assert (rc);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_getsockopt[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq_plain[7]
|
||||
linkzmq:zmq_curve[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq_plain.html[zmq_plain]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -21,9 +21,9 @@ communication over the socket.
|
||||
|
||||
The newly created socket is initially unbound, and not associated with any
|
||||
endpoints. In order to establish a message flow a socket must first be
|
||||
connected to at least one endpoint with linkzmq:zmq_connect[3], or at least one
|
||||
connected to at least one endpoint with link:zmq_connect.html[zmq_connect], or at least one
|
||||
endpoint must be created for accepting incoming connections with
|
||||
linkzmq:zmq_bind[3].
|
||||
link:zmq_bind.html[zmq_bind].
|
||||
|
||||
.Key differences to conventional sockets
|
||||
Generally speaking, conventional sockets present a _synchronous_ interface to
|
||||
@ -112,7 +112,7 @@ peers, and each message received is fair-queued from all connected peers.
|
||||
|
||||
When a 'ZMQ_DEALER' socket enters the 'mute' state due to having reached the
|
||||
high water mark for all peers, or if there are no peers at all, then any
|
||||
linkzmq:zmq_send[3] operations on the socket shall block until the mute
|
||||
link:zmq_send.html[zmq_send] operations on the socket shall block until the mute
|
||||
state ends or at least one peer becomes available for sending; messages are not
|
||||
discarded.
|
||||
|
||||
@ -175,7 +175,7 @@ ZMQ_PUB
|
||||
^^^^^^^
|
||||
A socket of type 'ZMQ_PUB' is used by a _publisher_ to distribute data.
|
||||
Messages sent are distributed in a fan out fashion to all connected peers.
|
||||
The linkzmq:zmq_recv[3] function is not implemented for this socket type.
|
||||
The link:zmq_recv.html[zmq_recv] function is not implemented for this socket type.
|
||||
|
||||
When a 'ZMQ_PUB' socket enters the 'mute' state due to having reached the
|
||||
high water mark for a _subscriber_, then any messages that would be sent to the
|
||||
@ -196,7 +196,7 @@ ZMQ_SUB
|
||||
^^^^^^^
|
||||
A socket of type 'ZMQ_SUB' is used by a _subscriber_ to subscribe to data
|
||||
distributed by a _publisher_. Initially a 'ZMQ_SUB' socket is not subscribed to
|
||||
any messages, use the 'ZMQ_SUBSCRIBE' option of linkzmq:zmq_setsockopt[3] to
|
||||
any messages, use the 'ZMQ_SUBSCRIBE' option of link:zmq_setsockopt.html[zmq_setsockopt] to
|
||||
specify which messages to subscribe to. The _zmq_send()_ function is not
|
||||
implemented for this socket type.
|
||||
|
||||
@ -262,7 +262,7 @@ socket type.
|
||||
|
||||
When a 'ZMQ_PUSH' socket enters the 'mute' state due to having reached the
|
||||
high water mark for all downstream _nodes_, or if there are no downstream
|
||||
_nodes_ at all, then any linkzmq:zmq_send[3] operations on the socket shall
|
||||
_nodes_ at all, then any link:zmq_send.html[zmq_send] operations on the socket shall
|
||||
block until the mute state ends or at least one downstream _node_
|
||||
becomes available for sending; messages are not discarded.
|
||||
|
||||
@ -309,11 +309,11 @@ time. No message routing or filtering is performed on messages sent over a
|
||||
|
||||
When a 'ZMQ_PAIR' socket enters the 'mute' state due to having reached the
|
||||
high water mark for the connected peer, or if no peer is connected, then
|
||||
any linkzmq:zmq_send[3] operations on the socket shall block until the peer
|
||||
any link:zmq_send.html[zmq_send] operations on the socket shall block until the peer
|
||||
becomes available for sending; messages are not discarded.
|
||||
|
||||
NOTE: 'ZMQ_PAIR' sockets are designed for inter-thread communication across
|
||||
the linkzmq:zmq_inproc[7] transport and do not implement functionality such
|
||||
the link:zmq_inproc.html[zmq_inproc] transport and do not implement functionality such
|
||||
as auto-reconnection. 'ZMQ_PAIR' sockets are considered experimental and may
|
||||
have other missing or broken aspects.
|
||||
|
||||
@ -428,14 +428,14 @@ zmq_ctx_destroy (ctx);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_init[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_send[3]
|
||||
linkzmq:zmq_recv[3]
|
||||
linkzmq:zmq_inproc[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_init.html[zmq_init]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_send.html[zmq_send]
|
||||
link:zmq_recv.html[zmq_recv]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -250,7 +250,7 @@ int main()
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -46,7 +46,7 @@ if (!ctx) {
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -43,7 +43,7 @@ The TCP port number may be specified by:
|
||||
* The wild-card `*`, meaning a system-assigned ephemeral port.
|
||||
|
||||
When using ephemeral ports, the caller should retrieve the actual assigned
|
||||
port using the ZMQ_LAST_ENDPOINT socket option. See linkzmq:zmq_getsockopt[3]
|
||||
port using the ZMQ_LAST_ENDPOINT socket option. See link:zmq_getsockopt.html[zmq_getsockopt]
|
||||
for details.
|
||||
|
||||
|
||||
@ -89,12 +89,12 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_connect[3]
|
||||
linkzmq:zmq_pgm[7]
|
||||
linkzmq:zmq_ipc[7]
|
||||
linkzmq:zmq_inproc[7]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_connect.html[zmq_connect]
|
||||
link:zmq_pgm.html[zmq_pgm]
|
||||
link:zmq_ipc.html[zmq_ipc]
|
||||
link:zmq_inproc.html[zmq_inproc]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -34,9 +34,9 @@ Context termination is performed in the following steps:
|
||||
option has expired.
|
||||
|
||||
For further details regarding socket linger behaviour refer to the _ZMQ_LINGER_
|
||||
option in linkzmq:zmq_setsockopt[3].
|
||||
option in link:zmq_setsockopt.html[zmq_setsockopt].
|
||||
|
||||
This function is deprecated by linkzmq:zmq_ctx_term[3].
|
||||
This function is deprecated by link:zmq_ctx_term.html[zmq_ctx_term].
|
||||
|
||||
RETURN VALUE
|
||||
------------
|
||||
@ -54,10 +54,10 @@ Termination was interrupted by a signal. It can be restarted if needed.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
linkzmq:zmq_init[3]
|
||||
linkzmq:zmq_close[3]
|
||||
linkzmq:zmq_setsockopt[3]
|
||||
link:zmq.html[zmq]
|
||||
link:zmq_init.html[zmq_init]
|
||||
link:zmq_close.html[zmq_close]
|
||||
link:zmq_setsockopt.html[zmq_setsockopt]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -18,7 +18,7 @@ The _zmq_unbind()_ function shall unbind a socket specified
|
||||
by the 'socket' argument from the endpoint specified by the 'endpoint'
|
||||
argument.
|
||||
|
||||
The 'endpoint' argument is as described in linkzmq:zmq_bind[3]
|
||||
The 'endpoint' argument is as described in link:zmq_bind.html[zmq_bind]
|
||||
|
||||
|
||||
RETURN VALUE
|
||||
@ -54,9 +54,9 @@ assert (rc == 0);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_bind[3]
|
||||
linkzmq:zmq_socket[3]
|
||||
linkzmq:zmq[7]
|
||||
link:zmq_bind.html[zmq_bind]
|
||||
link:zmq_socket.html[zmq_socket]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -45,7 +45,7 @@ printf ("Current 0MQ version is %d.%d.%d\n", major, minor, patch);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq[7]
|
||||
link:zmq.html[zmq]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -39,9 +39,9 @@ zmq_z85_decode (public_key, decoded);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_z85_decode[3]
|
||||
linkzmq:zmq_curve_keypair[3]
|
||||
linkzmq:zmq_curve[7]
|
||||
link:zmq_z85_decode.html[zmq_z85_decode]
|
||||
link:zmq_curve_keypair.html[zmq_curve_keypair]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
@ -46,9 +46,9 @@ puts (encoded);
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkzmq:zmq_z85_decode[3]
|
||||
linkzmq:zmq_curve_keypair[3]
|
||||
linkzmq:zmq_curve[7]
|
||||
link:zmq_z85_decode.html[zmq_z85_decode]
|
||||
link:zmq_curve_keypair.html[zmq_curve_keypair]
|
||||
link:zmq_curve.html[zmq_curve]
|
||||
|
||||
|
||||
AUTHORS
|
||||
|
Loading…
x
Reference in New Issue
Block a user