0
0
mirror of https://github.com/zeromq/libzmq.git synced 2025-01-01 19:05:18 +08:00

4696 Commits

Author SHA1 Message Date
Anonymous Maarten
571ee21eef appveyor: build all relevant combinations
problem: not all configurations were built (and some were duplicated) in
Windows CI
solution: add all correct combinations to appveyor.yml
2015-10-25 01:14:27 +02:00
Anonymous Maarten
89338f43d5 CMake: fix library name on linux
problem: cmake added a prefix of lib to libzmq, resulting in
liblibzmq.so
solution: set an empty prefix
2015-10-25 01:14:27 +02:00
Pieter Hintjens
c5572211e7 Merge pull request #1620 from madebr/ctest_missing_tests
CTest: add all sources in tests folder to CTest
2015-10-24 12:19:10 +02:00
Anonymous Maarten
9930f1fc20 CTest: add missing tests + check for unknown tests 2015-10-24 00:17:52 +02:00
Anonymous Maarten
2f63231860 cmake: libzmq can now be built with both sodium and TweetNaCL 2015-10-24 00:16:01 +02:00
Constantin Rack
7fe032180a Merge pull request #1619 from madebr/winrandombytes
TweetNaCL: add windows randombytes implementation
2015-10-24 00:01:55 +02:00
Anonymous Maarten
b2c87b9a70 TweetNaCL: add windows randombytes implementation 2015-10-23 23:34:53 +02:00
Pieter Hintjens
e182438ad6 Merge pull request #1618 from madebr/cmake_sodium
CMake: use libsodium + add Windows CI
2015-10-23 09:20:18 +02:00
Anonymous Maarten
35d723ce5b Add Windows Continuous Integration (appveyor) 2015-10-23 04:07:12 +02:00
Anonymous Maarten
55ca9c5654 CMake: use libsodium if available, else use tweet_nacl 2015-10-23 04:06:57 +02:00
Constantin Rack
5d98e602c9 Merge pull request #1617 from somdoron/removing_pollfd
problem: zmq_pollfd is not needed anymore when zmq_poller in place.
2015-10-22 11:21:16 +02:00
somdoron
da2bc60abe Removing zmq_pollfd as it is replaced by zmq_poller 2015-10-22 11:52:24 +03:00
Richard Newton
0650b59b10 Merge pull request #1616 from somdoron/ZMQ_POLLER
problem: ZMQ_POLLER doesn't support polling on out
2015-10-21 12:42:44 +01:00
somdoron
24fc0d4e89 drop the socket postfix from poller methods 2015-10-21 14:04:33 +03:00
somdoron
5c71fe6538 Fix socket_poller windows compiling issue 2015-10-21 10:34:00 +03:00
somdoron
024819b491 add ZMQ_HAVE_POLLER define to check if ZMQ_POLLER exist 2015-10-21 10:17:33 +03:00
somdoron
476ba22e0a ZMQ_Poller support more event types 2015-10-21 10:14:36 +03:00
somdoron
544d1e3499 Change the error of zmq_poller from EAGAIN to ETIMEDOUT 2015-10-21 09:37:52 +03:00
Pieter Hintjens
a7ea57fb68 Merge pull request #1615 from jeroenooms/master
enable static libraries on mingw
2015-10-20 13:50:07 +02:00
Jeroen Ooms
9114d39577 enable static libraries on mingw 2015-10-20 13:10:38 +02:00
Pieter Hintjens
979e6bb45c Merge pull request #1613 from maxkozlovsky/master
honor buffer reference count in zmq::shared_message_memory_allocator:…
2015-10-19 23:08:11 +02:00
Max Kozlovsky
06e882f8ea honor buffer reference count in zmq::shared_message_memory_allocator::deallocate 2015-10-19 13:29:26 -07:00
Constantin Rack
f1e6cb8ba9 Merge pull request #1611 from somdoron/zpoller-port
problem: polling on multiple sockets is complicated
2015-10-18 21:13:31 +02:00
somdoron
e387ce1571 remove pollfd from sockets when destroying poller 2015-10-18 21:50:24 +03:00
somdoron
6501b8089f port zpoller to libzmq as zmq_poller 2015-10-18 21:07:23 +03:00
Pieter Hintjens
500269955d Merge pull request #1604 from wcs1only/master
Fixed for issue  #1315
2015-10-09 15:56:27 +02:00
Charles Stanley
516b440e0d fixes #1315 socket monitor hangs if zmq_bind fails 2015-10-09 09:02:09 -04:00
Constantin Rack
a28398a4e8 Merge pull request #1603 from jizhilong/fix/typo
fix a typo in ypipe.hpp
2015-10-09 05:48:39 +02:00
Zhilong.JI
9a7858245c fix a typo in ypipe.hpp 2015-10-09 10:52:36 +08:00
Jens Auer
ea26e68b9d New options to set send/recv buffer size for TCP sockets. 2015-10-08 22:06:33 +02:00
Constantin Rack
ca52520944 Merge pull request #1602 from scemama/master
Fixes issue #1556
2015-10-07 22:30:53 +02:00
Anthony Scemama
aefc5d120b Default behavior is --with-libsodium=yes 2015-10-07 22:18:08 +02:00
Anthony Scemama
73a0eed75d Fixes issue #1556 2015-10-07 21:45:49 +02:00
Pieter Hintjens
96014ee7ed Merge pull request #1600 from lsniks/master
Issue 1588 : Rollback in case send fails for multipart msg
2015-10-05 20:57:51 +02:00
Nikhil Mishra
8ec747e14a Issue 1588 : Rollback in case send fails for multipart msg 2015-10-05 11:46:48 -07:00
Constantin Rack
cca67fdd1b Merge pull request #1595 from pijyoi/signaler_failable
create signaler::recv_failable()
2015-09-29 06:01:51 +02:00
KIU Shueng Chuan
596d6e5b1c create signaler::recv_failable()
In real world usage, there have been reported signaler failures where the
eventfd read() or socket recv() system call in signaler::recv() fails,
despite having made a prior successful signaler::wait() call.

