Age | Commit message (Collapse) | Author |
|
This patch introduces two changes:
1. 32-bit ID is used to identify the peer instead of UUID
2. REQ socket seeds the label stack with unique 32-bit request ID
It also drops any replies with non-matching request ID
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
|
|
On-disk storage should be implemented in devices rather than
in 0MQ core. 0MQ is a networking library and there's no point
in storing network buffers on disk.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Devices are basically applications on top of 0MQ stack. They
should reside in separate libraties.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Reaper thread destroys the socket asynchronously.
zmq_term() can be interrupted by a signal (EINTR).
zmq_socket() will return ETERM after zmq_term() was called.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
hardcoding them.
Signed-off-by: Neale Ferguson <neale@sinenomine.net>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
These are just placeholders. At the moment XPUB behaves th same
as PUB and XSUB as SUB.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
On systems using GCC 4.0 or newer which support symbol visibility in shared
libraries, use -fvisibility=hidden and only export explict API functions
defined in zmq.cpp. We do not enable -fvisibility on MinGW since this uses a
separate mechanism (__declspec).
Signed-off-by: Martin Lucina <mato@kotelna.sk>
|
|
This conditional is unnecessary as BUILD_PGM can be negated in the test.
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
|
|
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
|
|
For historical reasons queue to transfer commands between
threads was called 'signaler'. Given that it was used to
pass commands rather than signals it was renamed to 'mailbox',
see Erlang mailboxes.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
|
|
is 'load'
|
|
|
|
for fq_t and lb_t)
|
|
|
|
|
|
|
|
|
|
|
|
Sockets may now be migrated between OS threads; sockets may not be used by
more than one thread at any time. To migrate a socket to another thread the
caller must ensure that a full memory barrier is called before using the
socket from the target thread.
The new zmq_close() semantics implement the behaviour discussed at:
http://lists.zeromq.org/pipermail/zeromq-dev/2010-July/004244.html
Specifically, zmq_close() is now deterministic and while it still returns
immediately, it does not discard any data that may still be queued for
sending. Further, zmq_term() will now block until all outstanding data has
been sent.
TODO: Many bugs have been introduced, needs testing. Further, SO_LINGER or
an equivalent mechanism (possibly a configurable timeout to zmq_term())
needs to be implemented.
|
|
definitions as aliases, to be removed in release 3.0. Also renamed the source
files implementing these two socket types. This change does not break existing
applications nor bindings, but allows us to fix the documentation and user guide
now, rather than keeping the old (confusing) names.
|
|
|
|
|
|
Removed various exotic -Wxxx flags in the OpenPGM build to get us to what is actually
required and reasonable; added in -fno-strict-aliasing since OpenPGM generates lots
of warnings about dereferencing typed-punned pointers; removed the OpenPGM extra flags
from libzmq_la_CXXFLAGS and left them only in libzmq_la_CFLAGS so that our code
is not built with the OpenPGM extra flags.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Compiling C++ code with -D_POSIX_SOURCE on Solaris is unsupported, so remove it.
Isolate GCC-isms inside checks that we are actually using GCC/G++.
Only check for -lstdc++ when on GCC and doing static linking.
|
|
|
|
C and C++ headers moved from bindings/ to include/, bindings/ removed
--with-c and --with-cpp options to configure removed, C and C++ now built
and installed by default
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|