summaryrefslogtreecommitdiff
path: root/cpp/src/IceSSL/SecureTransportUtil.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceSSL/SecureTransportUtil.h')
-rw-r--r--cpp/src/IceSSL/SecureTransportUtil.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/cpp/src/IceSSL/SecureTransportUtil.h b/cpp/src/IceSSL/SecureTransportUtil.h
new file mode 100644
index 00000000000..e508a41776d
--- /dev/null
+++ b/cpp/src/IceSSL/SecureTransportUtil.h
@@ -0,0 +1,47 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2017 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 ICESSL_SECURE_TRANSPORT_UTIL_H
+#define ICESSL_SECURE_TRANSPORT_UTIL_H
+
+#include <IceSSL/SecureTransport.h>
+#include <IceSSL/Util.h>
+
+namespace IceSSL
+{
+
+namespace SecureTransport
+{
+
+std::string sslErrorToString(CFErrorRef);
+std::string sslErrorToString(OSStatus);
+
+# if defined(ICE_USE_SECURE_TRANSPORT_MACOS)
+//
+// Retrieve a certificate property
+//
+CFDictionaryRef getCertificateProperty(SecCertificateRef, CFTypeRef);
+# endif
+
+//
+// Read certificate from a file.
+//
+CFArrayRef loadCertificateChain(const std::string&, const std::string&, const std::string&, const std::string&,
+ const std::string&, const PasswordPromptPtr&, int);
+
+SecCertificateRef loadCertificate(const std::string&);
+CFArrayRef loadCACertificates(const std::string&);
+CFArrayRef findCertificateChain(const std::string&, const std::string&, const std::string&);
+
+
+} // SecureTransport namespace end
+
+} // IceSSL namespace end
+
+#endif