42 identity_sent (false),
88 outpipes_t::iterator it;
90 if (it->second.pipe == pipe_)
95 it->second.active =
true;
113 outpipes_t::iterator it =
outpipes.find (identity);
118 it->second.
active =
false;
133 int rc = msg_->
close ();
152 if (msg_->
size () == 0) {
154 int rc = msg_->
close ();
167 int rc = msg_->
close ();
172 int rc = msg_->
init ();
181 bool is_int = (optvallen_ ==
sizeof (
int));
183 if (is_int) memcpy(&value, optval_,
sizeof (
int));
187 if (optval_ && optvallen_) {
194 if (is_int && (value == 0 || value == 1)) {
245 memcpy (msg_->
data (), identity.data (), identity.size ());
299 unsigned char buffer [5];
306 outpipes_t::iterator it =
outpipes.find (identity);
311 identity =
blob_t (buffer,
sizeof buffer);
319 outpipes_t::value_type (identity, outpipe)).second;
void identify_peer(pipe_t *pipe_)
int recvpipe(msg_t *msg_, pipe_t **pipe_)
#define ZMQ_STREAM_NOTIFY
void pipe_terminated(pipe_t *pipe_)
void put_uint32(unsigned char *buffer_, uint32_t value)
stream_t(zmq::ctx_t *parent_, uint32_t tid_, int sid)
int init_size(size_t size_)
void reset_flags(unsigned char flags_)
void xpipe_terminated(zmq::pipe_t *pipe_)
int xsetsockopt(int option_, const void *optval_, size_t optvallen_)
#define LIBZMQ_UNUSED(object)
uint32_t generate_random()
void attach(pipe_t *pipe_)
unsigned char identity[256]
std::basic_string< unsigned char > blob_t
int xrecv(zmq::msg_t *msg_)
int xsend(zmq::msg_t *msg_)
void xwrite_activated(zmq::pipe_t *pipe_)
zmq::pipe_t * current_out
void xattach_pipe(zmq::pipe_t *pipe_, bool subscribe_to_all_)
void set_flags(unsigned char flags_)
void terminate(bool delay_)
void activated(pipe_t *pipe_)
unsigned char data[max_vsm_size]
void set_identity(const blob_t &identity_)
unsigned char identity_size
void xread_activated(zmq::pipe_t *pipe_)
void set_metadata(metadata_t *metadata_)