Luca Boccassi
6818cced8e
Merge pull request #2347 from zstang/patch-1
...
#2341 fix
2017-02-21 09:46:18 +00:00
zstang
3b0dfd528f
#2341 fix
...
the root path name specified in this file cause the #2341 problem, the root path name is not need.
2017-02-21 17:35:36 +08:00
Constantin Rack
64a85ebf2f
Merge pull request #2346 from bluca/news
...
Problem: 4.2.2 is out, version(s) are out of date
2017-02-18 19:25:43 +01:00
Luca Boccassi
ac5c75cea1
Problem: 4.2.2 is out, version(s) are out of date
...
Solution: bump changelog, ABI revision, library and packaging version
2017-02-18 17:56:55 +00:00
Constantin Rack
8d75d506b6
Merge pull request #2345 from bluca/news
...
Problem: NEWS not up to date, packaging versions not up to date
v4.2.2
2017-02-18 18:48:41 +01:00
Luca Boccassi
5285b6e152
Problem: packaging versions out of date
...
Solution: bump to 4.2.2
2017-02-18 17:43:48 +00:00
Luca Boccassi
854ed90472
Problem: NEWS not up to date
...
Solution: mention main changes and bug fixes since 4.2.1
2017-02-18 17:40:45 +00:00
Luca Boccassi
26998b738e
Merge pull request #2332 from bluca/parse_v4_mapped_in_v6
...
Problem: v4-in-v6 mapped addresses cause parsing failure
2017-02-07 21:22:24 +00:00
Luca Boccassi
0db22c0069
Merge pull request #2337 from SylvainCorlay/include-find-sodium
...
Include FindSodium.cmake in dist tarball
2017-02-07 13:22:23 +00:00
Sylvain Corlay
33dccd2bf1
Include FindSodium.cmake in dist tarball
2017-02-07 14:12:43 +01:00
Luca Boccassi
18cb7caeb2
Problem: v4-in-v6 mapped addresses cause parsing failure
...
Solution: in the address validator accept an endpoint that starts
with :, eg: ::ffff:192.168.0.1:12345 as it's a valid mapped
address.
2017-02-03 11:19:31 +01:00
Luca Boccassi
78dafe5c7c
Merge pull request #2331 from jimklimov/sol-poller
...
Problem: polling does not work well OOB in OpenIndiana
2017-02-02 17:27:23 +00:00
Jim Klimov
f8816945c2
Problem: polling does not work well OOB in OpenIndiana
...
Solution: even though epoll() semantics are supported in modern illumos, it may differ from what Linux developers are used to expect. Skip epoll and use poll or select semantics (both were checked to work well).
2017-02-02 18:18:37 +01:00
Luca Boccassi
e56bc48ebc
Merge pull request #2327 from chutz/fix-divide-by-zero
...
fix divide by zero in zmq::lb_t::sendpipe
2017-01-28 01:29:20 +00:00
Patrick McLean
df7c684dd5
fix divide by zero in zmq::lb_t::sendpipe
...
This is based on https://github.com/zeromq/zeromq3-x/pull/116/files
2017-01-27 17:08:20 -08:00
Luca Boccassi
5c34f65ad5
Merge pull request #2326 from SylvainCorlay/framework
...
Make OS Xframwork build optional
2017-01-27 19:53:28 +00:00
Sylvain Corlay
4e472b18e3
Make OS Xframwork build optional
2017-01-27 19:30:18 +01:00
Ahmad M. Zawawi
bf6d8a5d17
Fix clock_t crash on iOS 9.3.2 and 9.3.5 ( #2325 )
...
* Fix possible clock_t crash on iOS 9.3.2 and 9.3.5 + macOS < 10.12
* No need to read return value
2017-01-26 13:21:41 +00:00
sigiesec
c6c21cf197
Problem: zmq_z85_decode does not validate its input ( #2322 )
...
* Problem: zmq_z85_decode does not validate its input
Solution: added checks for invalid characters and overflows
* Added tests, added further check for range overflow, removed (multiple) calls to strlen
* Problem: gcc fails to build
Solution: added missing include directive
* Added VS2015 test_utils_z85 project
* Fixed indentation and copyright notice
* Resolved garbage from merge
* Revert "Added VS2015 test_utils_z85 project"
This reverts commit c58b3c664c144326e77135aa1184b6f0dee11143.
* Problem: test calls zmq_z85_decode with a NULL dest
Solution: call zmq_z85_decode with a properly sized buffer
* Problem: tests for zmq_z85_* scattered over two files
Solution: merged files
* Removed reference to removed test file from CMakeLists.txt
* Problem: Missing include directive to stdint.h
Solution: Added include directive
* Define __STDC_LIMIT_MACROS before including stdint.h
* Problem: Wrong variable is checked for invalid character marker
Solution: Use correct variable
2017-01-25 14:28:03 +00:00
Luca Boccassi
673bb506cf
Merge pull request #2318 from kurdybacha/static_file_fix
...
CMake static library output does not match ZeroMQ Config.
2017-01-22 18:43:21 +00:00
Pawel Kurdybacha
877419e94f
CMake static library output does not match ZeroMQ Config.
...
Configuration used in ZeroMQConfig.cmake.in does not match to
explicic "libzmq" output of static build.
2017-01-22 18:17:55 +00:00
Luca Boccassi
c031b0c470
Merge pull request #2317 from SylvainCorlay/windows-static-target-name
...
Problem: cmake artefacts different from make generated artefacts
2017-01-21 14:27:43 +00:00
Sylvain Corlay
e38453866d
Problem: cmake artefacts different from make generated artefacts
2017-01-21 15:14:30 +01:00
Constantin Rack
e5677d89d5
Merge pull request #2315 from bluca/typo
...
Problem: typo in the zmq_has doc
2017-01-19 22:11:37 +01:00
Luca Boccassi
5f8d87bf32
Problem: typo in the zmq_has doc
...
Solution: fix it
2017-01-19 21:00:15 +00:00
Luca Boccassi
9aae95e496
Merge pull request #2314 from Asmod4n/master
...
add test and documentation for "draft" capability
2017-01-19 20:37:16 +00:00
Asmod4n
b7cd6e8a85
add test and documentation for "draft" capability
2017-01-19 20:50:18 +01:00
Luca Boccassi
a6a56e299d
Merge pull request #2313 from Asmod4n/patch-1
...
Problem: cannot check if libzmq was build with draft api
2017-01-19 17:59:03 +00:00
Asmod4n
4dbd387fa9
Add "draft" capability to zmq_has
...
As discussed in #2307
2017-01-19 18:44:56 +01:00
Luca Boccassi
4c1b338015
Merge pull request #2311 from SylvainCorlay/static-target-name
...
cmake: Set output name to libzmq for the libzmq-static target
2017-01-19 13:28:35 +00:00
Sylvain Corlay
c65a27213a
Problem: name of static library generated by cmake differs from the behavior of kernel.
...
Solution: Change the target output name from libzmq-static to libzmq.
2017-01-19 13:31:39 +01:00
Luca Boccassi
ee9751ec25
Merge pull request #2308 from chuggafan/master
...
Updated buildbase and buildall to work with visual studio 2017
2017-01-16 20:11:28 +00:00
chuggafan
020ff65efa
Updated buildbase and buildall to work with visual studio 2017
2017-01-16 14:54:40 -05:00
Luca Boccassi
f86053b985
Merge pull request #2304 from JohanMabille/cmake_fix
...
cmake install on linux fixed
2017-01-12 23:42:19 +00:00
Johan Mabille
36d0c70647
cmake install on linux fixed
2017-01-13 00:10:32 +01:00
Constantin Rack
b8d8c498c6
Merge pull request #2302 from laplaceyang/pr_thread_safe_modify_pipe
...
Problem: Thread-safe solution for modify hwm of pipe
2017-01-11 09:28:33 +01:00
laplaceyang
107f2441d5
Problem: Thread-safe solution for modify hwm of pipe
...
Solution: where change pipe hwm, send a command (new type pipe_hwm) to peer, so peer pipe can modify hwm thread-safely
2017-01-11 10:49:54 +08:00
Constantin Rack
4fc313d152
Merge pull request #2301 from bluca/set_peer_unsafe
...
Problems: modifying pipe from different thread is not safe and HWM always boosted by 1
2017-01-10 21:13:25 +01:00
Luca Boccassi
edc770d680
Problem: HWM always boosted by 1
...
Solution: initialise *hwmboost to -1 instead of 1, and use it only if
it's >= 0. The socket option code checks anyway that the
user-provided value is >= 0 so there is no risk of clashing. The
documentation also specifies that it has to be >= 0.
2017-01-10 11:40:14 +00:00
Luca Boccassi
9f1ba60f50
Problem: modifying pipe from different thread is not safe
...
Solution: revert change from #2299 to avoid bugs while we look for an
alternative and thread-safe solution
2017-01-10 11:38:02 +00:00
Luca Boccassi
598befc1f8
Merge pull request #2299 from laplaceyang/pr_set_hwm_after_connect
...
Problem: set hwm after connect lead to infinite hwm
2017-01-09 08:34:12 +00:00
laplaceyang
5adcb83509
Problem: set hwm after connect lead to infinite hwm
2017-01-09 12:34:40 +08:00
Constantin Rack
77e1792cd8
Merge pull request #2298 from bluca/spec_uuid
...
Problem: spec file still depends on libuuid
2017-01-08 12:10:21 +01:00
Luca Boccassi
ce735c44ef
Problem: spec file still depends on libuuid
...
Solution: remove the dependency as it's not been needed for a while
2017-01-07 22:25:36 +00:00
Constantin Rack
81bbd2b72d
Merge pull request #2296 from bluca/asciidoc-base
...
Problem: debian packages do not build manpages
2017-01-07 19:39:36 +01:00
Luca Boccassi
e37936616d
Problem: debian packages do not build manpages
...
Solution: build-depend on asciidoc and xmlto
2017-01-07 16:10:08 +00:00
Luca Boccassi
9dbbd69480
Merge pull request #2295 from JohanMabille/cmake_win_install
...
Cmake win install
2017-01-07 01:51:30 +01:00
Johan Mabille
e258890f67
INSTALLATION instructions
2017-01-07 00:47:22 +01:00
Johan Mabille
7c709e5466
cmake install config file
2017-01-07 00:21:06 +01:00
Johan Mabille
e95d23198f
CPack option and .txt files installation dir
2017-01-06 14:29:56 +01:00
Luca Boccassi
e80db0e8e5
Merge pull request #2294 from JohanMabille/cmake_precompiled
...
Windows cmake build fixed
2017-01-06 11:10:41 +01:00
Johan Mabille
2d749a066c
Windows cmake build fixed
2017-01-06 10:52:20 +01:00
Constantin Rack
ceb6be7751
Merge pull request #2292 from bluca/osx_sigpipe
...
Problem: peer can close connection before SO_NOSIGPIPE is set
2017-01-04 20:28:51 +01:00
Luca Boccassi
31a3a06828
Problem: peer can close connection before SO_NOSIGPIPE is set
...
Solution: setsockopt returns EINVAL if the connection was closed by
the peer after the accept returned a valid socket. This is a valid
network error and should not cause an assert.
To handle this we have to extract the setsockopt from the stream
engine, as there's no clean way to return an error from the
constructor. Instead, try to set this option before creating the
engine in the callers, and return immediately as if the accept
had failed to avoid churn. Do the same for the connect calls by
setting the option in open_socket, so that the option for that
case is set even before connecting, so there's no possible race
condition.
Since this has to be done in 4 places (tcp/ipc listener, socks
connecter and open_socket) add an utility function in ip.cpp.
Fixes #1442
2017-01-04 17:34:33 +00:00
Constantin Rack
d532f2e4d8
Merge pull request #2290 from bluca/doc_proxy_eintr
...
Problem: zmq_proxy* may return EINTR other than ETERM
2017-01-03 21:21:11 +01:00
Constantin Rack
17ef8c6793
Merge pull request #2289 from bluca/windoze_includes_test
...
Problem:capitalized include filenames trip mingw
2017-01-03 21:20:46 +01:00
Luca Boccassi
28c7abf821
Problem: zmq_proxy* may return EINTR other than ETERM
...
Solution: mention this in the documentation
2017-01-03 15:34:08 +01:00
Luca Boccassi
7e186432cb
Problem:capitalized include filenames trip mingw
...
Solution: use lowercase
2017-01-03 14:59:57 +01:00
Luca Boccassi
dce4d06b71
Merge pull request #2288 from paddor/master
...
fix typos
2017-01-03 12:49:34 +01:00
Patrik Wenger
1b3df75b87
fix typos
2017-01-03 12:45:33 +01:00
Luca Boccassi
ec2ba8a997
Merge pull request #2283 from vtellier/master
...
Fixed issue #2227 second part
2017-01-01 19:29:09 +01:00
Vincent Tellier
ea7e03a7ff
Fixed issue #2286 by documentation
...
tests/README.md explicitly indicates to check the libzmq.lib path in
CMakeLists.txt.
2017-01-01 19:08:28 +01:00
Vincent Tellier
7e36db07b1
Handshake events null pointer fix
...
The mechanism is instanciated during the handshake itself, when and
error happen before this, the error method shall work anyway.
An error handling with a NULL mechanism means the handshake fail, so the
handshake failure event is also raised in this case.
2017-01-01 19:08:28 +01:00
Vincent Tellier
ffb31dcadd
Fixed issue #2227 second part
...
- removed the previously added encryption_error, less changes less bug
- handshake fail is now signaled when an error happen while the
mechanism is still hanshaking
2017-01-01 19:08:28 +01:00
Constantin Rack
ee98e7dca0
Merge pull request #2287 from bluca/hurd_ipv6_tos
...
Problem: build fails on GNU/Hurd as it does not support IPV6_TCLASS
2017-01-01 17:06:31 +01:00
Luca Boccassi
efc0e94291
Problem: build fails on GNU/Hurd as it does not support IPV6_TCLASS
...
Solution: check if IPV6_TCLASS is defined so that when Hurd adds
support it will just work. Also it will avoid tripping over this on
other similar legacy systems.
2017-01-01 16:23:27 +01:00
Constantin Rack
c38fde00a0
Merge pull request #2285 from bluca/bump_versions
...
Problem: 4.2.1 is out, time to bump versions
2016-12-31 18:25:36 +01:00
Luca Boccassi
7c0ded93af
Problem: 4.2.1 is out, time to bump versions
...
Solution: add new changelog entry, bump library version in zmq.h and
bump ABI version in configure.ac and CMakeLists.txt
2016-12-31 16:26:41 +01:00
Luca Boccassi
7005f22726
Bugfix release 4.2.1
...
Finalize changelog and bump ABI revision
v4.2.1
2016-12-31 15:55:48 +01:00
Kevin Sapper
086bb890c5
Merge pull request #2282 from bluca/event_test
...
Problems: test_monitor failing, DRAFT events leaking when draft APIs are disabled
2016-12-31 14:13:45 +01:00
Luca Boccassi
3f3601e855
Problem: handshake events not tested with curve
...
Solution: check that the expected handshake success or failure events
are triggered in the curve security unit test
2016-12-31 01:31:37 +01:00
Luca Boccassi
d50b5b80fd
Problem: NEWS entry for ctx option does not point to docs
...
Solution: fix it
2016-12-30 23:53:20 +01:00
Luca Boccassi
fc748ec799
Problem: new monitor events not mentioned in NEWS
...
Solution: add an entry
2016-12-30 23:52:27 +01:00
Luca Boccassi
200649fd57
Problem: new handshake event monitoring undocumented
...
Solution: add them to the event monitor manpage
2016-12-30 23:40:22 +01:00
Luca Boccassi
2afba0085f
Problem: documentation does not warn about ZMQ_EVENT_ALL and new events
...
Solution: add a note pointing out that when new events are added the
ZMQ_EVENT_ALL mask will start returning them, so applications that
can't handle that transparently should not use it and instead pick
only the event types they want.
Creating a new event type and having monitors with ZMQ_EVENT_ALL
return them will not be considered a backward incompatible change
even though the flow of events will change.
2016-12-30 23:27:56 +01:00
Luca Boccassi
c0e2bc4ef9
Problem: new DRAFT monitor events returned even without --enable-draft
...
Solution: wrap the event triggering in the DRAFT ifdef as well as the
defines. This ensures that the event are returned only if the
library was built with DRAFTs enabled.
Also update the test case to expect the new events since it uses
the catch-all mask. Although the sequence of event is different and
this might be considered as an API breakage, using the catch-all
ZMQ_EVENT_ALL mask implies that, well, all events are monitored so
it's normal that new ones will be added.
Users that don't want this kind of behaviour to change can simply
monitor only the event that they care about.
2016-12-30 23:21:14 +01:00
Luca Boccassi
0ebed80dc1
Merge pull request #2281 from vtellier/master
...
Code formatting + reverted hard error handshake fail
2016-12-30 21:00:17 +01:00
Vincent Tellier
48bc75e8a1
Code formatting + reverted hard error handshake fail
...
- 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
2016-12-30 18:34:33 +01:00
Luca Boccassi
0ad600c7de
Merge pull request #2280 from vtellier/master
...
Fixed issue #2227
2016-12-30 17:15:18 +01:00
Vincent Tellier
b6e9e0c2d3
Fixed issue #2227
...
Added two new monitoring events:
- ZMQ_EVENT_HANDSHAKE_SUCCEED is raised once the encryption handshake succeed
- ZMQ_EVENT_HANDSHAKE_FAILED is raised when it failed
Both events are raised on server and client side.
2016-12-30 16:26:42 +01:00
Constantin Rack
64b07d8132
Merge pull request #2278 from bluca/msg_t_size_draft
2016-12-29 21:48:39 +01:00
Luca Boccassi
8c22ba246c
Problem: bug fixes not mentioned in NEWS file
...
Solution: add most relevant bug fixes since 4.2.0
2016-12-29 21:07:39 +01:00
Luca Boccassi
113feb60a2
Problem: ZMQ_MSG_T_SIZE draft but not in DRAFT section
...
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
2016-12-29 21:07:39 +01:00
Luca Boccassi
715f87fec7
Merge pull request #2277 from bluca/automake_1.14
...
Problem: debian build fails with automake < 1.14
2016-12-28 16:36:58 +01:00
Luca Boccassi
47c7d8ee50
Problem: debian build fails with automake < 1.14
...
Solution: create config subdir as a workaround if building the
packages with automake < 1.14
2016-12-28 00:55:17 +01:00
Constantin Rack
ef88b8c760
Merge pull request #2276 from bluca/sodium_pkg
2016-12-27 16:28:08 +01:00
Luca Boccassi
bbae5d0f9a
Problem: dpkg-query might fail in CI build and fail the build
...
Solution: rework the bash test to avoid build failures as intended
and make it an easier one-liner
2016-12-27 14:45:45 +01:00
Constantin Rack
b2a2bb8609
Merge pull request #2275 from bluca/travis_pkg
2016-12-27 12:51:19 +01:00
Luca Boccassi
b1137b7672
Problem: documentation build not tested on Travis
...
Solution: install asciidoc and xmlto in the libsodium build run, since
it already refreshes APT to download other packages, so the delay is
smaller
2016-12-27 12:20:18 +01:00
Luca Boccassi
822def9b2b
Problem: Travis rebuilds libsodium every time
...
Solution: use packages on Ubuntu and brews on OSX. The packages and
the brews are always kept up to date, so it's no use to rebuild the
libsodium stable branch manually everytime.
2016-12-27 11:48:38 +01:00
Luca Boccassi
a1220b7fd4
Problem: Travis OSX workaround for libtool no longer needed
...
Solution: Revert "Problem: Travis CI OSX builds are broken"
This reverts commit 531b3bf7c3ed5f29760c89b7152a2c85a4a9d8bd.
2016-12-27 11:28:09 +01:00
Luca Boccassi
1f86019e3f
Problem: Travis installs packages when not needed
...
Solution: narrow down the matrix to install valgrind and lcov only
for the test runs that use them.
CMake is part of the default image so no need to install it at all.
2016-12-27 11:27:33 +01:00
Constantin Rack
5871ea5df8
Merge pull request #2274 from bluca/cloexec
2016-12-26 20:18:12 +01:00
Luca Boccassi
06055a7b74
Problem: cmake does not run test_zmq_poll_fd
...
Solution: add it to the list
2016-12-26 19:20:09 +01:00
Luca Boccassi
6e708ce144
Problem: socketpair leaks file on fork+exec
...
Solution: if available, call socketpair with SOCK_CLOEXEC flag to
make the process close the socket on fork+exec
2016-12-26 19:13:02 +01:00
Luca Boccassi
f287c7a2aa
Problem: eventfd leaks socket on fork+exec
...
Solution: if available, use eventfd with EFD_CLOEXEC flag to make
the process close the socket on fork+exec
2016-12-26 19:08:27 +01:00
Luca Boccassi
211898d243
Problem: epoll leaks socket on fork+exec
...
Solution: if available, use epoll_create1 with EPOLL_CLOEXEC flag to
make the process close the socket on fork+exec
2016-12-26 19:08:27 +01:00
Constantin Rack
16439e42d2
Merge pull request #2272 from bluca/document_read_after_free
2016-12-26 15:24:44 +01:00
Constantin Rack
d68e2e018e
Merge pull request #2273 from bluca/docs
2016-12-26 15:12:40 +01:00
Luca Boccassi
3dc016cab3
Problem: no documentation for ZMQ_SOCKS_PROXY
...
Solution: add paragraphs to zmq_get/setsockopt man pages
2016-12-26 14:54:58 +01:00