summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2011-03-31Upstream the openpgm build fixes. Add DSO symbol visibility to OpenPGM buildsMikko Koppanen
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2011-03-27Comments improvementMartin Sustrik
related to fairness while reading/writing large messages Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-27zmq_recv() returns size of the message even if it's truncatedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-26Memory leak in zmq_recv fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-26ZMQ_NOBLOCK renamed ZMQ_DONTWAITMartin Sustrik
Done because of POSIX compliance Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_HWM split into ZMQ_SNDHWM and ZMQ_RCVHWMMartin Sustrik
These new options allow to control the maximum size of the inbound and outbound message pipe separately. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_HWM type changed to intMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_RATE and ZMQ_RECOVERY_IVL types cahnged to intMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_EVENTS type changed to intMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_RCVMORE type changed to intMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_SNDBUF and ZMQ_RCVBUF type changed to intMartin Sustrik
This mimics POSIX specification. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24ZMQ_RECOVERY_IVL and ZMQ_RECOVERY_IVL_MSEC reconciledMartin Sustrik
There's only one option now -- ZMQ_RECOVRY_IVL -- and it's measured in milliseconds. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24SWAP functionality removedMartin Sustrik
On-disk storage should be implemented in devices rather than in 0MQ core. 0MQ is a networking library and there's no point in storing network buffers on disk. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24send/recv was changed to send/recv/sendmsg/recvmsgMartin Sustrik
send/recv now complies with POSIX by using raw buffers instead of message objects and by returning number of bytes sent/recvd instead of 0/-1. The return value is changed accordingly for sendmsg and recvmsg. Note that related man pages will be fixed in a separate patch. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-24C++ binding removed from the coreMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-23zmq_device removedMartin Sustrik
Devices are basically applications on top of 0MQ stack. They should reside in separate libraties. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-23ZMQ_MCAST_LOOP removedMartin Sustrik
Multicast loopback is not a real multicast, rather a kernel-space simulation. Moreover, it tends to be rather unreliable and lossy. Removing the option will force users to use transports better suited for the job, such as inproc or ipc. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-23Timeout in zmq_poll is in millisecondsMartin Sustrik
The old timeout in microsecond haven't been compliant with POSIX and was impractical at the same time. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-20Message atomicity bug in load-balancer fixedMartin Sustrik
If the peer getting the message have disconnected in the middle of multiplart message, the remaining part of the message went to a different peer. This patch fixes the issue. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-20Message atomicity problem solved in PUB socketMartin Sustrik
When new peer connects to a PUB socket while it is in the middle of sending of multi-part messages, it gets just the remaining part of the message, i.e. message atomicity is broken. This patch drops the tail part of the message and starts sending to the peer only when new message is started. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-16Incorrect errno reported from tcp_listener_t::set_addressMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-16Duplicate identities now checked with zmq_connectMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-16reset socket state when identity message cannot be written to xrepJon Dyte
Signed-off-by: Jon Dyte <jon@totient.co.uk>
2011-03-15Dead code removed from named_session.cppMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-14FreeBSD complation error fixedMartin Sustrik
There was an error in pgm_receiver wrt strict aliasing. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-14Remove obsolete assert from pgm_socket.cppMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-09Windows build fixedMartin Sustrik
Compilation of ip.cpp have failed because EPROTONOSUPPORT was undefined. Including zmq.h should help as the error code is defined there. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-08Different fixed to make OpenVMS port work.Brett Cameron
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-03Bug caused by interaction of REQ/REP routing and HWM fixed.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-02The copyrights in file headers updated.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-02ZMQ_MAXMSGSIZE option addedMartin Sustrik
The new option allows user to guard against peers sending oversized messages. Connection to peer sending oversized message is dropped. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-01Explicit identities bug in inproc transport fixed.Martin Sustrik
The identity of bound socket was not used. Instead, transient identity was generated. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-26Memory leak in PUB/XPUB sockets fixed.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-25Socket with no owner objects is deallocated immediatelyMartin Sustrik
Till now the deallocation of such socket was delayed till zmq_term() thus creating a "leak". Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-23Incorrect PGM sender/receiver creation fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-22Added explicit error message in case of memory exhaustionMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-21Fix for memory leak caused by long identitiesMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-21Computation of buffer size for PGM fixed.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-18Fix MSVC and SunStudio builds with OpenPGMMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-18Logging of duplicit identities addedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-17Init object is child of listenerMartin Sustrik
This means that all the handshaking while accepting incoming connection is done exclusively in I/O threads, thus it won't overload the application thread's mailbox. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-17Add delay before reconnectingMartin Sustrik
So far ZMQ_RECONNECT_IVL delay was used only when TCP connect failed. Now it is used even if connect succeeds and the peer closes the connection afterwards. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-13Build problem with OpenPGM and MSVC fixedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-12Fixed win32 issue with WSAStartupPieter Hintjens
- ctx constructor was calling mailbox_t constructor implicitly - moved WSAStartup and WSACleanup to be outside constructor/destructor Signed-off-by: Pieter Hintjens <ph@imatix.com>
2011-02-09Reaper thread waits for commands rather them retrieving them periodicallyMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-09Initial implementation of reaper thread.Martin Sustrik
Reaper thread destroys the socket asynchronously. zmq_term() can be interrupted by a signal (EINTR). zmq_socket() will return ETERM after zmq_term() was called. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-08max_sockets honoured preciselyMartin Sustrik
The internal log socket was subtracted from the number of available sockets. So, if max_sockets was set to 100, you could create only 99 sockets. Fixed. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-08zmq_poll with no fds behaves decentlyMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-03Don't use RLIMIT_NOFILES in devpoll_t.Martin Sustrik
The patch allows for running 0MQ on Solaris and HP-UX even though ulimit for max number of file descriptors is set to unlimited. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-02-03RLIMIT_NOFILE not used in poll_t anymoreMartin Sustrik
The problem was that RLIMIT_NOFILE can be set to RLIM_INIFINITY (and that appears to be default on AIX) which caused 0MQ to fail. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>