Simon Giesecke
9fc3692e3f
Problem: read-only arguments of mtrie are not declared as const
...
Solution: add const, introduce typedef
2018-03-02 13:32:50 +01:00
Luca Boccassi
31387f84e4
Merge pull request #2960 from Romain-Geissler-1A/fix-gcc-8-build
...
Fix gcc 8 build warning/error with -O3.
2018-02-27 11:00:49 +00:00
Romain Geissler
1e03f7b2d4
Fix gcc 8 build warning/error with -O3.
2018-02-27 10:12:22 +01:00
Luca Boccassi
b575b05d2c
Merge pull request #2951 from eponsko/master
...
Problem: No support for addressing using TIPC Port Identity
2018-02-19 17:24:24 +00:00
Pontus Sköldström
78aa9b1983
Support addressing TIPC Port Identity
...
ZeroMQ currently supports location independent addressing using TIPC
Port Names with tipc://{type,instance}. This commits adds support for
connecting and binding using TIPC Port Identity addresses. To connect
using Port Identities the expected format is tipc://<Z.C.N:Ref>, e.g.
"tipc://<1.2.3:123123>". To bind using TIPC Port Identities the expected
format is "tipc://<*>".
2018-02-19 17:34:40 +01:00
Luca Boccassi
4c7c9b87bf
Merge pull request #2947 from sigiesec/fix-unittest-poller-race
...
Problem: race condition in unittest_poller
2018-02-14 18:19:44 +00:00
Luca Boccassi
2700c15d67
Merge pull request #2946 from hartcw/master
...
Minor fixes for windows cmake build
2018-02-14 15:10:56 +00:00
Francis Hart
ef7cb96782
Fix cmake install error when BUILD_SHARED is off
...
This fixes an error with the cmake install configuration, which
attempted an invalid copy of a .pdb file on windows, when the
BUILD_SHARED option is disabled.
2018-02-14 15:22:54 +02:00
Francis Hart
d470475272
Add cmake build option for disabling tests
...
This adds a new cmake build option called BUILD_TESTS, that can be used
to enable/disable building of the tests. This is enabled by default.
2018-02-14 15:22:54 +02:00
Francis Hart
dee0213108
Ensure correct cmake target suffix for all builds
...
This updates the cmake set_target_properperties usage, so that the suffix
is specified for the MinSizeRel build type.
2018-02-14 15:22:54 +02:00
Simon Giesecke
5224b8704a
Problem: race condition in unit test
...
Solution: fix order of statements in test_events_t
2018-02-13 22:27:15 -05:00
Luca Boccassi
487c275809
Merge pull request #2945 from kachanovskiy/master
...
Fix build break when SIO_LOOPBACK_FAST_PATH is not defined (i.e. in VS2010)
2018-02-13 22:29:38 +00:00
Kachanovskiy
e10464e45e
Fix for build break when SIO_LOOPBACK_FAST_PATH is not defined (i.e. in VS2010)
2018-02-13 23:04:08 +01:00
Luca Boccassi
bc467f0631
Merge pull request #2944 from sigiesec/unity
...
Problem: insufficient unit tests for poller concept and ypipe
2018-02-13 19:05:51 +00:00
Simon Giesecke
94743fd21f
Problem: wrong formatting in several files
...
Solution: apply clang-format
2018-02-13 18:40:43 +01:00
Simon Giesecke
90c6d993be
Problem: kqueue_t fails unittest_poller
...
Solution: fix shutdown of kqueue_t
2018-02-13 18:38:30 +01:00
Simon Giesecke
3b90ad8c63
Problem: support of std::atomic is incomplete in VS <2015
...
Solution: use std::atomic only from VS 2015
2018-02-13 18:38:29 +01:00
Simon Giesecke
9aa957b445
Problem: appveyor builds fails if they are not the most recent commit
...
Solution: use shallow_clone option instead of clone_depth
2018-02-13 18:38:28 +01:00
Simon Giesecke
815c7db06b
Problem: poll build runs as last appveyor build
...
Solution: change order of appveyor build jobs to enable faster feedback
on more diverse builds
2018-02-13 18:38:27 +01:00
Simon Giesecke
0458b85dec
Problem: Some tests timeout on appveyor for POLLER=poll
...
Solution: Increase test timeouts for poll poller under Windows
2018-02-13 18:38:26 +01:00
Simon Giesecke
96131b5b4e
Problem: no documentation of the poller concept
...
Solution: added documentation
2018-02-13 18:38:25 +01:00
Simon Giesecke
fafea72b92
Problem: header files not included in VS project files
...
Solution: add to list of sources
2018-02-13 18:38:24 +01:00
Simon Giesecke
a8e9032dc5
Problem: unreachable code in io_thread_t::process_stop
...
Solution: replaced by assertion
2018-02-13 18:38:24 +01:00
Simon Giesecke
922053237f
Problem: test_sockopt_hwm not using unity
...
Solution: migrate test_sockopt_hwm to unity
2018-02-13 18:38:23 +01:00
Simon Giesecke
a5738529e8
Problem: wsa_assert does not include error code
...
Solution: extend output of wsa_assert
2018-02-13 18:38:22 +01:00
Simon Giesecke
e8e24030ea
Problem: network initialization and shutdown functions not available for
...
reuse
Solution: extract into functions defined in ip.hpp
Problem: signaler_t::make_fdpair not reusable
Solution: move make_fdpair to ip.hpp
Problem: epoll worker with no fds cannot be stopped
Solution: use interruptible epoll_pwait call
Problem: insufficient unit tests for poller
Solution: add test cases
2018-02-13 18:38:17 +01:00
Simon Giesecke
ecb3b503c3
Problem: no output of details on test failure
...
Solution: set CTEST_OUTPUT_ON_FAILURE option
2018-02-12 17:17:32 +01:00
Luca Boccassi
e57afec80e
Merge pull request #2943 from sigiesec/fix-select-unix
...
Problem: data races in select/poll poller implementations
2018-02-12 16:09:08 +00:00
Simon Giesecke
c62574ffca
Problem: segfault in select_t::trigger_events
...
Solution: fixed access to stale vector
2018-02-12 14:42:46 +01:00
Simon Giesecke
11a5388637
Problem: data race w.r.t. select_t::stopping
...
Solution: change termination condition of select_t
2018-02-12 14:42:33 +01:00
Simon Giesecke
e650240580
Problem: data race w.r.t. poll_t::stopping
...
Solution: remove stopping, stop on thread-safe conditions; add
additional checks for correct thread-safe usage
2018-02-12 14:41:53 +01:00
Simon Giesecke
08201bc1b9
Problem: select blocks forever under Unix
...
Solution: fixed call of select, and initialization of poll_t members
2018-02-12 14:39:02 +01:00
Luca Boccassi
a30133d8f5
Merge pull request #2935 from ZMQers/unity-base
...
Problem: no test framework, no unit tests
2018-02-12 11:01:08 +00:00
Luca Boccassi
d0e01b4bb2
Problem: regression with "select" on *nix ( #2940 )
...
* Problem: build failure with select as polling mechanism
Solution: cast mailbox_handle argument to (poller_t::handle_t) like in
the reaper thread class.
* Problem: build failure due to INT_MAX use without include
Solution: include limits and climits in src/select.cpp where INT_MAX is
used
* Problem: build failure due to unused variable in select.cpp
Solution: move the declaration of int rc inside the ifdef block where
it is actually used
* Problem: reference to wrong variable in select.cpp breaks build
Solution: fix it
* Problem: family_entry_t constructor has no body, build fails on *nix
Solution: add empty inline function in the struct
* Problem: no test coverage for poll and select
Solution: add Travis jobs for them on Linux
* Problem: Travis jobs cannot run in container infra
Solution: set sudo: false as it is not required anymore
2018-02-12 03:01:03 -05:00
Simon Giesecke
9ec95f9d46
Problem: build failure with VS <2015, has no snprintf
...
Solution: use _snprintf when snprintf is not available
2018-02-11 17:33:13 +00:00
Luca Boccassi
29e304ea5c
Problem: unity license not mentioned in debian/copyright
...
Solution: add it
2018-02-11 17:33:13 +00:00
Luca Boccassi
1478fd0022
Problem: unittests not built with autotools
...
Solution: add them to Makefile.am, linking to the static libzmq.a
library and its dependencies
2018-02-11 17:33:13 +00:00
Luca Boccassi
f6f67cbf96
Problem: no autotools support for building with unity
...
Solution: add a noinst convenience static library and use it with the
tests that require it
2018-02-11 17:25:36 +00:00
Simon Giesecke
7ea924c763
Problem: segfault on thread_t::stop if thread was never started
...
Solution: add started flag
2018-02-11 17:25:36 +00:00
Simon Giesecke
56c726d425
Problem: no unit tests
...
Solution: set up initial unit tests
2018-02-11 17:25:36 +00:00
Simon Giesecke
f87d3ab294
Problem: pollers unnecessarily depend on whole ctx_t, but actually use only start_thread method
...
Solution: extract thread_ctx_t from ctx_t
2018-02-11 17:25:36 +00:00
sigiesec
687f6a694f
Problem: license and source information missing
...
Solution: added MIT license file and github source info
2018-02-11 17:25:36 +00:00
sigiesec
5f854a31b7
Problem: test_security_curve not using test framework
...
Solution: use unity in test_security_curve
2018-02-11 17:25:36 +00:00
sigiesec
21879abb5b
Problem: test_socket_null not using test framework
...
Solution: rewrite test_socket_null to use unity
2018-02-11 17:25:36 +00:00
sigiesec
61a28a26cc
Problem: no test framework
...
Solution: add unity test framework, and integrate into cmake build
2018-02-11 17:25:36 +00:00
Luca Boccassi
afd5d9f721
Merge pull request #2939 from sigiesec/fix-poll-timer-event-retiring
...
Fixed a deadlock and an assertion failure in poll_t
2018-02-11 17:06:36 +00:00
Simon Giesecke
5873894c83
Problem: wrong assertion macro used on Windows
...
Solution: use wsa_assert instead of errno_assert
2018-02-11 13:52:41 +01:00
Simon Giesecke
2f27bcd74b
Problem: assertion failure in poll_t::poll if timer_event retired a
...
pollset entry
Solution: clean up retired entries before poll
2018-02-11 13:49:26 +01:00
Simon Giesecke
a2af3d18cc
Problem: unittest_poller fails for poll_t
...
Solution: fixed behaviour in corner cases
2018-02-11 13:49:25 +01:00
Simon Giesecke
ac777bad94
Merge pull request #2938 from bluca/format_autotools
...
Problem: make format-check not implemented with autotools
2018-02-10 15:26:53 -05:00