summaryrefslogtreecommitdiffstats
path: root/src/Net/Listener.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Net/Listener.h')
-rw-r--r--src/Net/Listener.h16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/Net/Listener.h b/src/Net/Listener.h
index 0833cdf..903c907 100644
--- a/src/Net/Listener.h
+++ b/src/Net/Listener.h
@@ -29,29 +29,23 @@
namespace Mad {
namespace Net {
-// TODO XXX Thread-safeness XXX
class Listener : boost::noncopyable {
private:
- class ServerConnection : public Connection {
- public:
- friend class Listener;
-
- ServerConnection(boost::asio::ssl::context &sslContext) : Connection(sslContext) {}
- };
+ boost::mutex mutex;
std::string x905CertFile, x905KeyFile;
boost::asio::ip::tcp::endpoint address;
boost::asio::ip::tcp::acceptor acceptor;
boost::asio::ssl::context sslContext;
- std::map<boost::shared_ptr<ServerConnection>, std::pair<boost::signals::connection, boost::signals::connection> > connections;
+ std::map<boost::shared_ptr<Connection>, std::pair<boost::signals::connection, boost::signals::connection> > connections;
boost::signal1<void, boost::shared_ptr<Connection> > signal;
- void handleAccept(const boost::system::error_code &error, boost::shared_ptr<ServerConnection> con);
+ void handleAccept(const boost::system::error_code &error, boost::shared_ptr<Connection> con);
- void handleConnect(boost::shared_ptr<ServerConnection> con);
- void handleDisconnect(boost::shared_ptr<ServerConnection> con);
+ void handleConnect(boost::shared_ptr<Connection> con);
+ void handleDisconnect(boost::shared_ptr<Connection> con);
public:
Listener(const std::string &x905CertFile0, const std::string &x905KeyFile0,