Luca Boccassi
cddfda2aed
Merge pull request #1875 from hintjens/master
...
Tweaks to building libzmq
2016-03-30 13:44:00 +01:00
Pieter Hintjens
e70e39be49
Problem: ctx.cpp still uses old HAVE_LIBSODIUM
...
I changed this to ZMQ_USE_SODIUM to be consistent with other
configuration options (especially ZMQ_USE_TWEETNACL).
Solution: fix it.
2016-03-30 14:39:34 +02:00
Luca Boccassi
d6354c64ea
Merge pull request #1874 from hintjens/master
...
Tweaks to building libzmq
2016-03-30 13:34:40 +01:00
Pieter Hintjens
396237f871
Problem: MSVC builds instructions aren't entirely clear
...
Solution: update them.
2016-03-30 14:19:20 +02:00
Pieter Hintjens
6a78b3ec19
Problem: HAVE_LIBSODIUM macro is inconsistent
...
Solution: use ZMQ_USE_LIBSODIUM to match ZMQ_USE_TWEETNACL
2016-03-30 14:19:20 +02:00
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
Pieter Hintjens
0916c17b3a
Merge pull request #1842 from opedroso/PRECOMPILED
...
Problem: Windows Build not using precompiled headers for all targets
2016-03-05 12:59:51 +02:00
Constantin Rack
72898a0ecc
Merge pull request #1841 from opedroso/MAKE_CLEAN
...
Problem: Added "make clean" to Windows build scripts
2016-03-05 11:51:06 +01:00
Osiris
224c0670ee
Problem: Windows Build not using precompiled headers for all targets
...
Solution: Enabled precompiled header settings in all targets
Before build time: ~6min 49 secs
Stop Time: Fri 03/04/2016 8:29:50.13
Start Time: Fri 03/04/2016 8:23:00.28
After build time: ~4min 19 secs
Stop Time: Fri 03/04/2016 12:12:10.24
Start Time: Fri 03/04/2016 12:07:51.78
2016-03-05 04:47:08 -06:00
Osiris
09d003aac0
Problem: Added "make clean" to Windows build scripts
...
Solution: Added ability to do equivalent of a "make clean" by executing:
O:\git\libzmq\builds\msvc\build>buildall.bat clean
Start Time: Fri 03/04/2016 14:33:56.50
Cleaning without libsodium
Cleaning ..\vs2013\libzmq.sln... ()
Platform=x86
Configuration=DynDebug
Configuration=DynRelease
Configuration=LtcgDebug
Configuration=LtcgRelease
Configuration=StaticDebug
Configuration=StaticRelease
Platform=x64
Configuration=DynDebug
Configuration=DynRelease
Configuration=LtcgDebug
Configuration=LtcgRelease
Configuration=StaticDebug
Configuration=StaticRelease
Cleaning complete: ..\vs2013\libzmq.sln
Stop Time: Fri 03/04/2016 14:34:01.84
Start Time: Fri 03/04/2016 14:33:56.50
A clean takes ~5 secs to complete.
2016-03-05 04:37:01 -06:00
Constantin Rack
d315eea707
Merge pull request #1839 from opedroso/master
...
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
2016-03-04 21:18:30 +01:00
Luca Boccassi
ee31ea1348
Merge pull request #1838 from obache/neatsrc/fix-c-comment-style
...
Problem: Fix C++ style comment usage in C source
2016-03-04 09:41:29 +00:00
Luca Boccassi
693d6384b6
Merge pull request #1837 from obache/neatsrc/fix-test-portability
...
Problem: Fix unportable `==` operator for `test`
2016-03-04 09:41:15 +00:00
Luca Boccassi
3c4377b11d
Merge pull request #1836 from obache/neatsrc/heimdal
...
Problem: Fix build with Heimdal krb5
2016-03-04 09:40:44 +00:00
OBATA Akio
8c7c8ece2d
Problem: Fix C++ style comment usage in C source
2016-03-04 17:26:02 +09:00
OBATA Akio
55dad06cce
Problem: Fix unportable ==
operator for test
2016-03-04 17:17:04 +09:00
OBATA Akio
09e868b743
Problem: Fix build with Heimdal krb5
...
Solution:
* Check gssapi/gssapi_generic.h header file, it is not in Heimdal.
* Check libgssapi too, libgssapi_krb5 is not separated in Heimdal.
2016-03-04 16:38:57 +09:00
Pieter Hintjens
36abdf7bd5
Merge pull request #1834 from garlick/config_nacl
...
minor automake fixes plus tweetnacl logic change
2016-03-02 23:16:25 +01:00
Jim Garlick
54389fefb5
Problem: AS_HELP_STRING improperly quoted
...
Brackets around defaults in configure --help strings for
--with-libsodium and --disable-curve were not displayed.
Solution: Add m4 quotes.
2016-03-02 12:11:08 -08:00
Jim Garlick
9d75a9c27d
Problem: AM_CONDITIONAL is used incorrectly
...
Move AM_CONDITIONAL for --disable-curve outside of shell
conditional (per sec 20.1 of automake manual) and fix its
second argument to be a test rather than a literal zero.
2016-03-02 11:28:42 -08:00
Luca Boccassi
ec6209737e
Merge pull request #1832 from hintjens/master
...
Problem: can't be sure crypto_box always returns 0
2016-03-01 15:53:26 +00:00
Pieter Hintjens
5b7bf7509f
Problem: can't be sure crypto_box always returns 0
...
Libsodium has started returning -1 in some cases.
Solution: allow and handle error returns from these calls.
Fixes #1831
2016-03-01 15:01:23 +01:00
Joe Eli McIlvain
708c2060ee
Merge pull request #1830 from stevenc99/master
...
include sys/ucred.h for struct ucred
2016-02-28 13:50:58 -08:00
Steven Chamberlain
dd8ccd5e0f
include sys/ucred.h for struct ucred
...
Platforms that have struct ucred, typically declare it in sys/ucred.h
2016-02-28 20:42:54 +00:00
Pieter Hintjens
d7691756e2
Merge pull request #1829 from dflupu/master
...
update Makefile.mingw32
2016-02-28 08:25:59 +01:00
Daniel Lupu
3190de8045
update Makefile.mingw32
2016-02-28 06:26:35 +02:00
Pieter Hintjens
8b32073c7b
Merge pull request #1826 from bluca/make_dist
...
Problem: make dist is borken
2016-02-22 13:36:21 +01:00
Luca Boccassi
b3b9cfd92e
Problem: packaging/redhat/zeromq.spec not ignored
...
Solution: add it to .gitignore
2016-02-22 11:59:51 +00:00
Luca Boccassi
f3686e34ff
Problem: make dist broken due to builds/msvc
...
Solution: change builds/msvc/Makefile.am to reference vcxproj files
instead of props files.
2016-02-22 11:58:36 +00:00
Luca Boccassi
391397571b
Problem: make dist broken due to builds/android
...
Solution: change builds/Makefile.am to reference builds/android
instead of builds/qt-android.
2016-02-22 11:58:00 +00:00
Luca Boccassi
8d811474d4
Problem: make dist broken due to builds/cmake
...
Solution: remove references to builds/cmake/Makefile* since they no
longer exist.
2016-02-22 11:57:09 +00:00
Constantin Rack
232094a09d
Merge pull request #1825 from bluca/whitespace_and_werror
2016-02-22 07:27:36 +01:00
Luca Boccassi
80e529a16a
Problem: all tests fail with assert in in_event
...
Solution: socket_base_t::in_event cannot do anything useful with
return status of process_commands. Asserting is the wrong solution,
as it is entirely valid to be interrupted or for the context to be
terminated, so discard the value.
2016-02-22 00:05:52 +00:00
Luca Boccassi
ae8efc21e8
Problem: nullptr is a reserved keyword in C++0x
...
Solution: use NULL instead to avoid build failure with older
compilers.
2016-02-21 23:54:18 +00:00
Luca Boccassi
7187169619
Problem: socket_poller_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:50:34 +00:00
Luca Boccassi
c84a52b11e
Problem: udp_engine_t fd cannot be init to NULL
...
Solution: initialize to -1, since fd is a file descriptor (int).
2016-02-21 23:47:44 +00:00
Luca Boccassi
1046f35930
Problem: udp_engine_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:46:51 +00:00
Luca Boccassi
24b84081be
Problem: socks_connecter_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:45:02 +00:00
Luca Boccassi
a6e49860f5
Problem: tcp_connecter_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:43:09 +00:00
Luca Boccassi
645c2be487
Problem: stream_engine_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:42:12 +00:00
Luca Boccassi
c21dd8d6a2
Problem: socket_base_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:41:02 +00:00
Luca Boccassi
acbf021a7c
Problem: reaper_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:39:09 +00:00
Luca Boccassi
779bed6315
Problem: encoder_base_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:37:10 +00:00
Luca Boccassi
de46fc6ac9
Problem: can't do anything with load.sub ret val
...
Solution: don't store it in zmq::poller_base_t::adjust_load, as the
build with Werror=unused=variable will fail otherwise.
2016-02-21 23:28:54 +00:00
Luca Boccassi
14054d28ed
Problem: can't statically initialized pthread_t
...
Solution: remove statc initialization to NULL of thread.hpp pthread_t
descriptor. There is no portable way to statically initialize a
pthread_t variable.
2016-02-21 23:26:01 +00:00
Luca Boccassi
cf309a4e8c
Problem: maxfd definition depends on ifdef
...
Solution: initialise it inside an ifdef too
2016-02-21 23:17:28 +00:00
Luca Boccassi
d4c0716473
Problem: indentation should be 4 spaces, no tabs
...
Solution: fix it
2016-02-21 23:16:44 +00:00
Constantin Rack
406b5738b6
Merge pull request #1823 from opedroso/COVERITY
...
Problem: Several problems found by Coverity Static Analyzer
2016-02-21 22:56:46 +01:00
Osiris
b3d5fa63a0
Problem: Several problems found by Coverity Static Analyzer
...
Solution: The Coverity Static Code Analyzer was used on libzmq code and found
many issues with uninitialized member variables, some redefinition of variables
hidding previous instances of same variable name and a couple of functions
where return values were not checked, even though all other occurrences were
checked (e.g. init_size() return).
2016-02-21 15:49:47 -06:00
Osiris
4fca95a557
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
...
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.
2016-02-21 14:46:53 -06:00
Luca Boccassi
1ffd87453b
Merge pull request #1822 from opedroso/VS_TOOLSET
...
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
2016-02-21 20:42:18 +00:00