Thomas Rodgers
3497244c41
Added ZMQ_SHARED message option to zmq_msg_get()
2014-07-12 09:01:27 -05:00
Pieter Hintjens
13ed711448
Merge pull request #1117 from jlauenercern/master
...
Thread scheduling parameters: Use ZMQ context options instead of environment variables.
2014-07-02 17:49:40 +02:00
Joel Lauener
219310b4f0
Thread scheduling parameters: Use ZMQ context options instead of
...
environment variables.
2014-07-02 14:41:21 +02:00
Richard Newton
00fe56c4bf
Merge pull request #1115 from hurtonm/master
...
Code cleanup
2014-07-01 09:22:28 +01:00
Richard Newton
bbf597196e
Merge pull request #1112 from hintjens/master
...
Problem: two header files for a single library
2014-07-01 09:21:33 +01:00
Martin Hurton
079ff8b759
Code cleanup
2014-07-01 09:17:19 +02:00
Pieter Hintjens
fa3ae97480
Merge pull request #1114 from PalmStoneGames/master
...
Add missing socks files
2014-06-29 17:35:50 +02:00
Diego Duclos
a9cb9022fd
Add missing socks files
2014-06-29 15:14:54 +02:00
Pieter Hintjens
1b9f67cac6
Merge pull request #1113 from fichtner/socks_include
...
socks: fix build on FreeBSD
2014-06-27 20:35:59 +02:00
Franco Fichtner
f1207e6af1
socks: fix build on FreeBSD
...
The fix should be sane on all UNIX-like systems, so there's
no ZMQ_HAVE_FREEBSD involved. It's likely that other BSDs
stumble across this problem too.
2014-06-27 20:15:08 +02:00
Pieter Hintjens
39f2e8f273
Problem: missing stdlib.h include in curve_keygen.cpp
...
Solution: fixed this. Also minor code cleanups.
2014-06-27 16:41:27 +02:00
Pieter Hintjens
a087ce55ea
Problem: two header files for a single library
...
Users who need e.g. zmq_curve_keypair() have to remember to include
zmq_utils.h, which is counter-intuitive. The whole library should be
represented by a single include file.
Solution: merge all contents of zmq_utils.h into zmq.h, and deprecate
zmq_utils.h. Existing apps can continue unchanged. New apps can ignore
zmq_utils.h completely.
2014-06-27 15:58:18 +02:00
Richard Newton
7e8dd46631
Merge pull request #1111 from hintjens/master
...
Problem: zmq_msg_gets did not set errno on unknown properties
2014-06-25 16:38:43 +01:00
Pieter Hintjens
dd05a64462
Problem: zmq_msg_gets did not set errno on unknown properties
...
Solution: set errno to EINVAL when a property does not exist.
Also fixed test_metadata.cpp to test this case.
2014-06-25 17:28:36 +02:00
Richard Newton
3b505f1f6a
Merge pull request #1110 from hintjens/master
...
Reverted removal of [ ] support
2014-06-25 15:10:07 +01:00
Pieter Hintjens
6e91330a0c
Added clarifying comment
2014-06-25 14:37:54 +02:00
Pieter Hintjens
58c067ff0e
Revert "Problem: tcp_address.cpp allowed [ and ] around address"
...
This reverts commit 78a7b469a1993b681031f513d0c750c3a8454bb8.
2014-06-25 14:36:55 +02:00
Richard Newton
47c796276f
Merge pull request #1109 from hintjens/master
...
Set EINVAL on invalid tcp:// endpoint in zmq_connect
2014-06-25 12:41:37 +01:00
Pieter Hintjens
ce8fbb26cb
Problem: zmq_connect doesn't return EINVAL on invalid endpoint
...
Solution: set errno to EINVAL when tcp:// endpoint is invalid (was just
leaving errno to previous value).
2014-06-25 12:48:26 +02:00
Pieter Hintjens
2524e26893
Code cleanups
2014-06-25 12:47:39 +02:00
Pieter Hintjens
859b43f1eb
Merge pull request #1107 from jlauenercern/master
...
Allow change of pthread priority
2014-06-25 11:29:07 +02:00
Joel Lauener
112ef6f172
Allow change of pthread priority
...
Rationale: In a real-time environment it is sometime mandatory to tune
threads priority and scheduling policy. This is required by our users
who mixes real-time and server threads within
the same process. It's not planned to support this on non-pthread
platforms (e.g. Windows).
2014-06-25 09:51:10 +02:00
Richard Newton
64513d8522
Merge pull request #1106 from hintjens/master
...
Problem: zmq_connect() does not validate TCP addresses
2014-06-24 13:56:00 +01:00
Pieter Hintjens
78a7b469a1
Problem: tcp_address.cpp allowed [ and ] around address
...
This syntax is undocumented and has no known meaning. It was in libzmq
since 3.x.
Solution: remove this code.
2014-06-24 14:36:21 +02:00
Pieter Hintjens
deaad00ad9
Problem: zmq_connect() does not validate TCP addresses
...
Since https://github.com/zeromq/libzmq/commit/350a1a , TCP addresses
get resolved asynchronously, so zmq_connect no longer returned an
error on incorrect addresses.
This is troublesome since we rely on some error checking to catch
blatant errors.
Solution add some upfront syntax checking that catches at least the
obvious kinds of errors (invalid characters, wrong or missing port
number).
2014-06-24 14:33:38 +02:00
Richard Newton
407843374d
Merge pull request #1105 from hintjens/master
...
Fixed typo in doc example
2014-06-24 10:38:46 +01:00
Pieter Hintjens
18d222515f
Fixed typo in doc example
2014-06-23 20:24:36 +02:00
Pieter Hintjens
1f063dc30a
Merge pull request #1103 from ricnewton/master
...
Fix windows build
2014-06-23 20:23:20 +02:00
Pieter Hintjens
61c2a7d471
Merge pull request #1104 from tristianc/master
...
Updated spec file for libzmq 4.0.4
2014-06-23 20:23:06 +02:00
Richard Newton
82be399527
Merge pull request #1097 from hintjens/master
...
Added capabilities API
2014-06-23 13:23:20 +01:00
Richard Newton
369725ab8f
Fix windows build
2014-06-23 13:10:43 +01:00
Pieter Hintjens
de3832d2f8
Merge pull request #1101 from hurtonm/master
...
Fix memory leak in socks connecter
2014-06-23 00:18:36 +02:00
Martin Hurton
b73d1c8fed
Fix memory leak in socks connecter
2014-06-23 00:02:15 +02:00
Pieter Hintjens
79d578ef0b
Merge pull request #1100 from hurtonm/master
...
Add support for SOCKS proxies
2014-06-22 23:42:23 +02:00
Martin Hurton
f06ca69ae9
Add support for SOCKS proxies
...
This is still raw and experimental.
To connect through a SOCKS proxy, set ZMQ_SOCKS_PROXY socket option on
socket before issuing a connect call, e.g.:
zmq_setsockopt (s, ZMQ_SOCKS_PROXY,
"127.0.0.1:22222", strlen ("127.0.0.1:22222"));
zmq_connect (s, "tcp://127.0.0.1:5555");
Known limitations:
- only SOCKS version 5 supported
- authentication not supported
- new option is still undocumented
2014-06-22 23:19:33 +02:00
Pieter Hintjens
883e95b22e
Merge pull request #1099 from chrox/master
...
Fixed build with arm-linux-androideabi toolchain
2014-06-22 12:17:35 +02:00
chrox
bdf6427a00
Fixed build with arm-linux-androideabi toolchain
2014-06-22 18:13:05 +08:00
Pieter Hintjens
8b80197207
Merge pull request #1098 from mgatny/add_gssapi_documentation
...
Add documentation for GSSAPI options.
2014-06-20 07:14:21 +02:00
Mike Gatny
0a4123fd91
Add documentation for GSSAPI options.
2014-06-19 23:57:48 -04:00
Pieter Hintjens
36db9c0803
Fixed compile error if Kerberos installed
2014-06-19 15:28:04 +02:00
Pieter Hintjens
7242cdf842
Trivial whitespace fixup
2014-06-19 14:56:10 +02:00
Pieter Hintjens
f11d673ba9
Problem: need way to probe library capabilities
...
As libzmq is compiled with optional transports and security mechanisms,
there is no clean way for applications to determine what capabilities
are actually available in a given libzmq instance.
Solution: provide an API specifically for capability reporting. The
zmq_has () method is meant to be open ended. It accepts a string so
that we can add arbitrary capabilities without breaking existing
applications.
zmq.h also defines ZMQ_HAS_CAPABILITIES when this method is provided.
2014-06-18 15:19:07 +02:00
Pieter Hintjens
27547bc9bc
Problem: when libgssapi isn't available, GSSAPI options 'seem' to work
...
Solution: use same approach as for libsodium/CURVE, i.e. return EINVAL
if the library isn't present when libzmq builds, and the application
still tries to use these options in zmq_getsockopt/setsockopt.
2014-06-17 16:32:47 +02:00
Trevor Bernard
cac5e74d55
Merge pull request #1096 from hintjens/master
...
Problem: API violations are treated as recoverable errors
2014-06-17 11:29:39 -03:00
Pieter Hintjens
1beb54cef0
Added militant API checking on zmq_getsockopt
2014-06-17 16:24:56 +02:00
Pieter Hintjens
d0667461f0
Fixed build: malformed only defined when needed.
2014-06-17 16:14:19 +02:00
Pieter Hintjens
b4ed3f5506
Problem: API violations are treated as recoverable errors
...
The example is applications passing invalid arguments to a socket option
and then failing to check the return code. The results can be very hard
to diagnose. Here are some threads that show the pain this causes:
* https://github.com/zeromq/zyre/issues/179
* http://lists.zeromq.org/pipermail/zeromq-dev/2014-June/026388.html
One common argument is that a library should never assert, and should
pass errors back to the calling application. The counter argument is
that when an application is broken enough to pass garbage to libzmq,
it cannot be trusted to handle the resulting errors properly. Empirical
evidence from CZMQ, where we systematically assert on bad arguments, is
that this militant approach makes applications more, not less, robust.
I don't see any valid use cases for returning errors on bad arguments,
with one exception: zmq_setsockopt can be used to probe whether libzmq
was e.g. built with CURVE security. I'd argue that it's nasty to use a
side effect like this. If apps need to probe how libzmq was built, this
should be done explicitly, and for ALL build options, not just CURVE.
There are/were no libzmq test cases that check the return code for an
invalid option.
For now I've enabled militant assertions using --with-militant at
configure time. However I'd like to make this the default setting.
2014-06-17 16:00:55 +02:00
Tristian Celestin
232e6ff761
Merge branch 'master' of https://github.com/tristianc/libzmq
2014-06-17 09:41:48 -04:00
Richard Newton
1d236d81c8
Merge pull request #1090 from hintjens/master
...
Problem: zmq_ctx_get (ZMQ_MAX_SOCKETS) returns gibberish
2014-06-16 08:45:37 +01:00
Pieter Hintjens
373d68844a
Merge pull request #1093 from hurtonm/master
...
Code cleanup
2014-06-15 20:16:58 +02:00
Martin Hurton
b62d1c7d5f
Code cleanup
2014-06-15 19:45:09 +02:00
Pieter Hintjens
188f7864ea
Fixed testcase for ZMQ_MAX_SOCKETS
2014-06-11 21:25:46 +02:00
Pieter Hintjens
39455c2114
Problem: zmq_ctx_get (ZMQ_MAX_SOCKETS) returns gibberish
...
Well, not gibberish, but 2^31 on Linux, which is useless. The code
should probably use getrlimit on Linux and other calls depending on
the system. For now I've set the ceiling at 64K.
2014-06-11 18:24:39 +02:00
Tristian Celestin
8d7b64d648
Added packaged files and binary to RPM spec
2014-06-10 16:56:03 -04:00
Pieter Hintjens
3aec42e278
Merge pull request #1089 from jkryl/master
...
program dumps core when getpeername() returns EINVAL (#1085 )
2014-06-10 22:46:19 +02:00
Jan Kryl
cc4c37dc62
program dumps core when getpeername() returns EINVAL ( #1085 )
2014-06-10 16:11:00 -04:00
Pieter Hintjens
c973c985fe
Merge pull request #1088 from olafmandel/WSAENOTSOCK
...
Fix failed assertion for WSAENOTSOCK
2014-06-10 14:47:29 +02:00
Olaf Mandel
ab5775fb00
Fix failed assertion for WSAENOTSOCK
...
In de9eef306, the error number assigned to WSAENOTSOCK was EFAULT, but
zmq.cpp:919 expects an ENOTSOCK in this case.
2014-06-10 14:45:04 +02:00
Ian Barber
668b2c4d83
Merge pull request #1083 from hurtonm/master
...
Code cleanup
2014-06-07 22:45:35 +01:00
Martin Hurton
706eb4da8d
Code cleanup
2014-06-07 23:05:45 +02:00
Richard Newton
8c616290c8
Merge pull request #1082 from dmeehan1968/exclude-test-abstract-ipc-non-linux
...
Exclude test_abstract_ipc from non-Linux builds
2014-06-06 12:13:04 +01:00
Dave Meehan
a1f8737976
Exclude test_abstract_ipc from non-Linux builds
2014-06-06 12:08:55 +01:00
Pieter Hintjens
34e8f3c123
Merge pull request #1080 from tberkey/master
...
Corrected installer source path for VS pdb debug symbols file. Removed ...
2014-06-05 21:33:27 +02:00
Pieter Hintjens
fae07d919a
Merge pull request #1079 from evoskuil/master
...
Refresh VS 2010/2012 projects and NuGet templ for recent VS2013 updates.
2014-06-05 21:20:17 +02:00
evoskuil
10e5277e9f
Update NuGet template to incorporate platform.hpp from relative dir.
2014-06-05 12:13:00 -07:00
evoskuil
455bba6a15
Refresh VS 2010/2012 projects with recent VS2013 updates.
2014-06-05 12:12:18 -07:00
Pieter Hintjens
c23420ce04
Merge pull request #1078 from mkluwe/handle-WSAEADDRINUSE
...
handle WSAEADDRINUSE in tcp_connecter_t::connect
2014-06-05 20:27:14 +02:00
Matthias Kluwe
fa95d0b5e8
removed whitespace
...
(accidentially used my preferred style)
2014-06-05 19:39:15 +02:00
Matthias Kluwe
5154c544ff
handle WSAEADDRINUSE in tcp_connecter_t::connect
...
As mentioned on the mailing list, Windows may return WSAEADDRINUSE when binding
(reconnecting) to a port. Added this to the handled error codes as Pieter
suggested.
2014-06-05 19:29:42 +02:00
Richard Newton
ff6b684ab3
Merge pull request #1076 from dmeehan1968/msvc-platform-hpp-no-copy
...
Remove copy of platform.hpp for MSVC VS2013 builds
2014-06-05 13:15:50 +01:00
Dave Meehan
d775b4539f
Modified remote_thr project to not copy platform.hpp
2014-06-05 13:07:26 +01:00
Dave Meehan
66ebe31bf5
Modified remote_lat project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Dave Meehan
dd95eb96be
Modified local_thr project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Dave Meehan
06e67ff096
Modified local_lat project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Dave Meehan
7b50270142
Modified inproc_thr project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Dave Meehan
f5478859b0
Modified inproc_lat project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Dave Meehan
649f4b0f24
Modified libzmq project to not copy platform.hpp
2014-06-05 13:07:25 +01:00
Pieter Hintjens
d0371dc0f2
Merge pull request #1075 from dmeehan1968/perf-platform-hpp-restore
...
Restore unpathed references to platform.hpp for cmake builds
2014-06-05 13:33:02 +02:00
Dave Meehan
87ce17e439
Restore unpathed references to platform.hpp for cmake builds
2014-06-05 12:03:13 +01:00
Pieter Hintjens
14afbf9b48
Merge pull request #1074 from dmeehan1968/ignore-suo-in-subfolders
...
Exclude MSVC temp files regardless of where they are in builds/msvc
2014-06-05 13:02:03 +02:00
Dave Meehan
79575b0dd9
Exclude MSVC SUO files regardless of where they are in the builds/msvc folder
2014-06-05 11:59:23 +01:00
Pieter Hintjens
78ada21eb7
Merge pull request #1073 from evoskuil/master
...
VS set switch /Z7 in debug static (DebugLIB/DebugLTCG) base props.
2014-06-05 12:51:16 +02:00
evoskuil
f1111ceb0d
VS set switch /Z7 in debug static (DebugLIB/DebugLTCG) base props.
2014-06-05 03:28:03 -07:00
evoskuil
cbad7de0ae
Whitespace in VS projects.
2014-06-05 03:20:08 -07:00
Pieter Hintjens
4b543e2c98
Merge pull request #1072 from olafmandel/issue_1071
...
Extend zmq::wsa_error_to_errno()
2014-06-04 17:56:26 +02:00
Olaf Mandel
de9eef3063
Extend zmq::wsa_error_to_errno()
...
The list of error codes is taken from zmq::wsa_error_no(). Most of the
new WSA error codes result in EFAULT, but some return a more specific
value (even EAGAIN).
Fixes #1071
2014-06-04 17:28:01 +02:00
Pieter Hintjens
ad9838859f
Merge pull request #1069 from evoskuil/master
...
Update VS import props to allow delinking, reset PDB out path change.
2014-06-04 15:14:15 +02:00
Telford Berkey
920371ee6b
Corrected installer source path for VS pdb debug symbols file. Removed prefix path to platform.h
2014-06-04 08:47:22 -04:00
Martin Hurton
8e7a8a43b4
Merge pull request #1070 from ricnewton/master
...
Fix for issue https://github.com/zeromq/libzmq/issues/1065
2014-06-04 13:38:29 +02:00
Richard Newton
c9e86acf61
Set up hwm's before we connect the other end of the pipe in ctx_t::connect_inproc_sockets
2014-06-04 12:13:15 +01:00
evoskuil
6af46c39c7
Update VS import props to allow delinking by dependent projects.
2014-06-04 01:26:39 -07:00
evoskuil
4a02604cc2
Reset PDB out path change in base VS props.
2014-06-04 01:25:41 -07:00
Ian Barber
764a3495c6
Merge pull request #1067 from hintjens/master
...
Problem: email addresses in AUTHORS harvested for spam
2014-06-03 11:10:02 +01:00
Pieter Hintjens
ff07d85594
Problem: email addresses in AUTHORS harvested for spam
...
Solution: remove these email addresses, since authors are reachable
via their Git commit history.
2014-06-03 12:00:37 +02:00
Pieter Hintjens
b42b9c9d67
Merge pull request #1066 from hurtonm/master
...
Style fixes
2014-06-03 11:25:25 +02:00
Martin Hurton
f447386936
Style fixes
2014-06-03 10:42:29 +02:00
Pieter Hintjens
c6e38ec1b7
Merge pull request #1064 from evoskuil/master
...
cosmetic msvc xml fix
2014-06-03 07:31:53 +02:00
Pieter Hintjens
77f50f9ab8
Merge pull request #1061 from dmeehan1968/fix-perf-platform-hpp-windows
...
Fix for perf/platform.hpp not being cleaned up by distclean
2014-05-31 16:11:49 +02:00
Dave Meehan
451c94af8e
Fix for perf/platform.hpp not being cleaned up by distclean
2014-05-31 13:51:41 +01:00
Pieter Hintjens
b118acb710
Merge pull request #1059 from dmeehan1968/msvc-pdb-output
...
Added ProgramDataBaseFile directive
2014-05-30 19:05:43 +02:00