summaryrefslogtreecommitdiff
path: root/src/zmq_engine.cpp
diff options
context:
space:
mode:
authorMartin Sustrik <sustrik@fastmq.commkdir>2010-01-15 14:11:39 +0100
committerMartin Sustrik <sustrik@fastmq.commkdir>2010-01-15 14:11:39 +0100
commit2bb57ac57ace37203c505ff17147210feca34d73 (patch)
treef28f6479436fa59101228cb5b3050948ff010ab3 /src/zmq_engine.cpp
parent56c369272c279224562d11b0a66590ac7826f4f3 (diff)
ZMQII-39: Implement IPC transport
Diffstat (limited to 'src/zmq_engine.cpp')
-rw-r--r--src/zmq_engine.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/zmq_engine.cpp b/src/zmq_engine.cpp
index a79c0bd..dace6ae 100644
--- a/src/zmq_engine.cpp
+++ b/src/zmq_engine.cpp
@@ -27,7 +27,8 @@
#include "err.hpp"
zmq::zmq_engine_t::zmq_engine_t (io_thread_t *parent_, fd_t fd_,
- const options_t &options_, bool reconnect_, const char *address_) :
+ const options_t &options_, bool reconnect_,
+ const char *protocol_, const char *address_) :
io_object_t (parent_),
inpos (NULL),
insize (0),
@@ -39,8 +40,10 @@ zmq::zmq_engine_t::zmq_engine_t (io_thread_t *parent_, fd_t fd_,
options (options_),
reconnect (reconnect_)
{
- if (reconnect)
+ if (reconnect) {
+ protocol = protocol_;
address = address_;
+ }
// Initialise the underlying socket.
int rc = tcp_socket.open (fd_, options.sndbuf, options.rcvbuf);
@@ -166,7 +169,7 @@ void zmq::zmq_engine_t::error ()
inout->get_io_thread (), inout->get_owner (),
options, inout->get_ordinal (), true);
zmq_assert (reconnecter);
- reconnecter->set_address (address.c_str ());
+ reconnecter->set_address (protocol.c_str(), address.c_str ());
}
inout->detach (reconnecter);