summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-09-01Merge branch 'maint'Martin Sustrik
* maint: Erasure of retired fd's in select.cpp causes an assertion in MSVC 2008 STL
2010-09-01Erasure of retired fd's in select.cpp causes an assertion in MSVC 2008 STLMikael Helbo Kjær
I was hitting an issue with an SCL enabled STL library in connection with the way select_t::loop was erasing retired fd's. The problem as identified by the SCL assertion was that by the time the iterator given to the erase method was called it was considered invalid by the library. I am not sure this isn't just a "quirk" of the MSVC STL library as the other code looks valid to me as well.
2010-09-01conflicts resolvedMartin Sustrik
2010-09-01sys transport introdced; inproc://log moved to sys://logMartin Sustrik
2010-09-01MSVC build fixedMartin Sustrik
2010-09-01context creates an inproc endpoint ('inproc://log') to distribute 0MQ's log ↵Martin Sustrik
messages
2010-09-01assert when pipe attaches to PUB socket in process of termination -- fixedMartin Sustrik
2010-09-01pipe being attached to the PAIR socket during its termination process is ↵Martin Sustrik
immediately asked to terminate itself
2010-09-01hangup when closing socket with no pipes attached -- fixedMartin Sustrik
2010-08-31naming cleanup: yarray->arrayMartin Sustrik
2010-08-31naming cleanup: zmq_encoder->encoder, zmq_decoder->decoderMartin Sustrik
2010-08-30OSX build fixed -- semaphore replaced by mutexMartin Sustrik
2010-08-30Issue 54 - socket_base.cpp:162 comparison errorMartin Sustrik
2010-08-28prefix_tree_t renamed to trie_tMartin Sustrik
2010-08-28swap's block size made into a compile-time parameterMartin Sustrik
2010-08-28msg_store_t renamed to swap_tMartin Sustrik
2010-08-28refactoring of pipe/swap interactionMartin Sustrik
2010-08-28terminology unified: revive->activateMartin Sustrik
2010-08-28bug in pipe deactivation fixedMartin Sustrik
2010-08-28zmq_poll: account for the fact that ZMQ_FD is edge-triggeredMartin Sustrik
2010-08-27assert on malformed messagesDhammika Pathirana
2010-08-27zmq_poll returns prematurely even if infinite timeout is set - fixedMartin Sustrik
2010-08-27forwarder and streamer devices handle multi-part messages correctlyJon Dyte
2010-08-26improved null checking in zmq_termIvo Danihelka
2010-08-25MSVC build fixedMartin Sustrik
2010-08-25elementary fixes to the named sessionMartin Sustrik
2010-08-25connecter object unregisters its fd correctlyMartin Sustrik
2010-08-25listener object unregisters its fd correctlyMartin Sustrik
2010-08-25sessions created by listerner are correctly shut downMartin Sustrik
2010-08-25added ZMQ_MAKE_VALGRIND_HAPPY compile-time optionMartin Sustrik
2010-08-25engine leak fixed; pgm compilation fixedMartin Sustrik
2010-08-25one more dezombification bug fixedMartin Sustrik
2010-08-25dezombification procedure fixedMartin Sustrik
2010-08-25engine termination on disconnect fixedMartin Sustrik
2010-08-25I/O object hierarchy implementedMartin Sustrik
2010-08-25zmq_poll(): Fix some corner casesMartin Lucina
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-25zmq_poll(): Rewrite to use ZMQ_FD/ZMQ_EVENTS pt2Martin Lucina
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-25Fix whitespaceMartin Lucina
Dunno where those <TAB>s came from...
2010-08-25zmq_poll(): Rewrite to use ZMQ_FD/ZMQ_EVENTS pt1Martin Lucina
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-25REP socket layered on top of XREP socketMartin Sustrik
2010-08-25REQ socket implementation is layered on top of XREQMartin Sustrik
2010-08-25Destruction of session is delayed till both in & out pipes are closedMartin Sustrik
2010-08-25WIP: Socket migration between threads, new zmq_close() semanticsMartin Sustrik
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-25zmq_stopwatch_stop: Don't return EFAULTMartin Lucina
Function returning unsigned long int cannot return (-1)
2010-08-1146 - Devices vulnerable to invalid messagesPieter Hintjens
http://github.com/zeromq/zeromq2/issues#issue/46 Invalid messages are now discarded silently, instead of causing an assertion failure.
2010-08-08Added error checking (EFAULT) for null argumentsPieter Hintjens
* Fixed zmq_term, zmq_socket, zmq_close, zmq_setsockopt, * zmq_getsockopt, zmq_bind, zmq_connect, zmq_send, * zmq_recv, zmq_poll, zmq_device, zmq_stopwatch_stop * Updated Reference Manual for these methods
2010-08-07Added not-null assertions on pointer arguments in C API functionsPieter Hintjens
* zmq_term * zmq_socket * zmq_close * zmq_setsockopt * zmq_getsockopt * zmq_bind * zmq_connect * zmq_send * zmq_recv * zmq_poll * zmq_device * zmq_stopwatch_stop
2010-08-06Fix uninitialized use of nbytes in signaler fixMartin Lucina
2010-08-05zmq::signaler_t: Restart syscalls on EINTRMartin Lucina
This patch restarts the send() or recv() inside zmq::signaler_t if the call fails due to EINTR.
2010-08-04Renamed ZMQ_UPSTREAM to ZMQ_PULL, and ZMQ_DOWNSTREAM to ZMQ_PUSH. Left the oldPieter Hintjens
definitions as aliases, to be removed in release 3.0. Also renamed the source files implementing these two socket types. This change does not break existing applications nor bindings, but allows us to fix the documentation and user guide now, rather than keeping the old (confusing) names.