1645 Commits

Author SHA1 Message Date
Pieter Hintjens
77f5f7adae Merge pull request #1043 from hurtonm/dont_reconnect_on_protocol_errors
Don't reconnect on protocol errors
2014-05-18 10:53:32 +02:00
Pieter Hintjens
de639c34ae Merge pull request #1042 from hurtonm/master
Fix bug in reporting protocol errors
2014-05-18 10:09:38 +02:00
Martin Hurton
045dab91a5 Merge pull request #1037 from hintjens/master
Problem: artificial restriction on binary identities
2014-05-18 09:14:06 +02:00
Martin Hurton
9a53f334d2 Don't reconnect on protocol errors 2014-05-18 08:49:29 +02:00
Martin Hurton
ed076d4620 Fix bug in reporting protocol errors 2014-05-18 08:30:40 +02:00
Martin Hurton
7d3fa3afcb Tell the session why the engine has stopped 2014-05-17 21:04:38 +02:00
Pieter Hintjens
aad54b2a8b Whitespace fixes 2014-05-16 16:00:37 +02:00
Pieter Hintjens
a178097f95 Problem: artificial restriction on binary identities
Applications that use ZMQ_IDENTITY can be trapped by the artificial
restriction on not using a binary zero as first byte. It's specially
nasty on random generated identities, e.g. UUIDs, as the chance of a
binary zero is low, so it will pass 255 out of 256 times.

Solution: remove the restriction.
2014-05-16 16:00:37 +02:00
Martin Hurton
bd73119e2b CURVE: Implement server-side ERROR handling 2014-05-16 07:25:29 +02:00
Martin Hurton
0750303bfe CURVE: Implement client-side ERROR handling 2014-05-15 06:39:45 +02:00
Martin Hurton
410f891599 Prefix error-reason with length in ERROR command 2014-05-14 14:13:13 +02:00
Martin Hurton
dd6a4fe806 NULL: Correct ERROR command format 2014-05-14 06:52:55 +02:00
Martin Hurton
164ff4be6b Remove debugging output 2014-05-14 06:35:08 +02:00
Martin Hurton
57546f4ecb PLAIN: Implement ERROR handling in server 2014-05-14 06:23:47 +02:00
Martin Hurton
8651b55797 PLAIN: Fix parsing of ERROR command 2014-05-14 06:23:47 +02:00
Martin Hurton
6b8513744c PLAIN: Implement ERROR handling in client 2014-05-13 18:34:48 +02:00
Stoian Ivanov
8fcefed43f patch cleanup 2014-05-12 10:40:24 +03:00
Stoian Ivanov
d5991d6728 merge to upstream 2014-05-12 10:24:31 +03:00
Martin Hurton
22d6a97403 Split plain_mechanism into client and server part 2014-05-12 06:10:56 +02:00
Stoian Ivanov
acb71e0096 store also here! 2014-05-10 14:06:37 +03:00
Will Strang
afe5fd87e9 Issue #1017: add ZMQ_HANDSHAKE_IVL time limit on connection handshake 2014-05-09 13:54:24 +00:00
Frank
b846f3075c ws 2014-05-09 00:07:02 +02:00
Frank
8962b7de45 removed return code check for now, got -1 in test_security_curve. 2014-05-09 00:04:20 +02:00
Frank
05ab9a848f find libsodium with cmake 2014-05-09 00:04:19 +02:00
Frank
2cdfa1fff3 initialize libsodium and tweetnacl 2014-05-09 00:04:19 +02:00
Martin Hurton
934560b559 NULL: Implement ERROR handling
NULL mechanism sends ERROR command rather than READY command when ZAP
handler rejects the ZAP request (status code != "200"). The body of
ERROR command contains the status code as returned by ZAP handler.
2014-05-07 16:49:56 +02:00
Martin Hurton
43d8252446 Update gssapi mechanism 2014-05-06 17:49:26 +02:00
Martin Hurton
0be8144176 Update mechanism API so we can check for ERROR status 2014-05-06 17:08:56 +02:00
Franco Fichtner
fff29a4a0c ipc: fail harder for abstract ipc on non-Linux
Using 'ipc://@abstract-socket' on non-Linux platforms yields inconsistent
behaviour.  Abstract sockets don't exist, so the literal file is created.
The test previously failed, but for a different reason: this is not the
directory you are looking for.  Now, zmq_bind() will fail for the right
reason: the socket can't be created.  Put the XFAIL back.
2014-05-05 23:26:06 +02:00
Franco Fichtner
8c09ae6e49 gssapi: RFC 2744 mandates GSS_C_NT_HOSTBASED_SERVICE
Tested on FreeBSD 10.
2014-05-05 22:03:53 +02:00
Martin Hurton
dcd1f2038e Minor renaming 2014-05-05 19:52:53 +02:00
Martin Hurton
f2807d11a0 Remove i_properties interface
We use metadata_t directly. No need for generic interface now.
2014-05-03 21:03:49 +02:00
Richard Newton
2f08477292 Initialise _has_src_addr variable, fixes hang on Windows. 2014-05-03 13:59:37 +01:00
Pieter Hintjens
b06474312d ZAP vs. ZMTP metadata priority fixed 2014-05-02 23:14:27 +02:00
Pieter Hintjens
bd4a76cc2a Problem: GSSAPI server doesn't parse ZAP user id
Solution: add this to ZAP reply processing.
2014-05-02 23:12:53 +02:00
Pieter Hintjens
84ed81c014 Added test_metadata
- also prioritize ZAP metadata over ZMTP metadata in case application
  uses same names.
