770 Commits

Author SHA1 Message Date
Martin Sustrik
6a0c323bb2 MSVC build fixed 2010-09-01 13:31:45 +02:00
Martin Sustrik
ce0972dca3 context creates an inproc endpoint ('inproc://log') to distribute 0MQ's log messages 2010-09-01 07:57:38 +02:00
Martin Sustrik
db73c76314 assert when pipe attaches to PUB socket in process of termination -- fixed 2010-09-01 07:56:04 +02:00
Martin Sustrik
aaa07613d3 pipe being attached to the PAIR socket during its termination process is immediately asked to terminate itself 2010-09-01 07:54:57 +02:00
Martin Sustrik
47c064f2ea hangup when closing socket with no pipes attached -- fixed 2010-09-01 07:35:15 +02:00
Martin Sustrik
090e460d6f naming cleanup: yarray->array 2010-08-31 21:03:34 +02:00
Martin Sustrik
f5acbb5095 naming cleanup: zmq_encoder->encoder, zmq_decoder->decoder 2010-08-31 07:01:40 +02:00
Martin Sustrik
e45583c0f2 OSX build fixed -- semaphore replaced by mutex 2010-08-30 17:04:51 +02:00
Martin Sustrik
f0a36f9994 Minor patch to zmq_cpp(7) 2010-08-30 15:28:08 +02:00
Martin Sustrik
fba90af8a7 Issue 54 - socket_base.cpp:162 comparison error 2010-08-30 12:10:40 +02:00
Martin Sustrik
68d62cfb4e MSVC build fixed 2010-08-28 14:07:26 +02:00
Guido Goldstein
0a8473dedd Added tests for transports per socket 2010-08-28 13:58:23 +02:00
Martin Sustrik
6ec783e702 prefix_tree_t renamed to trie_t 2010-08-28 13:26:19 +02:00
Martin Sustrik
beea535f9d swap's block size made into a compile-time parameter 2010-08-28 13:18:53 +02:00
Martin Sustrik
d8b975f4e7 msg_store_t renamed to swap_t 2010-08-28 13:14:45 +02:00
Martin Sustrik
d90b407115 refactoring of pipe/swap interaction 2010-08-28 13:06:58 +02:00
Martin Sustrik
42000d2c4f terminology unified: revive->activate 2010-08-28 10:15:03 +02:00
Martin Sustrik
92923cd40b bug in pipe deactivation fixed 2010-08-28 08:44:12 +02:00
Martin Sustrik
035c937ee7 zmq_poll: account for the fact that ZMQ_FD is edge-triggered 2010-08-28 07:02:22 +02:00
Guido Goldstein
67aa788577 Fixed socket states in tests 2010-08-28 06:31:40 +02:00
Guido Goldstein
4d9b046977 two tests added 2010-08-27 21:13:45 +02:00
Martin Lucina
0b76f234a2 Merge branch 'master' of github.com:zeromq/zeromq2 2010-08-27 18:41:10 +02:00
Martin Lucina
35cb1fade6 Add a basic framework for a test suite
The test suite uses the standard automake support. Tests are always built,
but run only when you do a "make check".
2010-08-27 18:35:59 +02:00
Dhammika Pathirana
98dc11843e assert on malformed messages 2010-08-27 18:06:37 +02:00
Martin Sustrik
56faac7f19 zmq_poll returns prematurely even if infinite timeout is set - fixed 2010-08-27 15:01:38 +02:00
Jon Dyte
3cb84b5cea forwarder and streamer devices handle multi-part messages correctly 2010-08-27 06:59:55 +02:00
Ivo Danihelka
43f2c6ff5b improved null checking in zmq_term 2010-08-26 12:14:53 +02:00
Martin Sustrik
b608c19c5a MSVC build fixed 2010-08-25 15:39:21 +02:00
Martin Sustrik
9b8993efb4 elementary fixes to the named session 2010-08-25 15:39:21 +02:00
Martin Sustrik
46d7055565 connecter object unregisters its fd correctly 2010-08-25 15:39:21 +02:00
Martin Sustrik
87655b0b9d listener object unregisters its fd correctly 2010-08-25 15:39:21 +02:00
Martin Sustrik
0d5f3ebbda sessions created by listerner are correctly shut down 2010-08-25 15:39:21 +02:00
Martin Sustrik
5a731e73c8 added ZMQ_MAKE_VALGRIND_HAPPY compile-time option 2010-08-25 15:39:20 +02:00
Martin Sustrik
43e34d0281 engine leak fixed; pgm compilation fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
45f83d78a5 one more dezombification bug fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
936dbf956b dezombification procedure fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
76bd6e73c3 engine termination on disconnect fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
d13933bc62 I/O object hierarchy implemented 2010-08-25 15:39:20 +02:00
Martin Lucina
ee1f1af009 zmq_poll(): Fix some corner cases
Trying to optimize out the case where items_[i]. events is 0 would
result in a bogus pollfds[i]. Similarly in the select()-based impl,
while not strictly necessary it's better to get ZMQ_FD even if
events is 0 since that detects ETERM and friends.
2010-08-25 15:39:20 +02:00
Martin Lucina
a85d1e51bf zmq_poll(): Rewrite to use ZMQ_FD/ZMQ_EVENTS pt2
Rewrite the select()-based zmq_poll() implementation to use
ZMQ_FD and ZMQ_EVENTS.

