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

4487 Commits

Author SHA1 Message Date
Constantin Rack
d92e40901d Merge pull request #1755 from UsamaMehboob/master
fixed issue #1754
2016-02-01 21:30:08 +01:00
Usama Mehboob
a72cb5d43d added #include<unistd.h> in udp_engine.cpp to solve error 'close was not declared in scope' 2016-02-02 01:17:12 +05:00
Pieter Hintjens
e1254e100e Merge pull request #1751 from c-rack/remove-zmq-utils-includes
Problem: deprecated `zmq_utils.h` is still included
2016-02-01 12:05:01 +01:00
Constantin Rack
7da3ee138e Problem: deprecated zmq_utils.h is still included
Solution: remove all remaining references to `zmq_utils.h`
2016-02-01 11:34:36 +01:00
Constantin Rack
435535ce92 Merge pull request #1750 from hintjens/master
Problem: various errors in build scripts
2016-02-01 11:22:13 +01:00
Pieter Hintjens
6f94af8cca Problem: various errors in build scripts
- zmq_utils.h was removed
- udp_address.cpp and udp_engine.cpp were added

Solution: patch all affected build scripts
2016-02-01 11:18:08 +01:00
Pieter Hintjens
3cf6c33132 Merge pull request #1748 from sunkin351/master
Added "udp_address" and "udp_engine" to VS2015 project
2016-02-01 10:25:17 +01:00
sunkin351
9b01ae826e Restoring zmq_utils.h from previous version
I hope restoring this from a previous version doesn't do any damage, it
is missing in the current version of this repository and is vital for
the lib to compile anywhere.
2016-01-31 20:19:04 -08:00
sunkin351
a464eec7df Added "udp_address" and "udp_engine" to enable windows build
Altered VS2015 files to enable building of the library.
2016-01-31 17:54:31 -08:00
Joe Eli McIlvain
d7ef68d6b7 Merge pull request #1747 from c-rack/remove-zmq-utils-h
Problem: `zmq_utils.h` is deprecated since 2014-07-09
2016-01-31 17:31:47 -08:00
Constantin Rack
af775c0c8b Problem: zmq_utils.h is deprecated since 2014-07-09
Solution: remove this file
2016-02-01 00:54:53 +01:00
Constantin Rack
8dbda15e21 Merge pull request #1745 from somdoron/master 2016-01-30 22:23:35 +01:00
Constantin Rack
4f4e475331 Merge pull request #1746 from minrk/allow-underscore-dns 2016-01-30 22:23:09 +01:00
Min RK
cdec4dc9ee allow underscores in domain names
Since they are allowed

(They are not, however, allowed in hostnames)
2016-01-30 21:30:30 +01:00
somdoron
389e853c6d Fix compilation errors on windows 2016-01-30 13:29:41 +02:00
Doron Somech
add4e7675f Merge pull request #1744 from jcfr/fix-gcc-warnings
Fix unused-parameter/unused-but-set-variable/missing-field-initializers warnings
2016-01-30 09:08:09 +01:00
Doron Somech
318dd7c717 Merge pull request #1743 from jcfr/add-missing-ctest-tests
ctest: Add missing test_udp and test_large_msg
2016-01-30 09:06:57 +01:00
Doron Somech
73f73ddaa9 Merge pull request #1742 from jemc/master
Problem: `udp_address::interface` conflicts with VS2015 build.
2016-01-30 09:06:40 +01:00
Jean-Christophe Fillion-Robin
2cb8da3bfd Style: Fix -Wmissing-field-initializers in socket_poller.cpp
This commit addresses the following warnings reported on gcc 5.2.1. In
the future, this will help reduce the "noise" and help catch warnings
revealing a serious problem.

It was originally introduce in the refactoring associated with
zeromq/libzmq@da2bc60 (Removing zmq_pollfd as it is replaced by zmq_poller).

8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
/path/to/libzmq/src/socket_poller.cpp: In member function ‘int zmq::socket_poller_t::add(zmq::socket_base_t*, void*, short int)’:
/path/to/libzmq/src/socket_poller.cpp:92:51: warning: missing initializer for member ‘zmq::socket_poller_t::item_t::pollfd_index’ [-Wmissing-field-initializers]
     item_t item = {socket_, 0, user_data_, events_};
                                                   ^
