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

2507 Commits

Author SHA1 Message Date
Pieter Hintjens
73562112b8 Whitespace fixes 2013-05-18 11:53:20 +01:00
Pieter Hintjens
fa5c0e18e3 Trivial fix to man page 2013-05-18 11:53:10 +01:00
Martin Hurton
5d2a8b18e5 Merge pull request #557 from hintjens/master
Added as_server to options
2013-05-17 09:46:53 -07:00
Pieter Hintjens
f06abca046 Disable failing test for now 2013-05-17 17:26:54 +01:00
Pieter Hintjens
f909b9c722 plain_mechanism now uses options.as_server
- we need to switch to PLAIN according to options.mechanism
- we need to catch case when both peers are as-server (or neither is)
- and to use username/password from options, for client
2013-05-17 17:21:59 +01:00
Pieter Hintjens
da1e9a178a Cleaned up test pingpong code 2013-05-17 17:20:33 +01:00
Pieter Hintjens
342e576ec8 Merge pull request #556 from hurtonm/master
Use socket options to select security mechanism
2013-05-17 09:20:16 -07:00
Martin Hurton
182a224bb0 Use socket options to select security mechanism 2013-05-17 15:49:59 +02:00
Pieter Hintjens
fbcbb06b46 Merge pull request #555 from hintjens/master
Added options for PLAIN security
2013-05-15 08:56:06 -07:00
Pieter Hintjens
e1f797b048 Added configuration for PLAIN security
* ZMQ_PLAIN_SERVER, ZMQ_PLAIN_USERNAME, ZMQ_PLAIN_PASSWORD options
* Man page changes to zmq_setsockopt and zmq_getsockopt
* Man pages for ZMQ_NULL, ZMQ_PLAIN, and ZMQ_CURVE
* Test program test_security
2013-05-15 17:55:21 +02:00
Pieter Hintjens
8ea779c8f7 Fixed sizeof usage in man pages 2013-05-15 14:11:22 +02:00
Pieter Hintjens
593010fbeb Merge pull request #554 from hurtonm/master
Implement ZMTP/3.0 PLAIN mechanism
2013-05-14 14:02:52 -07:00
Martin Hurton
4eecda8af3 Implement ZMTP/3.0 PLAIN mechanism
This implements protocol handshake.
We still need to design and implement 1) API changes so a user
can set username and password, and 2) a mechanism for engine
to authenticate users.
2013-05-14 11:20:13 +02:00
Martin Hurton
d47295db70 Abstract security mechanism 2013-05-14 10:52:52 +02:00
Ian Barber
131b0a7148 Merge pull request #553 from hintjens/master
Some changes to building and packaging
2013-05-08 11:51:02 -07:00
Pieter Hintjens
e918fd4d69 Use correct libsodium call for detection 2013-05-07 14:47:07 +02:00
Pieter Hintjens
ff268b7c8a Fixed packaging for Windows - was missing errno sources 2013-05-07 14:44:55 +02:00
Pieter Hintjens
fa346fddd3 Added configure check for libsodium 2013-04-28 18:38:15 +02:00
Pieter Hintjens
3ef3b9405c Merge pull request #552 from hurtonm/master
Implement ZMTP/3.0 NULL mechanism
2013-04-28 09:37:23 -07:00
Martin Hurton
a7032e9ca8 Update test_raw_sock to work with ZMTP/3.0 2013-04-28 14:13:40 +02:00
Martin Hurton
cd4d8bb15a Implement ZMTP/3.0 NULL mechanism 2013-04-28 14:13:40 +02:00
Ian Barber
df01235871 Merge pull request #551 from hintjens/master
zmq_msg_close clarification in man pages
2013-04-27 06:27:24 -07:00
Pieter Hintjens
cb2ee7a5c2 Fixed up test_iov case 2013-04-27 14:53:14 +02:00
Pieter Hintjens
7e129a405c Clarified zmq_msg_close not needed after zmq_msg_send 2013-04-27 14:53:14 +02:00
Pieter Hintjens
522765be1e Merge pull request #550 from JonDyte/iovec
Experimental function zmq_recviov doesnt work correctly in a couple of c...
2013-04-25 14:28:11 -07:00
Jon Dyte
56ead84490 Experimental function zmq_recviov doesnt work correctly in a couple of cases
1) VSM - you cannot hand out the 'data' address as it was not allocated on the heap
2) for other messages the 'data' address cannot be handed out either, as it not the address
originally returned by malloc and hence cannot be passed to 'free'.
see msg.cpp
u.lmsg.content = (content_t*) malloc (sizeof (content_t) + size_);
....
u.lmsg.content->data = u.lmsg.content + 1;

