From e2facc2eac35a0394e65da0af3cbf751de41cd34 Mon Sep 17 00:00:00 2001 From: Matej Sekoranja Date: Thu, 11 Sep 2014 21:30:42 +0200 Subject: [PATCH] win visibility attributes --- src/remote/security.cpp | 23 +++++++++++++++++++++++ src/remote/security.h | 17 +++-------------- src/remote/serializationHelper.cpp | 4 +++- src/remote/serializationHelper.h | 2 +- 4 files changed, 30 insertions(+), 16 deletions(-) diff --git a/src/remote/security.cpp b/src/remote/security.cpp index a8dfa6c..8bb78ee 100644 --- a/src/remote/security.cpp +++ b/src/remote/security.cpp @@ -50,3 +50,26 @@ CAClientSecurityPlugin::CAClientSecurityPlugin() m_userAndHost->getSubField("host")->put(buffer); } + + +void AuthNZHandler::handleResponse(osiSockAddr* responseFrom, + Transport::shared_pointer const & transport, + epics::pvData::int8 version, + epics::pvData::int8 command, + size_t payloadSize, + epics::pvData::ByteBuffer* payloadBuffer) +{ + AbstractResponseHandler::handleResponse(responseFrom, transport, version, command, payloadSize, payloadBuffer); + + epics::pvData::PVField::shared_pointer data = + SerializationHelper::deserializeFull(payloadBuffer, transport.get()); + + transport->authNZMessage(data); +} + +SecurityPluginRegistry::SecurityPluginRegistry() { + // install CA client security plugin by default + installClientSecurityPlugin(CAClientSecurityPlugin::INSTANCE); +} + + diff --git a/src/remote/security.h b/src/remote/security.h index e8eb872..a73a66c 100644 --- a/src/remote/security.h +++ b/src/remote/security.h @@ -46,7 +46,7 @@ namespace epics { // when clients gets initial credentialsChanged call before create is called // and then on each change - class ChannelSecuritySession { + class epicsShareClass ChannelSecuritySession { public: POINTER_DEFINITIONS(ChannelSecuritySession); @@ -431,15 +431,7 @@ namespace epics { epics::pvData::int8 version, epics::pvData::int8 command, size_t payloadSize, - epics::pvData::ByteBuffer* payloadBuffer) - { - AbstractResponseHandler::handleResponse(responseFrom, transport, version, command, payloadSize, payloadBuffer); - - epics::pvData::PVField::shared_pointer data = - SerializationHelper::deserializeFull(payloadBuffer, transport.get()); - - transport->authNZMessage(data); - } + epics::pvData::ByteBuffer* payloadBuffer); }; class epicsShareClass SecurityPluginRegistry : @@ -476,10 +468,7 @@ namespace epics { } private: - SecurityPluginRegistry() { - // install CA client security plugin by default - installClientSecurityPlugin(CAClientSecurityPlugin::INSTANCE); - } + SecurityPluginRegistry(); std::map > m_clientSecurityPlugins; std::map > m_serverSecurityPlugins; diff --git a/src/remote/serializationHelper.cpp b/src/remote/serializationHelper.cpp index e003365..23d3317 100644 --- a/src/remote/serializationHelper.cpp +++ b/src/remote/serializationHelper.cpp @@ -4,9 +4,11 @@ * in file LICENSE that is included with this distribution. */ +#include + +#define epicsExportSharedSymbols #include #include -#include using namespace epics::pvData; diff --git a/src/remote/serializationHelper.h b/src/remote/serializationHelper.h index 3e31596..355d5f1 100644 --- a/src/remote/serializationHelper.h +++ b/src/remote/serializationHelper.h @@ -30,7 +30,7 @@ namespace epics { namespace pvAccess { - class SerializationHelper : public epics::pvData::NoDefaultMethods { + class epicsShareClass SerializationHelper : public epics::pvData::NoDefaultMethods { public: static epics::pvData::PVDataCreatePtr _pvDataCreate;