/path/to/libzmq/src/socket_poller.cpp: In member function ‘int zmq::socket_poller_t::add_fd(zmq::fd_t, void*, short int)’:
/path/to/libzmq/src/socket_poller.cpp:108:50: warning: missing initializer for member ‘zmq::socket_poller_t::item_t::pollfd_index’ [-Wmissing-field-initializers]
     item_t item = {NULL, fd_, user_data_, events_};
                                                  ^
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
2016-01-30 02:56:03 -05:00
Jean-Christophe Fillion-Robin
46b02338e3 Style: Fix -Wunused-but-set-variable in test_stream_exceeds_buffer.cpp
This commit addresses the following warnings reported on gcc 5.2.1. In
the future, this will help reduce the "noise" and help catch warnings
revealing a serious problem.

8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
/path/to/libzmq/tests/test_stream_exceeds_buffer.cpp: In function ‘int main()’:
/path/to/libzmq/tests/test_stream_exceeds_buffer.cpp:19:9: warning: variable ‘rc’ set but not used [-Wunused-but-set-variable]
     int rc = setsockopt(server_sock, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof(enable));
         ^
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
2016-01-30 02:56:03 -05:00
Jean-Christophe Fillion-Robin
f329252dcb Style: Fix unused parameter compilation warnings
This commit addresses the following warnings reported on gcc 5.2.1. In
the future, this will help reduce the "noise" and help catch warnings
revealing a serious problem.

8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
/path/to/libzmq/src/options.cpp:1048:36: warning: unused parameter ‘option_’ [-Wunused-parameter]
 bool zmq::options_t::is_valid (int option_) const
                                    ^

/path/to/libzmq/src/plain_client.cpp:146:30: warning: unused parameter ‘cmd_data’ [-Wunused-parameter]
         const unsigned char *cmd_data, size_t data_size)
                              ^

/path/to/libzmq/src/plain_client.cpp:146:30: warning: unused parameter ‘cmd_data’ [-Wunused-parameter]
         const unsigned char *cmd_data, size_t data_size)
                              ^

/path/to/libzmq/src/socket_base.cpp:1445:44: warning: unused parameter ‘group_’ [-Wunused-parameter]
 int zmq::socket_base_t::xjoin (const char *group_)
                                            ^
/path/to/libzmq/src/socket_base.cpp:1451:45: warning: unused parameter ‘group_’ [-Wunused-parameter]
 int zmq::socket_base_t::xleave (const char *group_)
                                             ^

/path/to/libzmq/src/radio.cpp:145:33: warning: unused parameter ‘msg_’ [-Wunused-parameter]
 int zmq::radio_t::xrecv (msg_t *msg_)
                                 ^
/path/to/libzmq/src/dish.cpp:164:32: warning: unused parameter ‘msg_’ [-Wunused-parameter]
 int zmq::dish_t::xsend (msg_t *msg_)
                                ^