So the function is changed to always malloc a data buffer and copy the data into it.
There is a possible optimisation using memmove for the non-VSM case but that is not done yet.
2013-04-25 21:58:26 +01:00
Martin Hurton
0bf5a31494 Merge pull request #549 from methodmissing/sigpipe-declare-err
Fix return code redeclaration for platforms with SO_NOSIGPIPE
2013-04-23 17:20:04 -07:00
Lourens Naudé
b5e5e10126 Fix return code redeclaration for platforms with SO_NOSIGPIPE 2013-04-23 23:01:14 +01:00
Ian Barber
9703dd806a Merge pull request #548 from hintjens/master
Fixed issue LIBZMQ-526
2013-04-23 05:28:25 -07:00
Pieter Hintjens
710f38f1cc Fixed syntax error 2013-04-22 15:12:53 +02:00
Pieter Hintjens
f4dbccd4fb Fix for LIBZMQ-526 2013-04-22 14:51:09 +02:00
Martin Hurton
0880d5b8ed Merge pull request #547 from hintjens/master
Fixed issue LIBZMQ-525
2013-04-18 08:30:50 -07:00
Pieter Hintjens
f0cf4095b5 Fixed issue #525 - multipart upstreaming from xsub to xpub 2013-04-18 17:23:57 +02:00
Ian Barber
d0c58d2409 Merge pull request #546 from hintjens/master
Throughput perf test was borked, fixed it
2013-04-15 11:01:37 -07:00
Pieter Hintjens
9df7c70aba Cleaned up copyright statements in perftest tools 2013-04-15 18:50:42 +02:00
Pieter Hintjens
c980820d29 I'm reverting the various changes to the throughput test programs since as far
as I can see, these didn't work any more. At the very least, the command line
API was broken and forced the user to enter new, exotic arguments. Patches
should not break existing APIs. But also, the internals of these programs had
become weird.

If we want to build more complex performance tests, that's fine, but we should
make new programs, not break the old ones. We need minimal, safe performance
tests in 0MQ.

Also, the code was quite horrid. So it's gone. If anyone wants to bring it back
please make the code neat, and build new APIs instead of breaking the old ones.

