summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-25'master' will become 2.1.x releaseMartin Sustrik
2010-08-25Update ChangeLog for v2.0.8Martin Lucina
2010-08-25Basic documentation for XREQ/XREP socket typesMartin Lucina
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-25Updated NEWS for stable 2.0.8 releasePieter Hintjens
2010-08-25Updated NEWS for stable 2.0.8 releasePieter Hintjens
2010-08-25Updated NEWS for stable 2.0.8 releasePieter Hintjens
2010-08-25Update version number to 2.0.8Martin Lucina
2010-08-25zmq_stopwatch_stop: Don't return EFAULTMartin Lucina
Function returning unsigned long int cannot return (-1)
2010-08-21Added calls to zmq_msg_close in examplesPieter Hintjens
2010-08-21Fixed example for multipart zmq_recv()Pieter Hintjens
2010-08-20Merge branch '46_device_robustness'Pieter Hintjens
2010-08-19Fixed git URL in READMEPieter Hintjens
2010-08-18documentation leftover from v2.0.6 cleaned in zmq(7)Martin Sustrik
2010-08-11Removed wip zmq_deviced from masterPieter Hintjens
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-11Fixed (un)signed type errors in get/setsockopt manualPieter Hintjens
2010-08-10Modified zmq_tcp(7) to emphasize wildcard interfacesPieter Hintjens
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-06Merge branch 'master' of github.com:zeromq/zeromq2Martin Lucina
2010-08-06Fix uninitialized use of nbytes in signaler fixMartin Lucina
2010-08-06Merge branch 'master' of github.com:zeromq/zeromq2Pieter Hintjens
2010-08-05Merge branch 'master' of github.com:zeromq/zeromq2Martin 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-05Fixed MSVC project for PULL/PUSHPieter Hintjens
2010-08-04Small improvements to zmq_device(3) pagePieter Hintjens
* Clarified broker model and proxy model * Added example of proxy model
2010-08-04Further cleanups on reference manualPieter Hintjens
- fixed unwrapped text in new man pages - fixed over-long lines in older pages, where possible - removed reference to old standalong devices from index page - added refernce to new zmq_device[3] documented from index page - some minor spelling corrections
2010-08-04Removed empty man pages for old standalone devicesPieter Hintjens
2010-08-04Reverting 'clean' change to MakefilePieter Hintjens
2010-08-04Various changes to documentation project:Pieter Hintjens
* Added documentation for zmq_deviced, which we're developing * Created consistent page footer in documentation template * Page footer notes doc authors and copyright statement
2010-08-04Added clean target that deletes generated man pagesPieter Hintjens
2010-08-04Added man page for the zmq_device methodPieter Hintjens
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.
2010-07-30XREQ: Correct behaviour on hitting ZMQ_HWMMartin Lucina
This reverts part of commit 84e0c7991a9b316ed571533abc628cc1175750a3 to get correct ZMQ_HWM semantics with XREQ sockets: When sending a message to an XREQ socket, the underlying pipe is selected in a round-robin fashion. If an underlying pipe is full it is skipped. If there are no underlying pipes, or all underlying pipes are full then zmq_send() shall block or return EAGAIN, depending on whether or not the call is blocking. Messages are never dropped.
2010-07-26perf: fix typoMartin Hurton
2010-07-24pipe: check_read() should check for message delimiterMartin Hurton
2010-07-24Make sure lwm > 0 when hwm > 0Martin Hurton
2010-07-21Issue 42 - getaddrinfo() failsMartin Lucina
2010-07-19EHOSTUNREACH is a valid return value from recv()Martin Sustrik
2010-07-13minor comment clarificationMartin Sustrik
2010-07-13devices exit in case of context terminationMartin Sustrik
2010-07-10Fix identity generation for transient inproc connectionsMartin Hurton