/path/to/libzmq/tests/test_msg_ffn.cpp:32:16: warning: unused parameter ‘data’ [-Wunused-parameter]
 void ffn(void *data, void *hint) {
                ^

/path/to/libzmq/tests/test_timers.cpp:50:19: warning: unused parameter ‘timer_id’ [-Wunused-parameter]
 void handler (int timer_id, void* arg)
                   ^
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
2016-01-30 02:56:03 -05:00
Jean-Christophe Fillion-Robin
05e48cc6a9 ctest: Add missing test_udp and test_large_msg
This commit fixes the author warnings reported below. These tests
have originally been introduced in zeromq/libzmq@5ebfd17 and
zeromq/libzmq@5fe75f0.

8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
CMake Warning (dev) at tests/CMakeLists.txt:133 (message):
  Test 'test_udp' is not known to CTest.
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at tests/CMakeLists.txt:133 (message):
  Test 'test_large_msg' is not known to CTest.
This warning is for project developers.  Use -Wno-dev to suppress it.
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
2016-01-30 02:10:01 -05:00
Joe Eli McIlvain
cf5c288dda Rename udp_address::interface to iface for VS2015 build.
Resolves #1739.
2016-01-29 19:50:04 -08:00
Pieter Hintjens
b784943f90 Merge pull request #1737 from somdoron/radio-dish
Problem: no udp/multicast support in zeromq
2016-01-29 20:23:10 +01:00
somdoron
5ebfd1728f make udp support for radio-dish 2016-01-29 21:17:11 +02:00
Constantin Rack
a2b9d826e4 Merge pull request #1735 from hintjens/master
Problem: radio/dish class broke Windows builds
2016-01-29 11:24:33 +01:00
Pieter Hintjens
2ae4c55bf5 Problem: radio/dish class broke Windows builds
Solution: add these new classes to MSVC project files
2016-01-29 11:07:21 +01:00
Constantin Rack
1bcb0a737e Merge pull request #1734 from somdoron/radio-dish
problem: radio-dish is still hacky
2016-01-29 10:17:54 +01:00
somdoron
1960b4e8a9 Filtering messages on dish side 2016-01-29 10:53:47 +02:00
somdoron
c7d52ec260 radio-dish join/leave are ZMTP commands 2016-01-29 10:53:47 +02:00
somdoron
5054f2eb61 radio-dish is sending the group as first frame 2016-01-29 10:53:47 +02:00
somdoron
68675e23d9 adds group to zmq_msg 2016-01-29 10:53:42 +02:00
somdoron
b2718149e0 msg external storage is using content_t 2016-01-29 10:46:42 +02:00
Constantin Rack
e424388608 Merge pull request #1730 from somdoron/master
problem: request socket state machine check is not running
2016-01-28 19:11:27 +01:00
somdoron
15ad6f8051 save some bytes in msg class 2016-01-28 18:53:35 +02:00
somdoron
dc945998a4 missing virtual modifier or session_base 2016-01-28 18:31:05 +02:00
Pieter Hintjens
16f1be9de3 Merge pull request #1729 from c-rack/update-copyright-year
Problem: copyright year is still 2015
2016-01-28 15:26:45 +01:00
Constantin Rack
a539b0c6e8 Problem: copyright year is still 2015
Solution: update to 2016
2016-01-28 15:07:31 +01:00
Constantin Rack
a7b7f3e6c2 Merge pull request #1727 from somdoron/master
problem: pub/sub pattern in zeromq is complicated and not thread safe
2016-01-27 17:28:59 +01:00
somdoron
b8425a25cf radio-dish pattern 2016-01-27 18:22:48 +02:00
Constantin Rack
511d701de3 Merge pull request #1725 from GreatFruitOmsk/master 2016-01-22 16:00:33 +01:00
Ilya Kulakov
77f5344ff7 Fix VMCI compilation errors on Windows. 2016-01-22 20:34:23 +06:00
Pieter Hintjens
1c7d59a58a Merge pull request #1724 from minrk/multi-monitor
stop previous monitor socket before starting new one
2016-01-22 13:50:06 +01:00
Min RK
f0dce000b2 stop previous monitor socket before starting new one
avoids leaking sockets due to multiple monitor calls on one socket

Alternative: raise error (not sure what errno; EADDRINUSE?) if collision detected; force manual stop.
2016-01-21 16:21:07 +01:00
Constantin Rack
f25a9c83f5 Merge pull request #1723 from GreatFruitOmsk/master
Family is not set when resolving NIC on android.
2016-01-21 15:56:26 +01:00
Ilya Kulakov
6c9974770b Family is not set when resolving NIC on android.
Make it ready to enable ipv6 for AIX or HP/UX
2016-01-21 19:53:35 +06:00
Pieter Hintjens
cfbeac6ad1 Merge pull request #1722 from GreatFruitOmsk/master
Fix missing headers.
2016-01-21 08:46:14 +01:00
Ilya Kulakov
e7850410f8 Fix trailing spaces. 2016-01-21 13:44:15 +06:00
Ilya Kulakov
e5894d5197 Fix missing headers which makes compilation fail on Android. 2016-01-21 13:44:01 +06:00
Joe Eli McIlvain
55e8191ac5 Merge pull request #1721 from c-rack/fix-issue-1720
Problem: build fails due to undefined INT_MAX
2016-01-20 14:56:20 -06:00
Constantin Rack
5c9bd5f0cb Problem: SIZE_MAX is not defined in all stdint.h includes
Solution: remove debug printf line completely
2016-01-20 19:30:21 +01:00
Constantin Rack
b7d42a4c4b Problem: SIZE_MAX is not defined
Solution: include stdint.h
2016-01-20 19:18:00 +01:00
Constantin Rack
924bce6478 Problem: build fails due to undefined INT_MAX
Solution: include climits

Fixes #1720
2016-01-20 19:16:54 +01:00
Constantin Rack
a40dd50da1 Merge pull request #1719 from minrk/rc-int-max
truncate rc to INT_MAX for send/recv
2016-01-20 13:53:33 +01:00
Min RK
5fe75f0e43 truncate rc to INT_MAX
to avoid overflow for large messages

send/recv still succeed for large messages,
but `zmq_msg_size` must be used to get the true size.
2016-01-20 13:43:51 +01:00
Constantin Rack
90f9f5ff91 Merge pull request #1718 from gcsideal/master
Last bits of Hurd support
2016-01-20 11:28:18 +01:00
Laszlo Boszormenyi (GCS)
be387d5e56 Last bits of Hurd support 2016-01-20 07:18:22 +01:00
Joe Eli McIlvain
c42bf873bb Merge pull request #1717 from c-rack/fix-typo
Problem: typo
2016-01-19 14:27:15 -06:00
Constantin Rack
e6edc4729e Problem: typo
Solution: fix it
2016-01-19 21:23:42 +01:00
Constantin Rack
cc29578088 Merge pull request #1716 from somdoron/master
Problem: client over inproc receives the msg with routing id set
2016-01-19 19:30:38 +01:00
somdoron
669c5697c2 fixing a bug: client over inproc receives msg with routing id set 2016-01-19 20:18:04 +02:00
Constantin Rack
e0fc5841cd Merge pull request #1715 from hintjens/master
Problem: configure --without-documentation is clumsy
2016-01-18 22:55:22 +01:00
Pieter Hintjens
88949694db Problem: configure --without-documentation is clumsy
It's inconsistent, and should be --with-something=yes/no. Also the
term 'documentation' is long and clumy.

Solution: use --with-docs instead.
2016-01-18 21:25:22 +01:00
Pieter Hintjens
9ebb5cc911 Merge pull request #1714 from somdoron/master
problem: condition variable setting invalid timeout
2016-01-18 14:45:05 +01:00
somdoron
4bfe2ec686 fix bug in condition variable using invalid timeout 2016-01-18 15:32:49 +02:00
Pieter Hintjens
d906e815bc Merge pull request #1713 from minrk/stdint
restore check for MSC 1600 before including stdint.h
2016-01-18 12:47:45 +01:00
Min RK
6ee78707c6 restore check for MSC 1600 before including stdint.h 2016-01-18 12:33:51 +01:00
Pieter Hintjens
1a502cc190 Merge pull request #1709 from gcsideal/master
GNU/Hurd support
2016-01-16 08:05:46 +01:00
Laszlo Boszormenyi (GCS)
be5ab6d5c9 GNU/Hurd support 2016-01-16 02:26:20 +01:00
Constantin Rack
6d491a4289 Merge pull request #1707 from minrk/tweetnacl
include tweetnacl in dists
2016-01-15 16:04:30 +01:00
Min RK
cf57a88d49 include tweetnacl in dists 2016-01-15 16:01:48 +01:00
Constantin Rack
93bb756298 Merge pull request #1706 from zoobab/master
Problem: OpenWRT Makefile still uses tarballs, now using GIT HEAD master
2016-01-15 11:40:48 +01:00
Benjamin Henrion
e19454e388 Problem: OpenWRT Makefile still uses tarballs, now using GIT HEAD master 2016-01-15 11:19:24 +01:00
Constantin Rack
d8941f599a Merge pull request #1705 from hintjens/master
Problem: no support for OpenWRT
2016-01-15 10:54:02 +01:00
Pieter Hintjens
055995e535 Problem: builds directory contains packaging scripts
Specifically, the RedHat tools.

Solution: move this into packaging/
2016-01-15 10:25:38 +01:00
Pieter Hintjens
d8d9ee3243 Problem: no support for OpenWRT
Solution: copy ZeroMQ packaging script from
https://github.com/vperron/openwrt-zmq-packages

Note: this is not usable as-such, needs fixing.
2016-01-15 10:10:06 +01:00
Pieter Hintjens
b9167df916 Merge pull request #1702 from GreatFruitOmsk/greatfruit-master
Add support for the RelWithDebInfo CMake configuration.
2016-01-14 15:16:14 +01:00
Ilya Kulakov
bfbb655491 Add support for the RelWithDebInfo CMake configuration.
It's now possible to build Release version with pdb file.
2016-01-14 18:20:00 +06:00
Constantin Rack
47d9caa49a Merge pull request #1701 from madebr/cmake_test_include_source_dir
Problem: On Windows CI, in tests/test_timers.c, "Windows.hpp" could not be found.
2016-01-14 10:04:12 +01:00
Anonymous Maarten
be36423bc2 Problem: On Windows CI, the included file Windows.hpp could not be
found.
Solution: Include the source directory

Problem: _sleep is a library function of Windows.
Solution: use sleep_
2016-01-14 02:53:24 +01:00
Constantin Rack
8f4574f8d0 Merge pull request #1700 from madebr/stable_sodium
Problem: Windows CI fails due to libsodium build failure
2016-01-14 01:02:46 +01:00
Anonymous Maarten
e7afed0655 Problem: Windows CI fails due to libsodium build failure
Solution: Use stable branch of libsodium
2016-01-14 00:59:57 +01:00
Pieter Hintjens
b9d831695f Merge pull request #1699 from somdoron/master
problem: when socket is destroyed before zmq_poller is the zmq_poller is accessing a dead socket
2016-01-13 14:27:22 +01:00
somdoron
6bbca7cf4a fix case when zmq_poller access a dead socket 2016-01-13 15:12:47 +02:00
KAPP Arnaud
714988e6c5 Merge pull request #1694 from hintjens/master
Problem: Android build is too slow
2016-01-05 17:34:32 +01:00
Pieter Hintjens
c49eef46ec Problem: Android build is too slow
Solution: use parallel make (-j 4) and don't build man pages.
2016-01-05 17:31:17 +01:00
Constantin Rack
f64c38583f Merge pull request #1692 from FredTreg/master
Test for issue #1690 (ZMQ_REQ_RELAXED)
2016-01-03 15:37:06 +01:00
Frederic Tregon
9bdb60577c Test for issue #1690 (ZMQ_REQ_RELAXED)
Current ZMQ_REQ_RELAXED test improvement to check that pipes are not closed
after executing two send() in a row with no recv() in between.
2016-01-03 15:28:07 +01:00
Constantin Rack
c30676fe52 Merge pull request #1691 from FredTreg/master
Fixed issue #1690 (ZMQ_REQ_RELAXED)
2016-01-01 20:04:34 +01:00
Frederic Tregon
89417ddb9f Fixed issue #1690 (ZMQ_REQ_RELAXED)
When using ZMQ_REQ_RELAXED and a 'send' is executed after another 'send' the
previous code would terminate the 'reply_pipe' if any.
This is incorrect as terminating the reply pipe also terminates the send pipe
as they are the same (a pipe associated with a socket is bidirectional).
Doing a terminate on the pipe sets an internal flag called out_active to false
and the pipe can no longer send messages.
Removing the 'terminate' solves the problem. Removing this call is not an issue
as the incorrect ordering of messages that could be incurred is taken care of
by the ZMQ_REQ_CORRELATE option if needed.
2016-01-01 19:19:33 +01:00
Constantin Rack
06402f4f28 Merge pull request #1687 from hintjens/master 2015-12-29 18:03:12 +01:00
Pieter Hintjens
2566c02a9e Problem: CLIENT and SERVER don't check SNDMORE
These sockets don't handle multipart data, so if callers send it,
they drop frames, and things break silently.

Solution: if the caller tries to use ZMQ_SNDMORE, return -1 and
set errno to EINVAL.
2015-12-29 17:00:06 +01:00
Constantin Rack
ae3b2734df Merge pull request #1684 from hintjens/master
Problem: still one error in vcxproj files
2015-12-21 19:13:27 +01:00
Pieter Hintjens
6bb0cc1fd5 Problem: still one error in vcxproj files
Solution: fix and try again.

(We could start to think of using zproject to generate these build
scripts as the only difference is C/C++)
2015-12-21 18:57:31 +01:00
Constantin Rack
6164e3d913 Merge pull request #1683 from hintjens/master
Problem: includes timer.cpp/hpp instead of timers.cpp/hpp
2015-12-21 18:42:32 +01:00
Pieter Hintjens
137afd5610 Problem: includes timer.cpp/hpp instead of timers.cpp/hpp
Solution: fix it.
2015-12-21 18:36:49 +01:00
Constantin Rack
1c874876ff Merge pull request #1682 from hintjens/master
Problem: performance tests don't link on Windows/MSVC
2015-12-21 13:24:00 +01:00
Pieter Hintjens
065fbcdc8f Problem: performance tests don't link on Windows/MSVC
Solution: add Iphlpapi.lib to libraries to link against
2015-12-21 13:07:13 +01:00
Constantin Rack
114f2b464f Merge pull request #1681 from hintjens/master
Problem: MSVC projects don't include timers.cpp/hpp
2015-12-21 11:17:37 +01:00
Constantin Rack
bf14b1f906 Merge pull request #1680 from hintjens/master
Fixes for Windows, and poller API
2015-12-21 11:09:28 +01:00