Cheers
Pieter
2013-04-15 18:50:42 +02:00
Pieter Hintjens
67e02ca8bc Use of named authors on man pages is no longer a good idea since it puts off
contributors and doesn't reflect the real process. I've taken out all named
authors and referred to the contribution policy. Hopefully this will improve
the contributions to the man pages.
2013-04-15 18:50:42 +02:00
Pieter Hintjens
f4a07b3951 Merge pull request #545 from hurtonm/master
Interoperate with higher versions of ZMTP protocol
2013-04-14 14:27:32 -07:00
Martin Hurton
e52c436252 Interoperate with higher versions of ZMTP protocol 2013-04-14 22:59:50 +02:00
Pieter Hintjens
c5721f9988 Merge pull request #544 from steve-o/libzmq-446
[#LIBZMQ-446] Silence error on setting PGM_TOS on REL 4.
2013-04-13 02:55:02 -07:00
Steven McCoy
d079190efa [#LIBZMQ-446] Silence error on setting PGM_TOS due to some platforms raising an error at runtime. Noted are RHEL 4. 2013-04-12 23:55:04 -04:00
Pieter Hintjens
d2b5f1f49e Merge pull request #543 from steve-o/vc110_fix
MSVC local_thr & remote_thr dependency fix
2013-04-12 13:22:41 -07:00
Steven McCoy
a432ea14d2 Add vc80 project dependency on platform.hpp for local & remote throughput tests. 2013-04-12 11:59:24 -04:00
Steven McCoy
cd31f67a80 Add platform.hpp as project dependency to vc100 and vc110 projects for local & remote throughput tests. 2013-04-12 11:55:27 -04:00
Pieter Hintjens
a3713cb750 Merge pull request #542 from hurtonm/master
Use state functions for message flow
2013-04-12 07:02:04 -07:00
Martin Hurton
9d79ac2830 Use state functions for message flow
The patch makes the code somewhat simpler and prepares it for
more complex initialization handshakes.
2013-04-12 15:49:08 +02:00
Pieter Hintjens
fd42be9dba Merge pull request #541 from hurtonm/rework_message_flow
Refactor code so that messages go through engines
2013-04-11 09:57:54 -07:00
Martin Hurton
7942db7606 Refactor code so that messages go through engines 2013-04-11 18:52:51 +02:00
Ian Barber
91f1e13125 Merge pull request #540 from hintjens/master
Small clarification about connect and ROUTER
2013-04-11 03:10:38 -07:00
Pieter Hintjens
6d19e400f1 Added clarification about connect on ROUTER 2013-04-11 09:48:41 +02:00
Pieter Hintjens
c396144216 Merge pull request #539 from TTimo/master
Adds a needed Windows system library dependency
2013-04-08 06:33:29 -07:00
Timothee "TTimo" Besset
2aec837218 InitializeSecurityDescriptor needs Advapi32.lib 2013-04-07 12:44:48 -05:00
Timothee "TTimo" Besset
106d962311 restore fixed MSVC 2010 projects, fork new MSVC 2012 projects 2013-04-06 19:39:06 -05:00
Pieter Hintjens
b5ace90e8e Merge pull request #538 from TTimo/master
MSVC fixes
2013-04-01 03:09:42 -07:00
Timothee "TTimo" Besset
44df35cb1e Use Multithreaded DLL Runtime, Debug/Release accordingly - need consistency for the czmq configurations 2013-03-31 18:18:05 -05:00
Timothee "TTimo" Besset
5973b4c665 Windows friendly replacement for gettimeofday 2013-03-31 09:10:56 -05:00
Timothee "TTimo" Besset
574fe35b32 Fix MSVC project files. 2013-03-31 09:09:50 -05:00
Pieter Hintjens
1e7db60e9a Merge pull request #537 from TTimo/master
mingw32 fixes
2013-03-24 16:08:45 -07:00
Timothee Besset
f8e7d462a6 mingw32 fixes 2013-03-24 23:32:21 +01:00
Martin Hurton
01fef41575 Merge pull request #536 from hintjens/master
Fixed test_last_endpoint (#80)
2013-03-24 07:49:25 -07:00
Pieter Hintjens
257debf659 Removed IPC endpoint from test; not portable, and fragile (#80) 2013-03-24 15:12:34 +01:00
Ian Barber
09a00de803 Merge pull request #534 from hintjens/master
Reverted cleanups of copyrghts
2013-03-21 05:07:46 -07:00
Pieter Hintjens
5ba7445b7a Merge pull request #535 from ken-tilera/master
Optimize atomics implementaiton for the Tile architecture
2013-03-20 10:34:48 -07:00
Ken Steele
3286bf5ab6 On the Tile architecture, use atomic instructions for atomic ptr and counter.
For atomic_counter and atomic_ptr classes, detect the Tile architecture
using #if defined __tile__ matching ARM and Solaris and then use the
Tile atomic instructions. Without this change, the default Mutex
implementation is used, which is slower.
2013-03-20 12:54:38 -04:00
Pieter Hintjens
8c96deb900 Added corporate copyrights 2013-03-20 11:59:23 +01:00
Pieter Hintjens
39214b3e40 Merge pull request #533 from mika-fischer/workaround-for-496
Work around for LIBZMQ-496
2013-03-18 02:46:45 -07:00
Mika Fischer
03c28411d8 Work around for LIBZMQ-496
The problem is that other threads might still be in mailbox::send() when
it is destroyed. So as a workaround, we just acquire the mutex in the
destructor. Therefore the running send will finish before the mailbox is
destroyed.

See also the fix for LIBZMQ-281 in zeromq2-x.

Signed-off-by: Mika Fischer <mika.fischer@zoopnet.de>
2013-03-18 10:20:08 +01:00
Pieter Hintjens
3b132e337e Merge pull request #532 from hurtonm/pgm_build_fix
Update PGM with recent changes
2013-03-18 01:05:38 -07:00
Martin Hurton
81818401e8 Update PGM with recent changes 2013-03-18 02:14:20 +01:00
Pieter Hintjens
16f8ea3e95 Clarified HWM=0 means infinite 2013-03-17 11:30:49 +01:00
Pieter Hintjens
9ea20b82cc Merge pull request #531 from murrekatt/master
Fixed CMake building after encoder/decoder changes
2013-03-13 12:45:37 -07:00
Tommy Back
c69e79706e Fix to building libzmq with CMake as sub-project (git submodule). 2013-03-13 20:27:49 +01:00
Tommy Back
601eedb7f3 Updated CMake building to work after encoder/decoder changes. 2013-03-13 20:10:00 +01:00
Ian Barber
c7cb5ab7c0 Merge pull request #530 from hintjens/master
Fixed copyrights in sources
2013-03-12 14:00:20 -07:00
Pieter Hintjens
f1738b9b92 More copyright cleanups 2013-03-12 17:04:51 +01:00
Pieter Hintjens
0e77d65f12 Removed pointless comment 2013-03-12 16:15:54 +01:00
Pieter Hintjens
8358d4e832 Renamed ZMQ_DELAY_ATTACH_ON_CONNECT_COULD_THIS_BE_ANY_LONGER to ZMQ_IMMEDIATE 2013-03-12 16:11:19 +01:00
Pieter Hintjens
12c7db8c42 Code name clean up 2013-03-12 15:56:10 +01:00
Pieter Hintjens
d826c53b9b Bumped ZMTP revision to 2
* Starting draft ZMTP/2.1 protocol (revision 2)
* Basis for adding security to the wire protocol
* Maintains backward compatibility
2013-03-12 15:49:23 +01:00
Pieter Hintjens
785ef41f67 Refactored codecs to match ZMTP version numbers 2013-03-12 15:29:37 +01:00
Pieter Hintjens
f0f16505e5 Removed corporate advertisements from source file headers
Copyrights had become ads for Sustrik's corporate sponsors, going against the original
agreement to share copyrights with the community (that agreement was: one line stating
iMatix copyright + one reference to AUTHORS file). The proliferation of corporate ads
is also unfair to the many individual authors. I've removed ALL corporate title from
the source files so the copyright statements can now be centralized in AUTHORS and
source files can be properly updated on an annual basis.
2013-03-12 13:24:57 +01:00
Pieter Hintjens
cb69986d74 Comment change 2013-03-12 13:24:57 +01:00
Pieter Hintjens
898ad19851 It's its not it's 2013-03-12 13:24:57 +01:00
Pieter Hintjens
1810f1025f Merge pull request #529 from guidog/master
Adapted zmq_socket_monitor man page to new API.
2013-03-08 10:03:19 -08:00
Guido Goldstein
d78d4972ae Adapted man page to API. 2013-03-08 16:58:04 +01:00
Pieter Hintjens
ba2dda407d Merge pull request #528 from guidog/master
Changed message structure for event notifications
2013-03-08 05:21:25 -08:00
Guido Goldstein
b0b8ab27c5 Changed message structure for event notifications. 2013-03-08 13:48:18 +01:00
Pieter Hintjens
656258c1d4 Merge pull request #527 from guidog/master
Simplified zmq_event_t structure.
2013-03-08 02:24:46 -08:00
Guido Goldstein
21eeb03b6c Simplified the zmq_event_t structure for easier access and better usability towards language bindings. 2013-03-08 10:34:25 +01:00
Ian Barber
068909f444 Merge pull request #526 from breese/master
Fixed Linux compilation problem
2013-03-05 08:00:59 -08:00
Bjorn Reese
7e37cc8ed4 Linux build fails due to undeclared variable 2013-03-05 11:52:47 +01:00
Pieter Hintjens
be1160832e Merge pull request #525 from pijyoi/master
remote_thr.cpp: port pthreads usage to win32 api
2013-03-03 01:14:00 -08:00
KIU Shueng Chuan
679869d981 add simple Makefile to build with mingw32 2013-03-03 15:39:44 +08:00
KIU Shueng Chuan
3176509e60 include source directory version of zmq.h and zmq_utils.h
this follows what {local,remote}_lat.cpp and inproc_{thr,lat}.cpp do.
2013-03-03 15:28:00 +08:00
KIU Shueng Chuan
402f9fd243 remote_thr.cpp: port pthreads usage to win32 api 2013-03-03 15:18:54 +08:00
Ian Barber
f420f0aff7 Merge pull request #524 from dlittleton/master
Windows: Fix rounding error in now_us. [Jira LIBZMQ-514]
2013-02-28 14:14:31 -08:00
Duane Littleton
1e52a451d6 Windows: Fix rounding error when calculating now_us
Improve accuracy of time calculations and avoid division by zero when
ticksPerSecond.QuadPart < 1000000.
2013-02-27 13:53:07 -05:00
Pieter Hintjens
22d9d95dd2 Merge pull request #523 from ambitslix/perf
Improvements and fixes for performance of PUSH/PULL in local_thr and rem...
2013-02-26 12:33:26 -08:00
Attila Mark
a22714dd79 Improvements and fixes for performance of PUSH/PULL in local_thr and remote_thr.
- option to set number of zmq threads on the command line for local_thr
- option to set number of zmq_threads and workers in remote_thr
- option to set SND/RCV buffer sizes on command line
- option to set whether to PUSH/PULL on command line
- option to set to use zmq_recv or zmq_msg for transfer on command line
- better timing function
- corrected and improved throughput reporting
- HWM and DELAY socket options
2013-02-26 12:10:27 -08:00
Ian Barber
deb977345c Merge pull request #522 from hintjens/master
Fixed overflow in results calculation
2013-02-25 05:30:11 -08:00