summaryrefslogtreecommitdiff
path: root/cpp/src/IceSSL/SSLEngine.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceSSL/SSLEngine.h')
-rw-r--r--cpp/src/IceSSL/SSLEngine.h24
1 files changed, 21 insertions, 3 deletions
diff --git a/cpp/src/IceSSL/SSLEngine.h b/cpp/src/IceSSL/SSLEngine.h
index 08b79e85bd5..25748c71c78 100644
--- a/cpp/src/IceSSL/SSLEngine.h
+++ b/cpp/src/IceSSL/SSLEngine.h
@@ -22,6 +22,7 @@
#if defined(ICE_USE_SECURE_TRANSPORT)
# include <Security/Security.h>
+# include <Security/SecureTransport.h>
#elif defined(ICE_USE_SCHANNEL)
//
@@ -72,7 +73,7 @@ public:
//
// Verify peer certificate
//
- void verifyPeer(SOCKET, const std::string&, const NativeConnectionInfoPtr&);
+ void verifyPeer(const std::string&, const NativeConnectionInfoPtr&, const std::string&);
CertificateVerifierPtr getCertificateVerifier() const;
PasswordPromptPtr getPasswordPrompt() const;
@@ -80,6 +81,7 @@ public:
std::string getPassword() const;
void setPassword(const std::string& password);
+ bool getCheckCertName() const { return _checkCertName; }
int getVerifyPeer() const { return _verifyPeer; }
int securityTraceLevel() const { return _securityTraceLevel; }
std::string securityTraceCategory() const { return _securityTraceCategory; }
@@ -120,7 +122,6 @@ public:
private:
void parseCiphers(const std::string&);
- SecKeychainRef openKeychain();
bool _initialized;
UniqueRef<CFArrayRef> _certificateAuthorities;
@@ -131,8 +132,9 @@ private:
std::string _defaultDir;
+#if TARGET_OS_IPHONE==0
std::vector<char> _dhParams;
-
+#endif
std::vector<SSLCipherSuite> _ciphers;
IceUtil::Mutex _mutex;
};
@@ -179,6 +181,7 @@ private:
# endif
#endif
+
class SChannelEngine : public SSLEngine
{
public:
@@ -219,7 +222,22 @@ private:
HCERTCHAINENGINE _chainEngine;
std::vector<ALG_ID> _ciphers;
};
+
+#elif defined(ICE_OS_WINRT)
+
+class WinRTEngine : public SSLEngine
+{
+public:
+
+ WinRTEngine(const Ice::CommunicatorPtr&);
+
+ virtual void initialize();
+ virtual bool initialized() const;
+ virtual void destroy();
+};
+
#else // OpenSSL
+
class OpenSSLEngine : public SSLEngine
{
public: