Commit Graph

4703 Commits

Author SHA1 Message Date
Luca Boccassi
6630a7ceaf Merge pull request #1873 from edigaryev/fix-urandom-chroot
Problem: build fails when CURVE security is disabled
2016-03-30 00:36:18 +01:00
Nikolay Edigaryev
8673fa7b03 Problem: build fails when CURVE security is disabled
Solution: use proper preprocessor macro
2016-03-30 04:23:59 +05:00
Joe Eli McIlvain
c71bb5fd1f Merge pull request #1872 from edigaryev/fix-urandom-chroot
Problem: CURVE mechanism is unusable with chroot()
2016-03-29 15:49:19 -07:00
Nikolay Edigaryev
884e00cb4a Problem: CURVE mechanism is unusable with chroot()
libsodium calls abort() when /dev/urandom can't be found
even if one creates ZeroMQ context before calling chroot()[1].

This happens because crypto gets initialized on handshake,
and at that moment the process is already chroot'ed.

Solution: initialize cryptographic libraries in ctx

randombytes_close() is already there in the destructor.

[1] https://download.libsodium.org/doc/usage/index.html
2016-03-30 03:45:12 +05:00
Constantin Rack
c39741dd33 Merge pull request #1871 from gnieboer/gnieboer-patch-1
Update zmq_utils.h
2016-03-29 23:07:38 +02:00
Geof Nieboer
8c7b19b1b7 Update zmq_utils.h
Previous change broke MSVC b/c MSVC doesn't support #warning
2016-03-30 00:00:49 +03:00
Luca Boccassi
05c8de7928 Merge pull request #1869 from jimklimov/fix-tcp_address
zeromq-4.1.4/src/tcp_address.cpp : fix relaxed use of sizeof() without parenthesis
2016-03-29 18:01:10 +01:00
Jim Klimov
e9c8557e92 zeromq-4.1.4/src/tcp_address.cpp : fix relaxed use of sizeof() without parenthesis 2016-03-29 18:43:26 +02:00
Pieter Hintjens
b8ae850d78 Merge pull request #1862 from FredTreg/master
Fixed issue #1695 (ZMQ_REQ_CORRELATE)
2016-03-24 11:45:56 +01:00
Frederic Tregon
e45dfe3bc7 Fixed issue #1695 (ZMQ_REQ_CORRELATE)
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.
2016-03-20 20:38:18 +01:00
Pieter Hintjens
98ab7f4164 Merge pull request #1860 from bluca/valgrind
Add Valgrind make target and CI run
2016-03-19 23:03:38 +01:00
Luca Boccassi
dc27ad41d2 Problem: coveralls uses wrong path on Trusty
Solution: pass built-root when calling coveralls, to help it find the
right path to the source code.
2016-03-19 21:55:03 +00:00
Luca Boccassi
0eca822b8f Problem: Valgrind in Ubuntu Precise is too old
Solution: run Travis CI in newer Trusty (14.04 LTS) release.
2016-03-19 21:55:03 +00:00
Luca Boccassi
9d94eb11b3 Problem: test_fork causes valgrind false positive
Solution: do not run test_fork if --enable-valgrind is set. Note that
later versions of Valgrind (3.11) not yet available in all
distributions fix this problem, so we might revert in the future.
2016-03-19 21:54:55 +00:00
Luca Boccassi
00e0957640 Problem: false positive on valgrind 3.10
Solution: update builds/valgrind/valgrind.supp to ignore glibc's
__libc_freeres calls. This code runs after the program exits, and
tries to de-allocate memory allocated internally by glibc, so it has
nothing to do with libzmq code. This suppression is added by default
in newer versions of Valgrind, not yet available on older
distributions.
2016-03-19 21:54:52 +00:00
Luca Boccassi
ebc7316069 Problem: CI doesn't run Valgrind
Solution: run Valgrind only on the default Linux build to avoid
increasing the runtime.
2016-03-19 21:54:52 +00:00
Luca Boccassi
2b2f9046d4 Problem: no Makefile target for Valgrind
Solution: import ax_valgrind_check.m4 macro file to provide a
conveniente automake hook to run Valgrind on all tests.
Add --enable-valgrind to ./configure call and then run make
check-valgrind to run memcheck, helgrind, drd and sgcheck on all
tests. Run check-valgrind-memcheck to run only memcheck.
2016-03-19 21:54:29 +00:00
Luca Boccassi
d5aaaeb888 Merge pull request #1859 from soulik/master
Fix usage of IPv6 addresses
2016-03-19 14:15:34 +00:00
Mário Kašuba
75579fe7d9 Added comment to sockaddr_storage 2016-03-19 14:49:22 +01:00
Mário Kašuba
e38166cc1b Use sockaddr_storage instead of sockaddr to support IPv6 addresses 2016-03-19 14:37:10 +01:00
Constantin Rack
3777309b67 Merge pull request #1858 from zoobab/master 2016-03-18 14:18:59 +01:00
Benjamin Henrion
516efa46c0 add some doc for docker android compilation 2016-03-18 13:54:20 +01:00
Pieter Hintjens
340eb52165 Merge pull request #1847 from bluca/test_large_msg
Problem: test_large_msg requires 2GB of free RAM
2016-03-18 09:41:42 +01:00
Constantin Rack
9a3c9ff864 Merge pull request #1857 from Suudy/master
Use FILENAME_MAX to determine BUFSIZE when getting socket path.
2016-03-17 23:30:15 +01:00
Pete LaDow
075de03d1c Use FILENAME_MAX to determine BUFSIZE when getting socket path. 2016-03-17 15:12:57 -07:00
Luca Boccassi
15fd419f22 Problem: test_large_msg requires 2GB of free RAM
Solution: remove temporarily until proper message limits have been
implemented, then a more granular test case can be added without
such high requirements which are problematic in embedded environment,
build systems, VMs and CI systems
2016-03-16 21:47:58 +00:00
Joe Eli McIlvain
de56bc2729 Merge pull request #1853 from bluca/osx_ipc_wildcard
Problem: IPC wildcard test broken on OSX
2016-03-14 17:02:39 -07:00
Luca Boccassi
11917f850a Problem: IPC wildcard test broken on OSX
Solution: increase path buffer length to 73
2016-03-14 22:39:34 +00:00
Luca Boccassi
5ce6bc5f6d Merge pull request #1852 from Suudy/master
Update Unix Domain Socket creation/handling
2016-03-14 19:58:01 +00:00
Suudy
b6080a798c Updated handling of Unix Domain Sockets, make use of temporary directories, and cleanup afterward. Fix test_term_endpoint handling of optvallen 2016-03-14 12:17:49 -07:00
Constantin Rack
96c9e4aabd Merge pull request #1851 from bluca/gcov
Add code coverage to build system and CI
2016-03-13 23:36:11 +01:00
Luca Boccassi
1ac71c3c24 Problem: no coveralls.io badge in README.md
Solution: add it
2016-03-13 22:23:56 +00:00
Luca Boccassi
0cd7c0f807 Problem: no code coverage in CI
Solution: add new coverage build, and upload results to coveralls.io
2016-03-13 22:23:56 +00:00
Luca Boccassi
6df753c55a Problem: no code coverage integration
Solution: import ax_code_coverage.m4 from autoconf-archive and use it
in configure.ac and Makefile.am in order to provide a make
check-code-coverage target behind a --enable-code-coverage configure
flag, that can be used to generate a gcov/lcov code coverage report.
Depends on having gcov and lcov installed.
2016-03-13 19:28:23 +00:00
Luca Boccassi
22cb66d832 Merge pull request #1849 from opedroso/WINPDB
Problem: Windows PDB not created for RELEASE targets
2016-03-11 22:40:11 +00:00
Osiris
a6392b9e74 Problem: Windows PDB not created for RELEASE targets
Solution: Modified projects to create PDB file for RELEASE targets
	- also spread precompiled settings to all DevStudio solution versions

This change affects Windows builds only
2016-03-11 14:48:30 -06:00
Pieter Hintjens
dbb6b019e6 Merge pull request #1848 from benjamg/benjamg-patch-1
parameter naming consistency [aesthetic]
2016-03-11 11:49:54 +01:00
Ben Gray
7cc50d0005 parameter naming consistency [aesthetic] 2016-03-11 09:15:58 +00:00
Pieter Hintjens
24d12dc30a Merge pull request #1827 from bluca/make_dist_missing_files
Problem: make dist does not tar up macros.hpp
2016-03-09 10:40:37 +01:00
Pieter Hintjens
6aa581980a Merge pull request #1845 from claudioscordino/master
Better comments for understanding the classes array_t<> and array_ite…
2016-03-08 11:27:37 +01:00
Claudio Scordino
cb1b6bc9ae Better comments for understanding the classes array_t<> and array_item_t<> 2016-03-08 11:24:58 +01:00
Luca Boccassi
6024dd5dfa Problem: ci_build does not fully test build system
Solution: run make dist-check, which will run additional tests,
including making sure that the library is installable and the
distributable tarball is buildable, along with the usual make and
make check.
2016-03-06 19:39:44 +00:00
Luca Boccassi
ff1ebf6ff0 Problem: ci_build.sh make check is overly complex
Solution: simply run make VERBOSE=1 check instead of manually
checking for return value and cat'ing the log file. With VERBOSE, on
error the log file will be automatically printed.
2016-03-06 18:34:25 +00:00
Luca Boccassi
4366d7edf9 Problem: doc/Makefile.am ignores --without-docs
Solution: add the document files to the MAN_DOC and MAN_HTML targets
in doc/Makefile.am only if BUILD_DOC and INSTALL_MAN are set,
otherwise leave the targets empty to avoid errors in make distcheck.
2016-03-06 18:34:25 +00:00
Luca Boccassi
2d9e7b57f9 Problem: make dist does not tar up macros.hpp
Solution: add it to Makefile.am file list
2016-03-06 17:56:24 +00:00
Luca Boccassi
8a0a18a527 Merge pull request #1844 from opedroso/CMAKELIST_PRECOMP
Problem: CMakelist missing support for Windows Precompiled headers
2016-03-06 12:45:48 +00:00
Osiris
cd1dfb4092 Problem: CMakelist missing support for Windows Precompiled headers
Solution: Add precompiled flags to CMakeList.txt for faster compiles
+ bonus - removed compilation warning on Windows by adding
	 add_definitions (-D_WINSOCK_DEPRECATED_NO_WARNINGS)
2016-03-06 06:23:26 -06:00
Pieter Hintjens
2cd4c38b80 Merge pull request #1843 from opedroso/WINDOWS_MAKE_TEST
Problem: Tests do no build in Windows environment
2016-03-05 22:12:26 +02:00
Osiris
1c9cec227d Problem: Tests do no build in Windows environment
Solution: Modified CMakelist.txt to build correctly for Windows
- corrected CMake required version to make sure it builds in
  Ubuntu 14.04 LTS with no warnings.
2016-03-05 14:01:21 -06:00
Osiris
a911fa41b8 Problem: Tests do no build in Windows environment
Solution: Modified CMakelist.txt to build correctly for Windows
2016-03-05 11:23:23 -06:00