mirror of
https://github.com/zeromq/libzmq.git
synced 2025-03-17 08:34:00 +00:00
Merge pull request #46 from hintjens/master
Fixed build regression #449
This commit is contained in:
commit
c391966fbb
@ -1,12 +1,15 @@
|
||||
MAN3 = zmq_bind.3 zmq_close.3 zmq_connect.3 zmq_proxy.3 \
|
||||
MAN3 = zmq_bind.3 zmq_unbind.3 zmq_connect.3 zmq_disconnect.3 zmq_close.3 \
|
||||
zmq_ctx_new.3 zmq_ctx_destroy.3 zmq_ctx_get.3 zmq_ctx_set.3 \
|
||||
zmq_init.3 zmq_term.3 \
|
||||
zmq_msg_close.3 zmq_msg_copy.3 zmq_msg_data.3 zmq_msg_init.3 \
|
||||
zmq_msg_init_data.3 zmq_msg_init_size.3 zmq_msg_move.3 zmq_msg_size.3 \
|
||||
zmq_msg_init.3 zmq_msg_init_data.3 zmq_msg_init_size.3 \
|
||||
zmq_msg_move.3 zmq_msg_copy.3 zmq_msg_size.3 zmq_msg_data.3 zmq_msg_close.3 \
|
||||
zmq_msg_send.3 zmq_msg_recv.3 \
|
||||
zmq_poll.3 zmq_recv.3 zmq_send.3 zmq_setsockopt.3 zmq_socket.3 \
|
||||
zmq_socket_monitor.3 zmq_strerror.3 zmq_version.3 zmq_getsockopt.3 zmq_errno.3 \
|
||||
zmq_sendmsg.3 zmq_recvmsg.3 zmq_msg_get.3 zmq_msg_set.3 zmq_msg_more.3
|
||||
zmq_send.3 zmq_recv.3 \
|
||||
zmq_msg_get.3 zmq_msg_set.3 zmq_msg_more.3 \
|
||||
zmq_getsockopt.3 zmq_setsockopt.3 \
|
||||
zmq_socket.3 zmq_socket_monitor.3 zmq_poll.3 \
|
||||
zmq_errno.3 zmq_strerror.3 zmq_version.3 zmq_proxy.3 \
|
||||
zmq_sendmsg.3 zmq_recvmsg.3 zmq_init.3 zmq_term.3
|
||||
|
||||
MAN7 = zmq.7 zmq_tcp.7 zmq_pgm.7 zmq_epgm.7 zmq_inproc.7 zmq_ipc.7
|
||||
|
||||
MAN_DOC = $(MAN1) $(MAN3) $(MAN7)
|
||||
|
@ -26,6 +26,8 @@ Specifies that the operation should be performed in non-blocking mode. If there
|
||||
are no messages available on the specified 'socket', the _zmq_recvmsg()_
|
||||
function shall fail with 'errno' set to EAGAIN.
|
||||
|
||||
NOTE: this API method is deprecated in favor of zmq_msg_recv(3).
|
||||
|
||||
|
||||
Multi-part messages
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -36,6 +36,7 @@ NOTE: A successful invocation of _zmq_sendmsg()_ does not indicate that the
|
||||
message has been transmitted to the network, only that it has been queued on
|
||||
the 'socket' and 0MQ has assumed responsibility for the message.
|
||||
|
||||
NOTE: this API method is deprecated in favor of zmq_msg_send(3).
|
||||
|
||||
Multi-part messages
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -371,11 +371,8 @@ ZMQ_ROUTER_MANDATORY: accept only routable messages on ROUTER sockets
|
||||
|
||||
Sets the 'ROUTER' socket behavior when an unroutable message is encountered. A
|
||||
value of `0` is the default and discards the message silently when it cannot be
|
||||
routed. A value of `1` returns an 'EAGAIN' error code if the message cannot be
|
||||
routed.
|
||||
|
||||
Note: Setting this socket option may have unpredictable effects on reactor-type
|
||||
libraries that assume EAGAIN will only be sent in HWM-type situations.
|
||||
routed. A value of `1` returns an 'EHOSTUNREACH' error code if the message
|
||||
cannot be routed.
|
||||
|
||||
[horizontal]
|
||||
Option value type:: int
|
||||
|
@ -261,6 +261,7 @@ ZMQ_EXPORT int zmq_msg_set (zmq_msg_t *msg, int option, int optval);
|
||||
|
||||
/* Deprecated aliases */
|
||||
#define ZMQ_NOBLOCK ZMQ_DONTWAIT
|
||||
#define ZMQ_FAIL_UNROUTABLE ZMQ_ROUTER_MANDATORY
|
||||
#define ZMQ_ROUTER_BEHAVIOR ZMQ_ROUTER_MANDATORY
|
||||
|
||||
/******************************************************************************/
|
||||
|
@ -19,13 +19,39 @@
|
||||
*/
|
||||
|
||||
#include <stddef.h>
|
||||
#include "../include/zmq.h"
|
||||
#include "platform.hpp"
|
||||
#include "proxy.hpp"
|
||||
#include "socket_base.hpp"
|
||||
#include "likely.hpp"
|
||||
#include "err.hpp"
|
||||
|
||||
#if defined ZMQ_FORCE_SELECT
|
||||
#define ZMQ_POLL_BASED_ON_SELECT
|
||||
#elif defined ZMQ_FORCE_POLL
|
||||
#define ZMQ_POLL_BASED_ON_POLL
|
||||
#elif defined ZMQ_HAVE_LINUX || defined ZMQ_HAVE_FREEBSD ||\
|
||||
defined ZMQ_HAVE_OPENBSD || defined ZMQ_HAVE_SOLARIS ||\
|
||||
defined ZMQ_HAVE_OSX || defined ZMQ_HAVE_QNXNTO ||\
|
||||
defined ZMQ_HAVE_HPUX || defined ZMQ_HAVE_AIX ||\
|
||||
defined ZMQ_HAVE_NETBSD
|
||||
#define ZMQ_POLL_BASED_ON_POLL
|
||||
#elif defined ZMQ_HAVE_WINDOWS || defined ZMQ_HAVE_OPENVMS ||\
|
||||
defined ZMQ_HAVE_CYGWIN
|
||||
#define ZMQ_POLL_BASED_ON_SELECT
|
||||
#endif
|
||||
|
||||
// On AIX platform, poll.h has to be included first to get consistent
|
||||
// definition of pollfd structure (AIX uses 'reqevents' and 'retnevents'
|
||||
// instead of 'events' and 'revents' and defines macros to map from POSIX-y
|
||||
// names to AIX-specific names).
|
||||
#if defined ZMQ_POLL_BASED_ON_POLL
|
||||
#include <poll.h>
|
||||
#endif
|
||||
|
||||
// zmq.h must be included *after* poll.h for AIX to build properly
|
||||
#include "../include/zmq.h"
|
||||
|
||||
|
||||
int zmq::proxy (
|
||||
class socket_base_t *frontend_,
|
||||
class socket_base_t *backend_,
|
||||
|
@ -162,7 +162,7 @@ int zmq::router_t::xsend (msg_t *msg_, int flags_)
|
||||
else
|
||||
if (mandatory) {
|
||||
more_out = false;
|
||||
errno = EAGAIN;
|
||||
errno = EHOSTUNREACH;
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user