mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-26 14:51:01 +08:00
058ad60b9a
Problem: reimplemented zmq_proxy_steerable control socket type is not backwards compatible - replies are always sent. In the past, zmq_proxy_steerable never sent a reply for commands that weren't STATISTICS, so only really worked with PAIR and didn't work at all with REP. Now it only supports REP and PAIR semantics changed. This breaks compatibility with PAIR in a subtle and slightly annoying way if HWMs are hit without reading the replies. Solution: Add a check to send the empty reply only for REP control sockets. This restores backwards compatibility, and supports REP, PAIR, and SUB (for non-reply commands). I had no knowledge of the pre-MPL-2.0 implementation. This fix is based on docs and prior API usage. I contribute this under MPL-2.0.