mirror of
https://github.com/zeromq/libzmq.git
synced 2025-10-29 12:18:04 +01:00
Problem: ZMQ_TCP_RECV_BUFFER/SEND_BUFFER are redundant
These options are confusing and redundant. Their names suggest they apply to the tcp:// transport, yet they are used for all stream protocols. The methods zmq::set_tcp_receive_buffer and zmq::set_tcp_send_buffer don't use these values at all, they use ZMQ_SNDBUF and ZMQ_RCVBUF. Solution: merge these new options into ZMQ_SNDBUF and ZMQ_RCVBUF. This means defaulting these two options to 8192, and removing the new options. We now have ZMQ_SNDBUF and ZMQ_RCVBUF being used both for TCP socket control, and for input/output buffering. Note: the default for SNDBUF and RCVBUF are otherwise 4096.
This commit is contained in:
@@ -42,8 +42,8 @@ zmq::options_t::options_t () :
|
||||
recovery_ivl (10000),
|
||||
multicast_hops (1),
|
||||
multicast_maxtpdu (1500),
|
||||
sndbuf (-1),
|
||||
rcvbuf (-1),
|
||||
sndbuf (8192),
|
||||
rcvbuf (8192),
|
||||
tos (0),
|
||||
type (-1),
|
||||
linger (-1),
|
||||
@@ -66,8 +66,6 @@ zmq::options_t::options_t () :
|
||||
tcp_keepalive_cnt (-1),
|
||||
tcp_keepalive_idle (-1),
|
||||
tcp_keepalive_intvl (-1),
|
||||
tcp_recv_buffer_size (8192),
|
||||
tcp_send_buffer_size (8192),
|
||||
mechanism (ZMQ_NULL),
|
||||
as_server (0),
|
||||
gss_plaintext (false),
|
||||
@@ -298,20 +296,6 @@ int zmq::options_t::setsockopt (int option_, const void *optval_,
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_TCP_RECV_BUFFER:
|
||||
if (is_int && (value > 0) ) {
|
||||
tcp_recv_buffer_size = static_cast<unsigned int>(value);
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_TCP_SEND_BUFFER:
|
||||
if (is_int && (value > 0) ) {
|
||||
tcp_send_buffer_size = static_cast<unsigned int>(value);
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_IMMEDIATE:
|
||||
if (is_int && (value == 0 || value == 1)) {
|
||||
immediate = value;
|
||||
@@ -866,20 +850,6 @@ int zmq::options_t::getsockopt (int option_, void *optval_, size_t *optvallen_)
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_TCP_SEND_BUFFER:
|
||||
if (is_int) {
|
||||
*value = tcp_send_buffer_size;
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_TCP_RECV_BUFFER:
|
||||
if (is_int) {
|
||||
*value = tcp_recv_buffer_size;
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case ZMQ_MECHANISM:
|
||||
if (is_int) {
|
||||
*value = mechanism;
|
||||
|
||||
Reference in New Issue
Block a user