- 18 Aug, 2017 3 commits
- 04 Aug, 2017 1 commit
-
-
Simon Giesecke authored
Solution: Define them in zmq.h and use them (currently in DRAFT API)
-
- 03 Aug, 2017 1 commit
-
-
Simon Giesecke authored
* Fixing #2002 one way of doing it * Mechanisms can implement a new method `error_detail()` * This error detail have three values for the moment: no_detail (default), protocol, encryption. + generic enough to make sense for all mechanisms. - low granularity level on information. * Fixing #2002: implementation of the error details The ZMQ_EVENT_HANDSHAKE_FAILED event carries the error details as value. * Removed Microsoft extenstion for enum member access This was leading to compilation error under linux. * Adaptation of CURVE test cases * Monitoring event: changed API for detailed events Removed ZMQ_EVENT_HANDSHAKE_FAILED and replaced it by: - ZMQ_EVENT_HANDSHAKE_FAILED_NO_DETAIL, - ZMQ_EVENT_HANDSHAKE_FAILED_PROTOCOL, - ZMQ_EVENT_HANDSHAKE_FAILED_ENCRYPTION Adaptation of text case `security_curve` * Removed event value comparison This was introduced for the previous API model adaptation * Removed the prints in std output and added missing details `current_error_detail` was not set in every protocol error cases * Fixed initialization of current_error_detail * Fixed error in greeting test case The handshake failure due to mechanism mismatch in greeting is actually a protocol error. The error handling method consider it like so and send a protocol handshake failure monitoring event instead of no_detail. Fixed the test_security_curve expectation as well. * Upgraded tests of monitoring events The tests check the number of monitoring events received * Problem: does not build under Linux or without ZMQ_DRAFT_API Solution: - properly use ZMQ_DRAFT_API conditional compilation - use receive timeouts instead of Sleep * Problem: duplicate definition of variable 'timeout' Solution: merged definitions * Problem: inconsistent timing dependencies Solution: reduce timing dependency by using timeouts at more places * Problem: assertion failure under Linux due to unexpected monitor event Solution: output event type to aid debugging * Problem: erroneous assertion code * Problem: assertion failure with a garbage server key due to an extra third event Solution: changed assertion to expect three events (needs to be checked) * Problem: extra include directive to non-existent file Solution: removed include directive * Problem: assertion failure on appveyor for unknown reason Solution: improve debug output * Problem: no build with libsodium and draft api Solution: add build configurations with libsodium and draft api * Problem: assertion failure on CI Solution: change assertion to reflect actual behaviour on CI (at least temporarily) * Problem: error in condition in assertion code * Problem: assertion failure on CI Solution: generalize assertion to match behavior on CI * Problem: assertion failures on CI Solution: removed inconsistent assertion on no monitor events before flushing improved debuggability by converting function into macro * Problem: diverging test code for three analogous test cases with garbage key Solution: extract common code into function * Problem: does not build without ZMQ_BUILD_DRAFT_API Solution: introduce dummy variable * Attempt to remove workaround regarding ZMQ_EVENT_HANDSHAKE_FAILED_NO_DETAIL again * Problem: EAGAIN error after handshake complete if there is no more data in inbuffer Solution: Skip tcp_read attempt in that case * Problem: handshaking event emitted after handshaking failed Solution: use stream_engine_t::handshaking instead of mechanism_t::status() to determine whether still handshaking * Include error code in debug output * Improve debugging output: output flushed events * Split up ZMQ_EVENT_HANDSHAKE_FAILED_PROTOCOL into ZMQ_EVENT_HANDSHAKE_FAILED_ZMTP and ZMQ_EVENT_HANDSHAKE_FAILED_ZAP * Fixed compilation without ZMQ_BUILD_DRAFT_API * Renamed ZMQ_EVENT_HANDSHAKE_SUCCEED to ZMQ_EVENT_HANDSHAKE_SUCCEEDED for language consistency * Renamed ZMQ_EVENT_HANDSHAKE_SUCCEED to ZMQ_EVENT_HANDSHAKE_SUCCEEDED for language consistency * Renamed ZMQ_EVENT_HANDSHAKE_SUCCEED to ZMQ_EVENT_HANDSHAKE_SUCCEEDED for language consistency * Fixed assert_monitor_event (require event instead of allowing no event) Reverted erroneous change to handshaking condition Renamed test_wrong_key to test_garbage_key Generalized assumption in test_garbage_key to allow for ZMQ_EVENT_HANDSHAKE_FAILED_NO_DETAIL with error == EPIPE * Better isolate test cases from each other by providing a fresh context & server for each * Added diagnostic output * Changed assertion to reflect actual behavior on CI * Fixed formatting, observe maximum line length * Fixed formatting, observe maximum line length * Increase timeout to check if this fixes valgrind run * Close server with close_zero_linger * Increase timeout to check if this fixes valgrind run * Increase timeout to check if this fixes valgrind run * Generalize assertion to also work with valgrind * Fixed formatting * Add more diagnostic output * Generalize assertion to also work with valgrind
-
- 31 Jul, 2017 1 commit
-
-
Luca Boccassi authored
Solution: move definition in the DRAFT section of the header
-
- 28 Apr, 2017 1 commit
-
-
Luca Boccassi authored
Solution: do not define ZMQ_HAVE_POLLER in src/zmq_drafts.h otherwise src/zmq.cpp will implement zmq_poll using the new poller classes. Same for ZMQ_HAVE_TIMERS, even though it has no internal effect, but to be safe against future development.
-
- 25 Apr, 2017 1 commit
-
-
Jim Garlick authored
Problem: GSSAPI NAMETYPE socket option numbers were modified +1000 when moved to DRAFT section, but should use the definitive values while in DRAFT to minimize disruption later. Solution: renumber the socket options
-
- 24 Apr, 2017 1 commit
-
-
Jim Garlick authored
Problem: The new GSSAPI NAMESPACE options should have been added to the DRAFT section of the API so they can be changed until stabilized. Solution: - Move defines to the DRAFT section of zmq.h - Duplicate them in zmq_draft.h, as is the local custom - Compile only if defined (ZMQ_BUILD_DRAFT_API) - Refactor internals slightly to avoid #ifdef hell
-
- 30 Dec, 2016 1 commit
-
-
Vincent Tellier authored
- Moved new events in draft section + added to zmq_draft.h - Removed the remainning tabs - Reverted the hard error (back to soft error) in curve_server.cpp => The feature doesn't works anymore
-
- 29 Dec, 2016 1 commit
-
-
Luca Boccassi authored
Solution: move it there, add it to src/zmq_draft.h and clarify in the documentation and in the NEWS file that this option is not yet stable
-
- 27 Sep, 2016 2 commits
-
-
Min RK authored
avoids unnecessary heap allocations, races on the number of items
-
Min RK authored
Solution: zmq_poller_wait_all signals all events allows signaling multiple events with one call to zmq_poller_wait_all rather than emitting only one event. this prepares for zmq_poll being based on zmq_poller, which requires events for all sockets rather than just one.
-
- 15 May, 2016 1 commit
-
-
Bitiquinho authored
-
- 14 May, 2016 1 commit
-
-
evoskuil authored
-
- 13 May, 2016 1 commit
-
-
evoskuil authored
-
- 12 May, 2016 1 commit
-
-
evoskuil authored
-
- 03 May, 2016 1 commit
-
-
Doron Somech authored
-
- 02 May, 2016 7 commits
-
-
Luca Boccassi authored
Solution: mark them as DRAFT APIs
-
Luca Boccassi authored
Solution: mark them as DRAFT APIs
-
Luca Boccassi authored
Solution: mark them as DRAFT APIs
-
Luca Boccassi authored
Solution: mark them as DRAFT APIs
-
Luca Boccassi authored
Solution: mark them as DRAFT APIs
-
Luca Boccassi authored
Solution: add support for --enable-drafts/ENABLE_DRAFTS=ON in Autools and CMake.
-
Luca Boccassi authored
Solution: include platform.hpp and include/zmq.h outside of ifdef for windows, in order to be able to use it for internal definitions.
-
- 21 Feb, 2016 1 commit
-
-
Osiris authored
Solution: Corrected Toolset setting where needed and inprove compilation speed by adding defintion of WIN32_LEAN_AND_MEAN prior to any Windows specific include files, which skips non-essential definitions during compilation.
-
- 18 Feb, 2016 1 commit
-
-
Osiris authored
Solution: Phase II - made compile using precompiled header
-
- 28 Jan, 2016 1 commit
-
-
Constantin Rack authored
Solution: update to 2016
-
- 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
-
- 02 Jan, 2014 1 commit
-
-
Pieter Hintjens 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.
-
- 15 Dec, 2011 1 commit
-
-
Stuart Webster authored
These include configurations for both Win32 and x64 platforms. All project settings have been normalised in property sheets (the ".props" files under builds/msvc/properties) to simplify maintenance. Build artefacts are all generated in platform-specific subfolders of bin, lib and obj directories. Also enables the use of precompiled headers with MSVC10. This significantly reduces the time required to compile libzmq with Visual Studio on Windows. It should have no impact on other platforms. Signed-off-by:
Stuart Webster <sw_webster@hotmail.com>
-
- 01 Nov, 2011 1 commit
-
-
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>
-
- 15 Jul, 2011 1 commit
-
-
Martin Sustrik authored
This patch simplifies the whole codebase significantly, including dropping depedency on libuuid. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 22 Jun, 2011 1 commit
-
-
Martin Sustrik authored
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>
-
- 02 Mar, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 30 Oct, 2010 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 13 Feb, 2010 1 commit
-
-
Martin Sustrik authored
-