- 10 May, 2016 1 commit
-
-
hitstergtd authored
Solution: Mark it with LIBZMQ_UNUSED macro as per convention.
-
- 02 Apr, 2016 1 commit
-
-
Frederic Tregon authored
Problem: Since pull request #1730 was merged, protocol for REQ socket is checked at the session level and this check does not take into account the possibility of a request_id being part of the message. Thus the option ZMQ_REQ_CORRELATE would no longer work. This is now fixed: the possiblity of a 4 bytes integer being present before the delimiter frame is taken into account (whether or not this breaks the REQ/REP RFC is another issue).
-
- 20 Mar, 2016 1 commit
-
-
Frederic Tregon authored
Problem: when using ZMQ_REQ_RELAXED + ZMQ_REQ_CORRELATE and two 'send' are executed in a row and no server is available at the time of the sends, then the internal request_id used to identify messages gets corrupted and the two messages end up with the same request_id. The correlation no longer works in that case and you may end up with the wrong message. Solution: make a copy of the request_id instance member before sending it down the pipe.
-
- 18 Feb, 2016 1 commit
-
-
Osiris authored
Solution: Phase I - make precompiled.hpp be first file included in every source file
-
- 07 Feb, 2016 1 commit
-
-
Brian Silverman authored
Otherwise, it's undefined behavior. ubsan catches alignment issues in the libzmq test suite without this.
-
- 06 Feb, 2016 1 commit
-
-
Pieter Hintjens authored
There's no value in this as the same pattern is repeated in several places and it's fair to expect people to understand it. Solution: revert to the old, one-liner style.
-
- 05 Feb, 2016 1 commit
-
-
Brian Silverman authored
It's undefined behavior, and ubsan flags it.
-
- 28 Jan, 2016 1 commit
-
-
Constantin Rack authored
Solution: update to 2016
-
- 01 Jan, 2016 1 commit
-
-
Frederic Tregon authored
When using ZMQ_REQ_RELAXED and a 'send' is executed after another 'send' the previous code would terminate the 'reply_pipe' if any. This is incorrect as terminating the reply pipe also terminates the send pipe as they are the same (a pipe associated with a socket is bidirectional). Doing a terminate on the pipe sets an internal flag called out_active to false and the pipe can no longer send messages. Removing the 'terminate' solves the problem. Removing this call is not an issue as the incorrect ordering of messages that could be incurred is taken care of by the ZMQ_REQ_CORRELATE option if needed.
-
- 06 Sep, 2015 1 commit
-
-
Constantin Rack authored
-
- 02 Jun, 2015 1 commit
-
-
Pieter Hintjens authored
Of course people still "can" distributed the sources under the LGPLv3. However we provide COPYING.LESSER with additional grants. Solution: specify these grants in the header of each source file.
-
- 22 Jan, 2015 1 commit
-
-
Pieter Hintjens authored
Solution: update for 2015 Fixes #1320
-
- 12 Mar, 2014 1 commit
-
-
Mark Barbisan authored
-
- 08 Jan, 2014 1 commit
-
-
Martin Hurton authored
-
- 02 Jan, 2014 1 commit
-
-
Pieter Hintjens authored
-
- 20 Sep, 2013 1 commit
-
-
Pieter Hintjens authored
* ZMQ_REQ_STRICT was negative option (default 1) which goes against the standard, where defaults are zero. I renamed this to ZMQ_REQ_RELAXED. * ZMQ_REQ_REQUEST_IDS felt clumsy and describes the technical solution rather than the problem/requirement. I changed to ZMQ_REQ_CORRELATE which seems more explicit.
-
- 24 Aug, 2013 1 commit
-
-
Evan Burkitt authored
Added some missing (but existing in branch) files to libzmq11 project needed to compile as static library by VS2012 (at least), and fixed some warnings. One warning remains in raw_decoder.cpp, which I'm leaving for now because I'm not sure how project owners would like to fix it.
-
- 03 Aug, 2013 1 commit
-
-
Christian Kamm authored
It defaults to enabled. Switch it off to be able to send a new message before the previous reply has been received.
-
- 29 Jul, 2013 1 commit
-
-
Christian Kamm authored
* Fixes a terminate() call on a dangling pointer in the SEND_RESETS case. * Fixes recv_reply_pipe() never receiving a message once the pipe it is waiting on is terminated.
-
- 28 Jul, 2013 1 commit
-
-
Christian Kamm authored
This allows making a new request on a REQ socket by sending a new message. Without the option set, calling send() after the first message is done will continue to return an EFSM error. It's useful for when a REQ is not getting a response. Previously that meant creating a new socket or switching to DEALER.
-
- 26 Jul, 2013 1 commit
-
-
Christian Kamm authored
* Documentation: The default behavior of REQ sockets is to rely on the ordering of messages to match requests and responses and that is usually sufficient. When this option is set to 1, the REQ socket will prefix outgoing messages with an extra frame containing a request id. That means the full message is (request id, 0, user frames...). The REQ socket will discard all incoming messages that don't begin with these two frames. * Behavior change: When a REQ socket gets an invalid reply, it used to discard the message and return EAGAIN. REQ sockets still discard invalid messages, but keep looking at the next one automatically until a good one is found or there are no more messages. * Add test_req_request_ids.
-
- 14 Jul, 2013 1 commit
-
-
Christian Kamm authored
* Add lb_t::sendpipe() that returns the pipe that was used for sending, similar to fq_t::recvpipe(). * Add forwarder functions to dealer_t to access these two. * Add logic to req_t to ignore replies on pipes that are not the one where the request was sent. * Enable test in test_spec_req.
-
- 29 Jun, 2013 2 commits
-
-
Martin Hurton authored
-
Martin Hurton authored
-
- 11 Apr, 2013 1 commit
-
-
Martin Hurton authored
-
- 12 Mar, 2013 1 commit
-
-
Pieter Hintjens authored
Copyrights had become ads for Sustrik's corporate sponsors, going against the original agreement to share copyrights with the community (that agreement was: one line stating iMatix copyright + one reference to AUTHORS file). The proliferation of corporate ads is also unfair to the many individual authors. I've removed ALL corporate title from the source files so the copyright statements can now be centralized in AUTHORS and source files can be properly updated on an annual basis.
-
- 09 Nov, 2012 3 commits
-
-
Martin Hurton authored
-
Martin Hurton authored
-
Martin Hurton authored
-
- 02 Sep, 2012 1 commit
-
-
Martin Hurton authored
This patch introduces i_msg_sink and i_msg_source interfaces. This allows us to make message encoder and decoder more general.
-
- 29 May, 2012 1 commit
-
-
Martin Hurton authored
The patch extends the internal session's API with the reset method. This method is used to reset a session's state so that it can handle a new connection.
-
- 22 Mar, 2012 1 commit
-
-
Pieter Hintjens authored
-
- 20 Mar, 2012 1 commit
-
-
Pieter Hintjens authored
* Implemented new ctx API (_new, _destroy, _get, _set) * Removed 'typesafe' macros from zmq.h * Added support for MAX_SOCKETS (was tied into change for #337) * Created new man pages
-
- 16 Feb, 2012 1 commit
-
-
Staffan Gimåker authored
This allows us to actually report an error to the caller on resolve failure, rather than asserting later on in the io thread. Signed-off-by:
Staffan Gimåker <staffan@spotify.com>
-
- 08 Nov, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 04 Nov, 2011 1 commit
-
-
Martin Sustrik authored
However, the "durable socket" behaviour wasn't re-added. Identities are used solely for routing in REQ/REP pattern. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 01 Nov, 2011 2 commits
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 31 Oct, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 29 Oct, 2011 1 commit
-
-
Perry Kundert authored
When zmq::req_t::xrecv detects that a response has no request ID label, or the ID is the wrong size, it would return an EAGAIN, but would not discard the remainder of the message. This could allow the remainder of the message to incorrectly "leak" into a future response, if it is crafted to look like a reply with a valid response ID. Discard all remaining message blocks, if the ID is invalid in any way.
-