2014-05-02 22:21:50 +02:00
Pieter Hintjens
ded00177b3 Revert "Add code to investigate data race"
This reverts commit 5e0facda17b986943f0fe40a2dc6c98611655c35.
2014-05-02 16:50:16 +02:00
Pieter Hintjens
0bc669b106 Merge pull request #1000 from daveab/feature/divide_by_zero_investigation
Feature/divide by zero investigation
2014-05-02 16:31:48 +02:00
dave b
5e0facda17 Add code to investigate data race
Provides control of race windows and logging for some of the interesting transitions.
2014-05-02 14:27:33 +01:00
Martin Hurton
8d82cc2a0b Include ZMTP properties in message metadata
Metadata are built in stream_engine now.
This makes it easy to extend metadata with user-defined properties.
2014-05-02 12:45:14 +02:00
Martin Hurton
e95b477a87 Don't add empty metadata to received messages 2014-05-02 09:02:41 +02:00
Frank
e5a294ec02 tweetnacl integration 2014-05-01 21:30:02 +02:00
Martin Hurton
b9c2748146 Add metadata to received messages 2014-05-01 17:30:51 +02:00
Stoian Ivanov
fe3e8c5c70 linking fd to pipe identity via socket option 2014-04-30 16:34:55 +03:00
Pieter Hintjens
408dea796f Merge pull request #993 from klnikita/src_addr_connect
Allow to set up a source address and port for outgoing tcp connections in zmq_connect
2014-04-30 14:57:08 +02:00
nikita kozlov
acb6807041 Allow to set up a source address and port for outgoing tcp connections in zmq_connect()
Few examples:
tcp:://192.168.0.4:55555;192.168.0.254:1234
tcp:://192.168.0.4:0;192.168.0.254:1234
tcp:://eth2:55555;192.168.0.254:1234
2014-04-30 14:43:37 +02:00
Martin Hurton
19c62b93fc Define i_properties interface
- copy and move message operations are updated to maintain proper
  reference count of properties object
- zmq_msg_gets updated to use i_properties interface to fetch property
  value
- setter/getter added to msg_t class
2014-04-30 14:20:29 +02:00
Martin Hurton
f81a1304ff Update function prototype for zmq_msg_gets ()
Added modifiers reflect the following properties:
- zmq_msg_gets () does not mutate property parameter
- zmq_msg_gets () returns a pointer to memory the caller should not
  modify
2014-04-30 13:27:06 +02:00
Martin Hurton
724b2bb844 Add pointer to properties into message structure 2014-04-29 22:37:31 +02:00
Pieter Hintjens
39ccfea036 Added more scaffolding for security
- additional messages to help people debugging security errors
2014-04-29 22:21:58 +02:00