Commit 5ab8541f authored by Marco De Marco's avatar Marco De Marco
Browse files

SSL connection first test passed

parent 0f6e54b9
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -64,8 +64,9 @@ class MetadataExporter : public TANGO_BASE_CLASS

/*----- PROTECTED REGION ID(MetadataExporter::Data Members) ENABLED START -----*/

protected:
//------------------------------------------------------------------------------
//  [Private] Class variables
//  [Protected] Class variables
//------------------------------------------------------------------------------
    //Configuration class shared pointer
    Configuration::SP m_configuration_sp;
@@ -207,6 +208,10 @@ public:

/*----- PROTECTED REGION ID(MetadataExporter::Additional Method prototypes) ENABLED START -----*/

protected:
//------------------------------------------------------------------------------
//  [Protected] Utilities methods
//------------------------------------------------------------------------------
    virtual void importExportedTables(std::vector<std::string>&,
        std::multimap<const std::string, const std::string>&)
        throw(std::invalid_argument);
+4 −4
Original line number Diff line number Diff line
@@ -53,11 +53,11 @@ void PlainServer::startAccept()
{
    DEBUG_STREAM << "PlainServer::startAccept()" << endl;

    Session::SP session_sp = PlainSession::create(m_deviceImpl_p, m_ioService_sp);
    PlainSession::SP plainSession_sp = PlainSession::create(m_deviceImpl_p, m_ioService_sp);
    
    m_acceptor_sp->async_accept(session_sp->getSocket(),
    m_acceptor_sp->async_accept(plainSession_sp->getSocket(),
        boost::bind(&PlainServer::handleAccept, this,
        session_sp, boost::asio::placeholders::error));
        plainSession_sp, boost::asio::placeholders::error));
}

}   //namespace
+4 −1
Original line number Diff line number Diff line
@@ -26,10 +26,13 @@ class PlainServer : public Server

public:
//------------------------------------------------------------------------------
//	[Public] Users methods
//	[Public] Class creation method
//------------------------------------------------------------------------------
    static Server::SP create(Tango::DeviceImpl*, Configuration::SP);

//------------------------------------------------------------------------------
//  [Protected] Incoming connection method
//------------------------------------------------------------------------------
    virtual void startAccept();
};

+2 −57
Original line number Diff line number Diff line
@@ -34,10 +34,10 @@ PlainSession::~PlainSession()
//==============================================================================
//      PlainSession::create()
//==============================================================================
Session::SP PlainSession::create(Tango::DeviceImpl* deviceImpl_p,
PlainSession::SP PlainSession::create(Tango::DeviceImpl* deviceImpl_p,
    boost::shared_ptr<boost::asio::io_service> ioService_sp)
{
    Session::SP s_sp(new PlainSession(deviceImpl_p, ioService_sp),
    PlainSession::SP s_sp(new PlainSession(deviceImpl_p, ioService_sp),
        PlainSession::Deleter());

    return s_sp;
@@ -82,27 +82,6 @@ void PlainSession::startReadRequestHeader()
                    boost::asio::placeholders::error)));
}

//==============================================================================
//      PlainSession::handleReadRequestHeader()
//==============================================================================
void PlainSession::handleReadRequestHeader(const boost::system::error_code& error)
{
    DEBUG_STREAM << "PlainSession::handleReadRequestHeader()" << endl;

    if(!error)
    {
        boost::uint32_t bodySize = decodeHeader(m_readBuff);

        DEBUG_STREAM << "PlainSession::handleReadRequestHeader() SIZE: " << bodySize << endl;

        startReadRequestBody(bodySize);
    }
    else
    {
        WARN_STREAM << "PlainSession::handleReadRequestHeader() " << error.message() << endl;
    }
}

//==============================================================================
//      PlainSession::startReadRequestBody()
//==============================================================================
@@ -122,23 +101,6 @@ void PlainSession::startReadRequestBody(boost::uint32_t bodySize)
                boost::asio::placeholders::error)));
}

//==============================================================================
//      PlainSession::handleReadRequestBody()
//==============================================================================
void PlainSession::handleReadRequestBody(const boost::system::error_code& error)
{
    DEBUG_STREAM << "PlainSession::handleReadRequestBody()" << endl;

    if(!error)
    {
        startWriteResponse();
    }
    else
    {
        WARN_STREAM << "PlainSession::handleReadRequestBody() " << error.message() << endl;
    }
}

//==============================================================================
//      PlainSession::startWriteResponse()
//==============================================================================
@@ -171,21 +133,4 @@ void PlainSession::startWriteResponse()
                boost::asio::placeholders::error)));
}

//==============================================================================
//      PlainSession::handleWriteResponse()
//==============================================================================
void PlainSession::handleWriteResponse(const boost::system::error_code& error)
{
    DEBUG_STREAM << "PlainSession::handleWriteResponse()" << endl;

    if(!error)
    {
        startReadRequestHeader();
    }
    else
    {
        WARN_STREAM << "PlainSession::handleWriteResponse() " << error.message() << endl;
    }
}

}   //namespace
 No newline at end of file
+8 −7
Original line number Diff line number Diff line
@@ -13,6 +13,13 @@ namespace MetadataExporter_ns
class PlainSession : public Session,
    public boost::enable_shared_from_this<PlainSession>
{
public:
//------------------------------------------------------------------------------
//  [Public] Shared pointer typedef
//------------------------------------------------------------------------------
    typedef boost::shared_ptr<PlainSession> SP;

protected:
//------------------------------------------------------------------------------
//	[Protected] Constructor destructor deleter
//------------------------------------------------------------------------------
@@ -33,7 +40,7 @@ public:
//------------------------------------------------------------------------------
//	[Public] Users methods
//------------------------------------------------------------------------------
    static Session::SP create(Tango::DeviceImpl*,
    static PlainSession::SP create(Tango::DeviceImpl*,
        boost::shared_ptr<boost::asio::io_service>);

    virtual boost::asio::ip::tcp::socket& getSocket();
@@ -46,16 +53,10 @@ protected:
//------------------------------------------------------------------------------
    virtual void startReadRequestHeader();

    virtual void handleReadRequestHeader(const boost::system::error_code&);

    virtual void startReadRequestBody(boost::uint32_t);

    virtual void handleReadRequestBody(const boost::system::error_code&);

    virtual void startWriteResponse();

    virtual void handleWriteResponse(const boost::system::error_code&);

//------------------------------------------------------------------------------
//	[Protected] Class variables
//------------------------------------------------------------------------------
Loading