this patch creates a signaler::recv_failable() method that allows
unreadable eventfd / socket to return an error without asserting.
2015-09-29 09:14:02 +08:00
Richard Newton
52ee724144 Merge pull request #1593 from meox/master
fix error with gcc 5.2
2015-09-27 13:34:48 +01:00
meox
992ac3baa8 fix error with gcc 5.2 2015-09-27 14:24:08 +02:00
Pieter Hintjens
79daac119a Merge pull request #1592 from c-rack/fix-test
Solution: full is if number of msg is greater than hwm, not greater than hwm - 1
2015-09-25 12:26:33 +02:00
Constantin Rack
e4c06bef18 Problem: check_hwm() has different semantic of 'full' 2015-09-25 11:56:54 +02:00
Pieter Hintjens
a8605f576e Merge pull request #1591 from c-rack/check-hwm
Solution: use existing check_hwm() method
2015-09-25 11:36:41 +02:00
Constantin Rack
f1358c1243 Problem: duplicate code for hwm check 2015-09-25 11:24:48 +02:00
Constantin Rack
dd6bb9ae0c Merge pull request #1586 from ricnewton/master
Update cmake to support Visual Studio 2015
2015-09-19 15:51:47 +02:00
Richard Newton
05d0451e29 Update cmake to support Visual Studio 2015 2015-09-19 14:39:18 +01:00
Pieter Hintjens
d89753cbf0 Merge pull request #1585 from msb-at-yahoo/fix-send-doc-typo
Fix typo on send documentation re: nullification
2015-09-18 20:28:50 +02:00
maurice barnum
b12b8ca23b Fix typo on send documentation re: nullification 2015-09-18 11:22:12 -07:00
Constantin Rack
ed1009b3a5 Merge pull request #1584 from ymax/master
fixed zmq assertion in signaler.cpp under ubuntu
2015-09-18 16:57:19 +02:00
Maxim Yakhontov
e9e03f5ade fixed zmq assertion in signaler.cpp under ubuntu 2015-09-18 20:48:08 +06:00
Constantin Rack
2452c598b7 Merge pull request #1582 from pengweichu/master
Fixed the bug which cause the application crashed when use TCP connec…
Fixes #1581
2015-09-17 11:31:10 +02:00
PP
5dc8b51ceb Fixed the bug which cause the application crashed when use TCP connect to an invalid address(such as 192.168.1.255). 2015-09-17 16:59:25 +08:00
Pieter Hintjens
0f51190c27 Merge pull request #1580 from ricnewton/master
Fix windows cmake build
2015-09-14 14:24:37 +02:00
Richard Newton
3f4f3c1137 Fix windows cmake build 2015-09-14 13:21:20 +01:00
Constantin Rack
ee7f2a278a Merge pull request #1579 from staticfloat/patch-2 2015-09-14 07:59:12 +02:00
Elliot Saba
1fbc67a40a Fix pointer indirection precedence issue in docs
Without this change, a segmentation fault is likely to occur when using the proposed snippet of code, as `*address[size]` is equivalent to `*(address[size])`, not `(*address)[size]` as clearly intended.
2015-09-13 20:46:14 -07:00
Constantin Rack
2c94bb42c5 Merge pull request #1578 from hintjens/master
Problem: drop tests on CLIENT/SERVER are misleading
2015-09-13 14:18:49 +02:00
Pieter Hintjens
3f9255019b Problem: description of ZMQ_CLIENT/SERVER has inaccuracies
- both are thread safe
- they do not accept ZMQ_SNDMORE nor ZMQ_RCVMORE
2015-09-13 12:28:43 +02:00
Pieter Hintjens
50859e40b9 Problem: drop tests on CLIENT/SERVER are misleading
These sockets deal only with single part data (at present), so the
drop tests are misleading / inappropriate.

