// // Copyright (c) ZeroC, Inc. All rights reserved. // #ifndef ICESSL_PLUGIN_I_H #define ICESSL_PLUGIN_I_H #include #include #include namespace IceSSL { class ICESSL_API PluginI : public virtual IceSSL::Plugin { public: PluginI(const Ice::CommunicatorPtr&, const IceSSL::SSLEnginePtr&); // // From Ice::Plugin. // virtual void initialize(); virtual void destroy(); // // From IceSSL::Plugin. // #ifdef ICE_CPP11_MAPPING virtual void setCertificateVerifier(std::function&)>); virtual void setPasswordPrompt(std::function); #else virtual void setCertificateVerifier(const CertificateVerifierPtr&); virtual void setPasswordPrompt(const PasswordPromptPtr&); #endif virtual CertificatePtr load(const std::string&) const = 0; virtual CertificatePtr decode(const std::string&) const = 0; protected: SSLEnginePtr _engine; }; } #endif