summaryrefslogtreecommitdiff
path: root/src/socket_base.cpp
diff options
context:
space:
mode:
authorMartin Sustrik <sustrik@250bpm.com>2011-09-15 10:00:23 +0200
committerMartin Sustrik <sustrik@250bpm.com>2011-09-15 10:00:23 +0200
commitf78d9b6bfca13e298c29fadabbbc870b37a0a573 (patch)
tree89b110d56183ef2958b894c26dfe2e5fea980537 /src/socket_base.cpp
parent78b02d142e82015a2146b7d40f7e0a729ad0e89b (diff)
Session class separated into socket-type-specific sessions
This is a preliminary patch allowing for socket-type-specific functionality in the I/O thread. For example, message format can be checked asynchronously and misbehaved connections dropped straight away. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Diffstat (limited to 'src/socket_base.cpp')
-rw-r--r--src/socket_base.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/socket_base.cpp b/src/socket_base.cpp
index 4209a69..a4d89db 100644
--- a/src/socket_base.cpp
+++ b/src/socket_base.cpp
@@ -39,7 +39,7 @@
#include "vtcp_listener.hpp"
#include "tcp_connecter.hpp"
#include "io_thread.hpp"
-#include "session.hpp"
+#include "session_base.hpp"
#include "config.hpp"
#include "clock.hpp"
#include "pipe.hpp"
@@ -480,9 +480,9 @@ int zmq::socket_base_t::connect (const char *addr_)
}
// Create session.
- session_t *session = new (std::nothrow) session_t (
- io_thread, true, this, options, protocol.c_str (), address.c_str ());
- alloc_assert (session);
+ session_base_t *session = session_base_t::create (io_thread, true, this,
+ options, protocol.c_str (), address.c_str ());
+ errno_assert (session);
// Create a bi-directional pipe.
object_t *parents [2] = {this, session};