summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-06-20LABEL flag added to the wire formatMartin Sustrik
So far there was no distinction between message parts used by 0MQ and message parts used by user. Now, the message parts used by 0MQ are marked as 'LABEL'. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-20Basic tests now test multi-part messages instead of single-partMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-20Bug fixed in pipe terminationMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-20Optimise block/non-block switching in mailbox_tFabien Ninoles
For the platforms that don't support MSG_DONTWAIT the reader socket in mailbox_t was kept in non-blocking state and flipped to blocking state and back when blocking read was requested. Now, the state is preserved between calls and flipped only if different type of operation (block vs. non-block) is requested. Signed-off-by: Fabien Ninoles <fabien@tzone.org> Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-20Fix minor warning in MSVC buildMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-20Disable timeo test on MinGWMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Mailbox timeouts fixed on WindowsMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Documentation for XPUB and XSUB socket addedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Session termination error fixedMartin Sustrik
When session is already terminating and reconnection happens at that point, the session should not create new pipe to its socket. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Race condition in pipe_t fixed.Martin Sustrik
pipe_t now correctly drops pointer to the underlying pipe when sending pipe_term_ack command. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19ENETDOWN is a legal error from TCP connectMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Throughput tests fixed.Martin Sustrik
Introduction of subscription forwarding have broken throughput tests. This patch changes the pattern used in the tests to PUSH/PULL. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-19Merge branch 'master' of github.com:zeromq/libzmqMartin Sustrik
2011-06-18Refactor Windows versioning and WinSock usage.Signed-off-by: Steven McCoy ↵Steven McCoy
<steven.mccoy@miru.hk>
2011-06-18Minor MSVC warning fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-17Add sockopt ZMQ_RCVTIMEO/ZMQ_SNDTIMEO.Fabien Ninoles
- Add doc and tests - Add options and setup - Wait using poll/select Signed-off-by: Fabien Ninoles <fabien@tzone.org> Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-14ENETUNREACH is a valid error from connectMartin Sustrik
This patch fixed the JIRA issue 223 Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-13Minor patch to fix ICC buildMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-13mtrie.cpp added to MSVC buildMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-13Reverting previous commit that broke MSVC2010 buildMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-12Fix scope on Windows includes.Steven McCoy
Fix windows.h included before winsock2.h. Remove definition of _WINSOCKAPI_. Signed-off-by: Steven McCoy <steven.mccoy@miru.hk>
2011-06-12ZMQ_FILTER socket option addedMartin Sustrik
This option is a performance tweak. In devices XSUB socket filters the messages just to send them to XPUB socket which filters them once more. Setting ZMQ_FILTER option to 0 allows to switch the filtering in XSUB socket off. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-12Publisher-side filtering for multi-part messages fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-11Actual message filtering happens in XPUB socketMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-01Minor code beautification for mtrie_tMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-31Subscriptions are processed immediately in XPUB socketMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-31Session termination induced by socket fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-30Patches from sub-forward branch incorporatedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-28Subscription matching moved from XSUB to SUB socketMartin Sustrik
This patch will prevent duplicate matching in devices in the future. Instead of matching in both XPUB and XSUB, it'll happen only in XPUB. Receiver endpoint will still filter messages via SUB socket. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-26Pending messages are delivered even if connection doesn't exist yetMartin Sustrik
Bug in previous refactoring fixed. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-25All pipe termination code moved to pipe_tMartin Sustrik
Till now the code was spread over mutliple locations. Additionally, the code was made more formally correct, with explicit pipe state machine etc. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-23Fabien Ninoles added to the AUTHORS fileMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-23Add multi-array support to array_item_t.Fabien Ninoles
Allow to have the same item part of two different arrays, as long as they are using different array identifier.
2011-05-23Move the pipe termination code to socket_base_tMartin Sustrik
So far, the pipe termination code was spread among socket type classes, fair queuer, load balancer, etc. This patch moves all the associated logic to a single place. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-22Introduces bi-directional pipesMartin Sustrik
So far, there was a pair of unidirectional pipes between a socket and a session (or an inproc peer). This resulted in complex problems with half-closed states and tracking which inpipe corresponds to which outpipe. This patch doesn't add any functionality in itself, but is essential for further work on features like subscription forwarding. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-17Couple of minor issues in MSVC build fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-17Paul Colomiets added to AUTHORS fileMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-17Better handling of memory error in resolve_ip_hostnamePaul Colomiets
Signed-off-by: Paul Colomiets <pc@gafol.net>
2011-05-17zmq_msg_init_data returns ERRNO instead abortingPaul Colomiets
Signed-off-by: Paul Colomiets <pc@gafol.net>
2011-05-16Duplicate initialisation of PGM_MULTICAST_HOPS removedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-15ZMQ_MULTICAST_HOPS socket option addedMartin Sustrik
Sets the time-to-live field in every multicast packet sent from the socket. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-15Fixes warning when compiling with MSVC on Win64Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-08Async connect doesn't fail on EWSANETDOWNMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-08Fixed REP assert on missing envelopePieter Hintjens
Signed-off-by: Pieter Hintjens <ph@imatix.com>
2011-05-06urrent pipe pointer in XREP out of range -- fixed.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-04Tore Halvorsen added to the AUTHORS fileMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-04Accessing an iterator after it is accessed is not valid.Tore Halvorsen
Moving the erase after the access and check agains current_id.
2011-05-03Deallocation functions in zmq.h and msg_t class are consistent.Martin Sustrik
The two functions had different calling conventions (C vs. C++). It is fixed now. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-03Minor patch to keep ICC compiler happyMartin Sustrik
ICC doesn't recognise that assert(false) terminates the program and thus complains that certain functions have no return values. This patch supplies dummy return values to keep the compiler happy. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-05-02Current inpipe remains unchaged in XREP when other pipe terminatesMartin Sustrik
When an inpipe terminated within XREP, it was erased from the array and thus current_in (which is an index) pointed to a different element in the array. This caused problems when we were in the middle of reading a multipart message. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>