Commit Graph

6864 Commits

Author SHA1 Message Date
Luca Boccassi
b9b325ce3b
Merge pull request #3271 from gabm/Relicense
Problem: gabm didn't signalise his consent to relicense libzmq
2018-10-08 17:15:03 +01:00
gabm
c1ac158f50 Problem: The flag that indicates the next expected message gets set even if the send fails (#3270)
* ZMQ_DGRAM: flip more flag after successful send

In the dgram socket we have a flag that indicates the next expected message type to ensure that always a pair of "address" + "body" messages gets sent. The first one MUST have the sendmore flag, the second MUST NOT.

In case the message does not get sent because of HWM full, then the function returns EAGAIN as it should. But unfortunately the next expected message type-flag gets flipped as well. When the socket_base::send function now tries to resend the message, it became the wrong message type... If you don't stop sending pairs of messages here (like me) then the next message that gets through will be of the wrong type, which in turn crashes the udp_engine function as described in #3268
2018-10-08 17:14:45 +01:00
Matthias Gabriel
439e57f091 grant relicense permission 2018-10-08 16:00:30 +02:00
Luca Boccassi
501d0815bf
Merge pull request #3267 from glemercier/master
Problem: Compilation with strict AARCH64 compilers is broken
2018-10-07 20:13:32 +01:00
Gregory Lemercier
ffe62d3398 Fix build on arm64 architectures with some strict compilers
This patch fixes an issue that occurs on 64-bit architetures under
strict compiler rules. The code initially checked that the received
size stored in 'uint64_t' was not bigger than the max value of a
'size_t' variable, which is legitimate on 32-bit architectures where
'size_t' variables are stored on 32 bits. On 64-bit architectures,
this test no longer makes sense since 'uint64_t' and 'size_t' types
have the same size. The issue is fixed by ignoring this portion
of code when built for arm64.
2018-10-07 18:23:08 +02:00
Gregory Lemercier
2e2806d744 Adds relicensing grant 2018-10-07 18:23:08 +02:00
Luca Boccassi
6ee048992f
Merge pull request #3266 from antonrd/issue-2488-zmq_msg_send-doc-fix
[ISSUE 2488] Updates the zmq_msg_send doc
2018-10-01 15:23:05 +01:00
Anton Dimitrov
b15aa40212 Adds relicensing grant 2018-10-01 17:11:04 +03:00
Anton Dimitrov
860c905e5a Removes unneeded trailing spaces in doc. 2018-10-01 17:10:47 +03:00
Anton Dimitrov
082457b6d0 Problem: zmq_msg_send doc incomplete return value description (issue #2488)
Solution: Add more information to the doc specifying that MAX_INT is the maximum
possible return value.
2018-10-01 17:00:21 +03:00
Constantin Rack
d4adb9a549
Merge pull request #3265 from bluca/tipc
Problem: test_connect_delay_tipc randomly fails
2018-09-30 01:22:20 +02:00
Luca Boccassi
1a5937750c Problem: test_connect_delay_tipc randomly fails
Solution: use a monitor to wait for a disconnect instead of a sleep,
and retry to send a message until it fails since the state machine
might be delayed due to the I/O thread being pre-empted on busy
systems.
Also set a receive timeout to avoid random hangs.

Fixes #3124
2018-09-29 22:39:36 +01:00
Constantin Rack
41bdf5c389
Merge pull request #3264 from bluca/issue_pr_text
Problem: have to ask manually for relicensing grant
2018-09-29 12:47:42 +02:00
Luca Boccassi
1275c96979 Problem: have to ask manually for relicensing grant
Solution: add note in PR template
2018-09-29 11:22:03 +01:00
Luca Boccassi
7476e58897
Merge pull request #3260 from sigiesec/remove-outdated-reference
Problem: INSTALL refers to deprecated VS build instructions
2018-09-22 13:55:45 +01:00
Simon Giesecke
36b62c1215 Problem: INSTALL refers to deprecated VS build instruction
Solution: remove the reference
2018-09-22 14:00:49 +02:00
Luca Boccassi
95beabe7cc
Merge pull request #3257 from f18m/hwm_test_fix
Remove race condition from XPUB/SUB test in test_blocking()
2018-09-21 11:52:58 +01:00
Francesco Montorsi
4f49e7420b Remove race condition from XPUB/SUB test in test_blocking() 2018-09-21 11:19:50 +02:00
Luca Boccassi
9f962ea0cc
Merge pull request #3255 from f18m/hwm_test_fix
Fix for test_hwm_pubsub
2018-09-20 20:41:13 +01:00
Francesco Montorsi
4b399b51ce change test_hwm_pubsub to use XPUB and wait for subscription before start to sending messages out 2018-09-20 20:42:03 +02:00
Simon Giesecke
ea517a28ff
Merge pull request #3253 from bluca/proxy_hwm
Problem: test_proxy_hwm randomly fails
2018-09-17 14:21:05 +02:00
Luca Boccassi
df218af3bd Problem: test_proxy_hwm expects wrong number of msgs
Solution: allow for a range between the minimum and maximum expected.
With 2 queues, that's between 20 and 40 messages depending on the
scheduling of the 3 threads involved.
2018-09-16 21:20:10 +01:00
Luca Boccassi
e651babd85 Problem: test_proxy_hwm uses an bool across threads
Solution: use atomics to avoid issues on non-x86 architectures
2018-09-16 21:18:52 +01:00
Luca Boccassi
02019d9f4c
Merge pull request #3254 from f18m/hwm_test_fix
Improve test reliability by: a) using XPUB in place of PUB to ensure …
2018-09-16 21:18:38 +01:00
Francesco Montorsi
72418e9dd0 Improve test reliability by: a) using XPUB in place of PUB to ensure we start publishing only after 1st subscriber has joined; b) accept both 2*HWM, 3*HWM and 4*HWM as TX/RX count of messages 2018-09-16 21:55:59 +02:00
Luca Boccassi
b933cb9d6a
Merge pull request #3251 from f18m/relicensing
add relicensing grant
2018-09-14 20:37:59 +01:00
Francesco Montorsi
a5a9fd1ff7 add relicensing grant 2018-09-14 20:01:56 +02:00
Francesco Montorsi
eb3e63e22f Hwm tests and docs (#3242)
Add new HWM tests and more detailed documentation
2018-09-13 22:14:06 +01:00
Luca Boccassi
0750211109
Merge pull request #3250 from ffontaine/master
fix static build with libatomic
2018-09-13 22:12:36 +01:00
Fabrice Fontaine
3b39942bd0 RELICENSE: Fabrice Fontaine
Create RELICENSE/FabriceFontaine.md

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2018-09-13 22:08:53 +02:00
Fabrice Fontaine
6de5f18be3 fix static build with libatomic
Commit 2ec5a33f6e added support to link
with -latomic if needed however using LDFLAGS doesn't work when
statically linking because LDFLAGS is added before LIBS

Detection of atomic fails with:

configure:23230: /accts/mlweber1/instance-2/output/host/bin/sparc-linux-g++ -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os   -static -static -pedantic -Werror -Wall -D_GNU_SOURCE -D_REENTRANT -D_THREAD_SAFE -Wno-long-long -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -static -latomic conftest.cpp -lrt -lpthread -lstdc++ >&5
/tmp/ccgrvVTg.o: In function `main':
conftest.cpp:(.text.startup+0x10): undefined reference to `__atomic_fetch_add_4'
collect2: error: ld returned 1 exit status

So use LIBS instead of LDFLAGS

Fixes:
 - http://autobuild.buildroot.net/results/c471d6b1061a8516f7772735e471db68a32965aa

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2018-09-13 20:18:37 +02:00
Luca Boccassi
1b61ff2910
Merge pull request #3247 from schulzch/relicense
RELICENSE: Christoph Schulz
2018-09-10 10:00:55 +01:00
Christoph Schulz
fa397134fe RELICENSE: Christoph Schulz 2018-09-10 10:48:08 +02:00
Constantin Rack
10edb5930a
Merge pull request #3246 from schulzch/cmake-fixes
CMake cleanup
2018-09-10 07:51:31 +02:00
Christoph Schulz
a21228b664 Conform to cmakelint --filter=-linelength
- Lowercase all commands
- Unify indent to 2 spaces
- Remove spaces around brackets
- Remove repitition of condition in else(...) and endif(...)

Note: (re-)running CMake did not change the content of the generated files
2018-09-10 00:12:07 +02:00
Christoph Schulz
ca7c03f825 Add instead of replace linker flags (fix for LLVM toolchain) 2018-09-09 23:24:33 +02:00
Luca Boccassi
9c0bff2c9c
Merge pull request #3239 from Mystfit/relicense
RELICENSE: Byron Mallett
2018-09-01 10:32:42 +01:00
Byron Mallett
fe212927f6 RELICENSE: Byron Mallett
Added relicensing permission from Byron Mallett
2018-09-01 15:18:48 +12:00
Luca Boccassi
e0ec6a9b36 Problem: formatting errors introduced by PR #3237
Solution: fix them
2018-08-31 09:37:53 +01:00
Byron Mallett
d8f3b283f8 Added SO_REUSEPORT socket option for UDP recv ports (#3237)
* Added SO_REUSEPORT socket option for UDP multicast recv ports
2018-08-31 09:36:34 +01:00
Luca Boccassi
50dbd80c51
Merge pull request #3233 from sigiesec/migrate-tests-to-unity
Revert "Problem: test_proxy not yet using unity"
2018-08-24 09:23:37 +01:00
Simon Giesecke
1734a64d62 Revert "Problem: test_proxy not yet using unity"
This reverts commit fd27324ec3.
2018-08-24 09:49:41 +02:00
Constantin Rack
e0fe7f1037
Merge pull request #3232 from sigiesec/migrate-tests-to-unity
Migrate tests to unity, reduce duplication
2018-08-23 20:08:22 +02:00
Simon Giesecke
430b97fc73 Problem: test_use_fd not yet using unity
Solution: migrate to unity
2018-08-23 18:03:16 +02:00
Simon Giesecke
d668925bca Problem: extensive duplication between test_use_fd_tcp and test_use_fd_ipc
Solution: merge into a single test_use_fd and reduce code duplication by extracting common functions
2018-08-23 18:00:52 +02:00
Simon Giesecke
929d295e01 Problem: test_timers not yet using unity
Solution: migrate to unity
2018-08-23 18:00:51 +02:00
Simon Giesecke
980791d182 Problem: test_stream_timeout not yet using unity
Solution: migrate to unity
2018-08-23 18:00:51 +02:00
Simon Giesecke
f01682292c Problem: test_stream_disconnect not yet using unity
Solution: migrate to unity
2018-08-23 18:00:51 +02:00
Simon Giesecke
309fe2e6fd Problem: test_router_mandatory_hwm not yet using unity
Solution: migrate to unity
2018-08-23 18:00:51 +02:00
Simon Giesecke
fd27324ec3 Problem: test_proxy not yet using unity
Solution: migrate to unity
2018-08-23 18:00:50 +02:00