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>
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>
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>
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>
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>
change two declarations in headers to form f(void); instead of f();
which eliminates the warnings when compiling against zeromq
Signed-off-by: MinRK <benjaminrk@gmail.com>
For very high-speed message systems, the memory used for recovery can get to
be very large. The corrent limitation on that reduction is the ZMQ_RECOVERY_IVL
of 1 sec. I added in an additional option ZMQ_RECOVERY_IVL_MSEC, which is the
Recovery Interval in milliseconds. If used, this will override the previous
one, and allow you to set a sub-second recovery interval. If not set, the
default behavior is to use ZMQ_RECOVERY_IVL.
Signed-off-by: Bob Beaty <rbeaty@peak6.com>
- Added a macro for checking clang compiler
- Moved basic compiler checks to a macro
- Added a macro for checking if compiler supports a flag
- Added --enable-debug flag
- Added a macro for running normal autoconf check with compiler flags
- Added a macro for checking for verbose flag for different compilers (-Wall)
- Added a macro for turning on strict standards compliance
- Added a macro for turning warnings to errors
- Added a macro for checking if compiler supports given pragma
- Most of the flags now go through checks if the compilers supports them
rather than enumerating different compilers
- Added DSO symbol visibility for sun compiler
- Enabled verbose mode for sun compiler
- Fixed build for ICC 12.x by adding -wd279 to size_t checks
- Removed pkg-config checks as those don't seem to be used anywhere
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
On systems using GCC 4.0 or newer which support symbol visibility in shared
libraries, use -fvisibility=hidden and only export explict API functions
defined in zmq.cpp. We do not enable -fvisibility on MinGW since this uses a
separate mechanism (__declspec).
Signed-off-by: Martin Lucina <mato@kotelna.sk>
1. ZMQ_LINGER option can be set/get
2. options are part of own_t base class rather than being declared
separately by individual objects
3. Linger option is propagated with "term" command so that the
newest value of it is used rather than the stored old one.
4. Session sets the linger timer if needed and terminates
as soon as it expires.
5. Corresponding documentation updated.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
* maint:
Makefile.am: Add missing files to distribution, improve maintainer-clean
configure.in: Extract API version from zmq.h
Added bin directory to ignore list.
Conflicts:
configure.in
include/zmq.h
* Added a version.sh and relevant changes to configure.in to extract the API
version from zmq.h at the time autogen.sh is run.
* Moved the version macros to be next to zmq_version in zmq.h and improved
the comments.
* Modified ZMQ_MAKE_VERSION to use (x) instead of plain x when expanding
macro parameters.
Signed-off-by: Martin Lucina <mato@kotelna.sk>
Macro ZMQ_VERSION represents the current version of 0MQ
Macro ZMQ_MAKE_VERSION(major,minor,patch) allows to create
a representation of the specified version.
The versions can be compared using simple <, >, ==, etc.
operators.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
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.
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.
C and C++ headers moved from bindings/ to include/, bindings/ removed
--with-c and --with-cpp options to configure removed, C and C++ now built
and installed by default