Solution: remove them.
2015-09-13 12:17:53 +02:00
Joe Eli McIlvain
fb57110b94 Merge pull request #1577 from hintjens/master
Various cleanups for CLIENT-SERVER sockets
2015-09-11 14:24:51 -07:00
Pieter Hintjens
f3ee8c69db Problem: request-reply pattern is lousy
REQ-REP barely work, and DEALER-ROUTER are misnamed. As we move to
formalizing CLIENT-SERVER, we can deprecate request-reply.

Solution: move this section to the end of the man page, and mark as
"will be deprecated".
2015-09-11 17:22:37 -04:00
Pieter Hintjens
e7da0ea07b Problem: client/server pattern is not documented
Solution: add man pages/sections for:

 * ZMQ_SERVER
 * ZMQ_CLIENT
 * ZMQ_THREADSAFE
 * zmq_msg_routing_id
 * zmq_msg_set_routing_id
2015-09-11 17:12:58 -04:00
Pieter Hintjens
4db73fc18b Problem: msg.cpp:set_routing_id accepts a zero routing ID
Solution: check/reject a zero routing ID with EINVAL.
2015-09-11 17:09:24 -04:00
Pieter Hintjens
6b00f40f74 Problem: test_client/server_drop_more are invalid
These tests connected CLIENT and SERVER to DEALER... this isn't
allowed. I changed to CLIENT-to-SERVER in both cases. The result
was aborts in client.cpp and server.cpp which cannot handle
invalid multipart data.

I removed the asserts in each of these in xsend.

Solution: fix the test cases and remove the (unwanted?) asserts
in client.cpp:xsend and server.cpp:xsend.
2015-09-11 17:07:50 -04:00
Pieter Hintjens
c2dffb9908 Problem: threadsafe test uses CLIENT-to-CLIENT
Solution: fix to use CLIENT-to-SERVER and increase number of messages
sent to 100K per thread, to better stress thread safety.
2015-09-11 17:01:27 -04:00
Pieter Hintjens
d416ffcec5 Problem: cannot build single test case in tests
This is due to the mangled include of platform.h, which was to make
CMake happy.

Solution: in CMakeLists.txt, define USING_CMAKE and then look for
platform.h in current directory if that is defined, else look in
../src/ as one would expect.
2015-09-11 16:42:26 -04:00
Pieter Hintjens
5e936fe955 Problem: routing ID cycles back to zero
It should never be zero.

Solution: if rid cycles back to zero, bump to 1.
2015-09-11 14:30:27 -04:00
Pieter Hintjens
60fdfd9a1b Problem: whitespace at end of lines, removed 2015-09-11 14:30:20 -04:00
Pieter Hintjens
c5b1de368a Problem: code lets CLIENT connect to CLIENT
This has no sense IMO; people who need this can still use DEALER-DEALER.

Solution: let CLIENT talk only to SERVER.
2015-09-11 13:46:02 -04:00
Pieter Hintjens
87f2dff38c Problem: zmq_msg_get_routing_id () is not consistent with API
We do not use 'get' for getters.

