1321 Commits

Author SHA1 Message Date
Pieter Hintjens
ad77937956 Added ZMQ_STREAM socket type
- designed for TCP clients and servers
- added HTTP client / server example in tests/test_stream.cpp
- same as ZMQ_ROUTER + ZMQ_ROUTER_RAW + ZMQ_ROUTER_MANDATORY
- includes b893ce set ZMQ_IDENTITY on outgoing connect
- deprecates ZMQ_ROUTER_RAW
2013-06-27 20:53:15 +02:00
Gavin
b893ce2503 Store identity for raw socket
Identity stored during connect procedure. Can be read using
zmq_getsockopt and used as the identity frame when sending messages.
This allows the implementation of a raw socket client.
2013-06-23 18:16:33 +01:00
Martin Hurton
b12be41736 Rename parse_properties to parse_metadata 2013-06-23 09:01:52 +02:00
Martin Hurton
99d4974580 Refactor how properties are parsed 2013-06-22 19:02:08 +02:00
Martin Hurton
084e8792de Small cleanup in pipe.cpp 2013-06-22 16:15:35 +02:00
Ian Barber
2bf51247fe Merge pull request #587 from hurtonm/master
Make ZAP optional for CURVE mechanism
2013-06-22 07:14:28 -07:00
Martin Hurton
fa0f0e21b8 Make ZAP optional for PLAIN mechanism 2013-06-22 16:05:46 +02:00
Pieter Hintjens
8bb79b5eb1 Merge pull request #586 from hurtonm/master
Make ZAP optional for CURVE mechanism
2013-06-22 06:42:26 -07:00
Martin Hurton
5975e00fd1 Make ZAP optional for CURVE mechanism 2013-06-22 15:36:21 +02:00
Pieter Hintjens
1ea06883c0 Fixed spelling in comments 2013-06-22 13:39:24 +02:00
Pieter Hintjens
f4848ddb32 Prints message and exits if app tries to use CURVE without libsodium 2013-06-22 13:39:24 +02:00
Ian Barber
694543e3a2 Merge branch 'master' of git://github.com/zeromq/libzmq 2013-06-22 10:59:16 +01:00
Ian Barber
f4c51db842 Fix small streamengine issue w/ term and handshake
Also tidy up monitor test a little.
2013-06-22 10:58:16 +01:00
Martin Hurton
8af208fab7 Implement ZMTP/3.0 CURVE mechanism 2013-06-22 11:48:44 +02:00
Martin Hurton
e4a211870c Implement CurveZMQ message encryption and authentication 2013-06-22 11:46:40 +02:00
Martin Hurton
c9638fceb4 Merge pull request #581 from hintjens/master
Problem: code isn't setting mechanism to CURVE properly
2013-06-22 02:12:39 -07:00
Pieter Hintjens
8c0ded5076 Properly set mechanism to CURVE when setting a curve option 2013-06-22 11:05:01 +02:00
Martin Hurton
20a7978d67 Stop ZMTP handshake when an unexpected message comes 2013-06-22 08:12:11 +02:00
Ian Barber
cabf4e658f Comments to clarify the socket name function 2013-06-21 16:56:45 +01:00
Ian Barber
1fe7820629 Merge pull request #577 from hintjens/master
API for CURVE configuration
2013-06-20 11:09:20 -07:00
Gonzalo Diethelm
3b355fec9a Introduced private constants for the context sanity tag values.
Ignored more MSVC intermmediate files.
2013-06-20 12:43:32 -04:00
Pieter Hintjens
d9bb16725e Added options for CURVE security
- ZMQ_CURVE_PUBLICKEY for clients and servers
- ZMQ_CURVE_SECRETKEY for clients
- ZMQ_CURVE_SERVERKEY for clients
- ZMQ_CURVE_SERVER for servers
- added tools/curve_keygen.c as example
- updated man pages
2013-06-20 18:09:12 +02:00
Martin Hurton
37b99c0b4b Implement ZMTP/3.0 CURVE handshake 2013-06-20 13:36:12 +02:00
xinchuan
38327927ce fix memory leak in tempnam() usage 2013-06-15 16:11:50 +08:00
shripchenko
627190c8be another iteration on ZMQ_PROBE_ROUTER
now it properly works for ROUTER
2013-06-10 02:31:00 -07:00
Pieter Hintjens
6ff51ee909 Updated ZAP request for changed protocol draft
- username and password sent as two string frames
- fixed test case to match
2013-06-07 15:50:36 +02:00
Martin Hurton
2928c91a6d Implement ZAP and integrate it with PLAIN mechanism 2013-06-06 13:28:21 +02:00
Martin Hurton
4e47084dd4 Minor cleanups 2013-06-06 13:28:21 +02:00
Martin Hurton
c3e40736de Rename terminated->pipe_terminated 2013-06-06 13:28:21 +02:00
Pieter Hintjens
a9679da764 Packaging on ZMQ_PROBE_ROUTER
- renamed to ZMQ_PROBE_ROUTER
2013-06-05 15:55:15 +02:00
shripchenko
97324398a7 refactored ZMQ_ROUTER_ANNOUNCE_SELF code. renamed it to ZMQ_PROBE_NEW_PEERS.
implement it for DEALER tocket.
+documentation
2013-06-05 15:29:40 +02:00
Josh Gao
43d049741f Fix mistaken use of xor in "2^31 - 1". 2013-05-31 15:54:01 -07:00
Ian Barber
9a0b2c8970 Pieter's change to fix memory leak on mechanism 2013-05-29 21:58:20 +01:00
Pieter Hintjens
240eff384a Merge pull request #563 from shripchenko/master
Refactoring of 'ZMQ_ROUTER_ANNOUNCE_SELF'
2013-05-29 09:03:54 -07:00
Martin Hurton
4e4803e07f Rename pipe states to make it more mnemonic 2013-05-28 13:45:20 +02:00
shripchenko
f805e4dd03 changed option name. +documentation changes 2013-05-24 07:09:53 -07:00
shripchenko
aec989fb5d small refactoring 2013-05-23 02:02:18 -07:00
shripchenko
51750a7d2a refactored ZMQ_ROUTER_ANNOUNCE_SELF code. renamed it to ZMQ_PROBE_NEW_PEERS.
implement it for DEALER tocket.
+documentation
2013-05-23 01:49:40 -07:00
Martin Hurton
f781eb7e7b Merge pull request #562 from hintjens/master
Removed tracing on router option setting
2013-05-22 07:05:20 -07:00
Pieter Hintjens
fbd1729cbd Removed tracing for Travis builds 2013-05-22 00:17:03 +02:00
shripchenko
ed3a115da9 Add ROUTER socket option to introduce self(send an empty message) to new peers, to allow ROUTER<->ROUTER auto-discovery problem. 2013-05-21 10:25:21 -07:00
Pieter Hintjens
4112693051 Cleaned up router option code
- made consistent with options.cpp code
- added trace print for ongoing issue with Travis CI builds
2013-05-21 15:15:16 +02:00
Pieter Hintjens
31ee92f2fd stdint.h is not available on all platforms 2013-05-19 10:01:33 +01:00
Pieter Hintjens
73562112b8 Whitespace fixes 2013-05-18 11:53:20 +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
Martin Hurton
182a224bb0 Use socket options to select security mechanism 2013-05-17 15:49:59 +02: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
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
Martin Hurton
cd4d8bb15a Implement ZMTP/3.0 NULL mechanism 2013-04-28 14:13:40 +02:00