Also fix some corner cases: We should not pollute revents with
unrequested events, and we don't need to poll on ZMQ_FD at all
if a pollitem with no events set was passed in.
2010-08-25 15:39:20 +02:00
Martin Lucina
6b1ca2cb1e Fix whitespace
Dunno where those <TAB>s came from...
2010-08-25 15:39:20 +02:00
Martin Lucina
cd12508418 zmq_poll(): Rewrite to use ZMQ_FD/ZMQ_EVENTS pt1
Rewrite zmq_poll() to use ZMQ_FD and ZMQ_EVENTS introduced on the
wip-shutdown branch. Only do the poll()-based version of zmq_poll (), the
select()-based version will not compile at the moment.
2010-08-25 15:39:20 +02:00
Martin Sustrik
eb7b8a413a REP socket layered on top of XREP socket 2010-08-25 15:39:20 +02:00
Martin Sustrik
3e97c0fef4 REQ socket implementation is layered on top of XREQ 2010-08-25 15:39:20 +02:00
Martin Sustrik
f77edfce26 Destruction of session is delayed till both in & out pipes are closed 2010-08-25 15:39:20 +02:00
Martin Sustrik
05d908492d WIP: Socket migration between threads, new zmq_close() semantics
Sockets may now be migrated between OS threads; sockets may not be used by
more than one thread at any time. To migrate a socket to another thread the
caller must ensure that a full memory barrier is called before using the
socket from the target thread.

The new zmq_close() semantics implement the behaviour discussed at:

http://lists.zeromq.org/pipermail/zeromq-dev/2010-July/004244.html

Specifically, zmq_close() is now deterministic and while it still returns
immediately, it does not discard any data that may still be queued for
sending. Further, zmq_term() will now block until all outstanding data has
been sent.

TODO: Many bugs have been introduced, needs testing. Further, SO_LINGER or
an equivalent mechanism (possibly a configurable timeout to zmq_term())
needs to be implemented.
2010-08-25 15:39:20 +02:00
Martin Sustrik
b7e0fa972f 'master' will become 2.1.x release 2010-08-25 15:38:43 +02:00
Martin Lucina
1e089f7163 Update ChangeLog for v2.0.8 2010-08-25 13:11:20 +02:00
Martin Lucina
c9076c5d8b Basic documentation for XREQ/XREP socket types
Add some basic documentation for XREQ/XREP socket types, including
a brief description of the most common use case (REQ -> XREP) and (XREQ ->
REP).
2010-08-25 12:50:16 +02:00
Pieter Hintjens
6d275a8788 Updated NEWS for stable 2.0.8 release 2010-08-25 12:09:55 +02:00