Solution: rename to zmq_msg_routing_id () for public API.
2015-09-11 13:15:00 -04:00
Pieter Hintjens
7be6ad0504 Replaced tabs in some files, with spaces 2015-09-11 13:03:31 -04:00
Constantin Rack
d0ffb91323 Merge pull request #1574 from pijyoi/master
avoid dereferencing uint32_t on unaligned address
2015-09-08 11:40:04 +02:00
KIU Shueng Chuan
25a50ca0d5 avoid dereferencing uint32_t on unaligned address 2015-09-08 17:26:31 +08:00
Pieter Hintjens
734a73c63d Merge pull request #1571 from c-rack/fix-typos
Solution: fix typos
2015-09-06 19:00:56 +02:00
Constantin Rack
bd923f0fbb Problem: some comments contain typos 2015-09-06 18:46:32 +02:00
Pieter Hintjens
3e43258769 Merge pull request #1570 from djelenc/deque_bug
Problem: Tests in Travis are failing randomly
2015-09-06 02:01:02 +02:00
David Jelenc
64ffda90d2 Problem: Tests in Travis are failing randomly
Tests were failing, because some deque calls were causing undefined
behavior: calling front() or pop_front() on an empty deque. Such
calls are now safeguarded.
2015-09-06 01:49:50 +02:00
Constantin Rack
39a0d33912 Merge pull request #1569 from djelenc/xpub_manual_lost_subscriptions
Fixed missing subscriptions on XPUB with manual subscriptions
2015-09-05 16:30:36 +02:00
David Jelenc
8fd71d631d Fixed missing subscriptions on XPUB with manual subscriptions
The patch fixes the issue #1568.
2015-09-05 15:56:26 +02:00
Pieter Hintjens
47e1216e1e Merge pull request #1567 from djelenc/xpub_manual_proxy_disconnect_unsubscribe
Problem: lingering subscriptions on XPUB sockets (#1566)
2015-09-05 12:14:27 +02:00
David Jelenc
dd35e1db0f Problem: lingering subscriptions on XPUB sockets (#1566)
The patch fixes lingering subscriptions that occur upon disconnection
on XPUB sockets with option XPUB_MANUAL when used in a XPUB-XSUB
proxies.
2015-09-05 12:07:50 +02:00
Pieter Hintjens
9e8e81cf9a Merge pull request #1564 from c-rack/issue-1558-2
Solution: do not call poller->add_fd() with -1. Fixes #1558
2015-09-03 12:41:55 +02:00
Constantin Rack
5dad00ebdc Problem: do not call poller->add_fd() with -1. Fixes #1558 2015-09-03 12:31:55 +02:00
Pieter Hintjens
23c55612e4 Merge pull request #1563 from zeromq/revert-1561-issue-1558
Revert "Solution: check return code of make_fdpair() with zmq_assert"
2015-09-03 12:15:42 +02:00
Constantin Rack
2159618b56 Revert "Solution: check return code of make_fdpair() with zmq_assert" 2015-09-03 10:56:26 +02:00
Constantin Rack
13db11c6ae Merge pull request #1562 from markuspf/fix-dragonfly-compile-2
Make DragonFly a first class citizen in terms of compilation
2015-09-03 10:19:42 +02:00
Markus Pfeiffer
ee984b1fe6 Make DragonFly a first class citizen in terms of compilation 2015-09-03 09:00:12 +01:00
Pieter Hintjens
32d7da1103 Merge pull request #1561 from c-rack/issue-1558
Solution: check return code of make_fdpair() with zmq_assert
2015-09-02 23:25:51 +02:00
Constantin Rack
bb9788867f Problem: return code of make_fdpair() is not checked. Fixes #1558 2015-09-02 23:19:27 +02:00
Constantin Rack
801f39dbef Merge pull request #1557 from hintjens/master
Cleaned up test case
2015-09-02 10:02:56 +02:00
Pieter Hintjens
1fdf8f78e4 Cleaned up test case 2015-09-02 09:55:19 +02:00
Constantin Rack
146be48495 Merge pull request #1553 from flub/master
Update zmq_inproc manpage for bind/connect order
2015-08-27 12:50:17 +02:00
Floris Bruynooghe
f86264db3e Update zmq_inproc manpage for bind/connect order
The order of zmq_bind() and zmq_connect() is no longer important
for the inproc transport since libzmq 4.0.  This updates this
in the zmq_inproc manpage.
2015-08-27 10:40:21 +01:00
Constantin Rack
0e1448a26f Merge pull request #1550 from xaqq/master
Problem: Identity frame from router has no metadata
2015-08-24 22:35:31 +02:00
Pieter Hintjens
bc513b6381 Merge pull request #1547 from jemc/master
Problem: Private/internal macros defined in public header.
2015-08-22 09:09:56 +02:00
Joe Eli McIlvain
33419425eb Problem: Private/internal macros defined in public header.
Solution: Move the macros to a private header.
2015-08-21 16:12:22 -07:00
Pieter Hintjens
735c02ed5e Merge pull request #1546 from reza-ebrahimi/master
rename ZMQ_UNUSED macro to LIBZMQ_UNUSED
2015-08-21 23:57:18 +02:00
reza.ebrahimi
63260d8701 rename ZMQ_UNUSED macro to LIBZMQ_UNUSED 2015-08-22 00:31:25 +04:30
Constantin Rack
b07b1e270e Merge pull request #1545 from ricnewton/master
Fix zmq crash when calling shutdown with a pending inproc socket connect
2015-08-21 11:25:45 +02:00
Richard Newton
096007c574 Fix zmq crash when calling shutdown with a pending inproc socket connect 2015-08-21 10:06:54 +01:00
Constantin Rack
4e5843b8ff Merge pull request #1543 from csiro-workspace/master
Set signaler_port to 0 which allows the OS to find a free port
2015-08-21 08:12:09 +02:00