Problem: ZMQ_CONNECT_ROUTING_ID can be assigned to incoming socket connection (Issue #3191)

Solution: Add an identifier parameter for local attach to zmq::socket_base_t::attach_pipe
This commit is contained in:
Michael Vilim
2018-07-24 13:48:43 -05:00
parent cc4d03fa1c
commit 8a16fef3cc
35 changed files with 241 additions and 51 deletions

View File

@@ -52,7 +52,9 @@ class router_t : public routing_socket_base_t
~router_t ();
// Overrides of functions from socket_base_t.
void xattach_pipe (zmq::pipe_t *pipe_, bool subscribe_to_all_);
void xattach_pipe (zmq::pipe_t *pipe_,
bool subscribe_to_all_,
bool locally_initiated_);
int xsetsockopt (int option_, const void *optval_, size_t optvallen_);
int xsend (zmq::msg_t *msg_);
int xrecv (zmq::msg_t *msg_);
@@ -69,7 +71,7 @@ class router_t : public routing_socket_base_t
private:
// Receive peer id and update lookup map
bool identify_peer (pipe_t *pipe_);
bool identify_peer (pipe_t *pipe_, bool locally_initiated);
// Fair queueing object for inbound pipes.
fq_t _fq;