diff options
author | Jose <jose@zeroc.com> | 2016-11-24 10:11:45 +0100 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2016-11-24 10:11:45 +0100 |
commit | cd0a9e3caeeb5ef8cee34a3f87a9566fc1a3ff8e (patch) | |
tree | b3b2d10411a29ae8f584f3f349d34547dab0fe49 /cpp/src/IceSSL/WinRTEngine.cpp | |
parent | Check PCCERT_CHAIN_CONTEXT TrustStatus rather than CERT_SIMPLE_CHAIN TrustStatus (diff) | |
download | ice-cd0a9e3caeeb5ef8cee34a3f87a9566fc1a3ff8e.tar.bz2 ice-cd0a9e3caeeb5ef8cee34a3f87a9566fc1a3ff8e.tar.xz ice-cd0a9e3caeeb5ef8cee34a3f87a9566fc1a3ff8e.zip |
Port IceSSL/configuration test to UWP and fixes to UWP IceSSL implementation
Diffstat (limited to 'cpp/src/IceSSL/WinRTEngine.cpp')
-rwxr-xr-x | cpp/src/IceSSL/WinRTEngine.cpp | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/cpp/src/IceSSL/WinRTEngine.cpp b/cpp/src/IceSSL/WinRTEngine.cpp index 651fd2ace53..b2bbf069e34 100755 --- a/cpp/src/IceSSL/WinRTEngine.cpp +++ b/cpp/src/IceSSL/WinRTEngine.cpp @@ -41,16 +41,26 @@ WinRTEngine::initialize() const auto properties = communicator()->getProperties(); // + // Load CAs + // + //string ca = properties->getProperty("IceSSL.CAs"); + //if(!ca.empty()) + //{ + // _ca = Certificate::load(ca); + //} + + // // Load client certificate // string findCert = properties->getProperty("IceSSL.FindCert"); if(!findCert.empty()) { auto certs = findCertificates(properties->getPropertyWithDefault("IceSSL.CertStore", "My"), findCert); - if(certs->Size > 0) + if(certs->Size == 0) { - _certificate = make_shared<IceSSL::Certificate>(certs->GetAt(0)); + throw Ice::PluginInitializationException(__FILE__, __LINE__, "IceSSL: no certificates found"); } + _certificate = make_shared<IceSSL::Certificate>(certs->GetAt(0)); } _initialized = true; } @@ -61,6 +71,12 @@ WinRTEngine::initialized() const return _initialized; } +//shared_ptr<Certificate> +//WinRTEngine::ca() +//{ +// return _ca; +//} + shared_ptr<Certificate> WinRTEngine::certificate() { |