Martin Lucina 0319cb2cd1 Fix data loss for PUB/SUB and unidirectional transports (LIBZMQ-268)
With the introduction of subscription forwarding, the first message sent
on a PUB socket using a unidirectional transport (e.g. PGM) is always
lost due to the "subscribe to all" being done asynchronously.

This patch fixes the problem and also refactors the code to have a single
point where the "subscribe to all" is performed.

Signed-off-by: Martin Lucina <martin@lucina.net>
2012-02-02 13:07:48 +01:00
2011-12-18 12:30:31 +01:00
2011-12-18 11:19:55 +01:00
2011-11-06 14:03:51 +01:00
2011-11-21 08:10:03 +01:00
2011-11-21 08:10:03 +01:00
2011-12-03 13:27:20 +01:00
2010-02-16 17:50:36 +01:00
2011-11-04 08:05:39 +01:00
2011-04-09 08:45:12 +02:00
2011-12-18 11:41:45 +01:00

Welcome
-------

The 0MQ lightweight messaging kernel is a library which extends the
standard socket interfaces with features traditionally provided by
specialised messaging middleware products. 0MQ sockets provide an
abstraction of asynchronous message queues, multiple messaging patterns,
message filtering (subscriptions), seamless access to multiple transport
protocols and more.


Building and installation
-------------------------

See the INSTALL file included with the distribution.


Resources
---------

Extensive documentation is provided with the distribution. Refer to
doc/zmq.html, or "man zmq" after you have installed 0MQ on your system.

Website: http://www.zeromq.org/

Development mailing list: zeromq-dev@lists.zeromq.org
Announcements mailing list: zeromq-announce@lists.zeromq.org

Git repository: http://github.com/zeromq/libzmq

0MQ developers can also be found on the IRC channel #zeromq, on the
Freenode network (irc.freenode.net).

Copying
-------

Free use of this software is granted under the terms of the GNU Lesser General
Public License (LGPL). For details see the files `COPYING` and `COPYING.LESSER`
included with the 0MQ distribution.
Languages
C++ 84.3%
M4 4.9%
CMake 3.3%
Shell 2.5%
Makefile 2.3%
Other 2.6%