// ********************************************************************** // // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved. // // This copy of Ice is licensed to you under the terms described in the // ICE_LICENSE file included in this distribution. // // ********************************************************************** #ifndef ICE_SSL_TRUST_MANAGER_H #define ICE_SSL_TRUST_MANAGER_H #include #include #include #include #include namespace IceSSL { class TrustManager : public IceUtil::Shared { public: TrustManager(const Ice::CommunicatorPtr&); bool verify(const NativeConnectionInfoPtr&); private: bool match(const std::list< DistinguishedName> &, const DistinguishedName&) const; void parse(const std::string&, std::list&, std::list&) const; const Ice::CommunicatorPtr _communicator; int _traceLevel; std::list _rejectAll; std::list _rejectClient; std::list _rejectAllServer; std::map > _rejectServer; std::list _acceptAll; std::list _acceptClient; std::list _acceptAllServer; std::map > _acceptServer; }; } #endif