version 1.29, 2007/05/09 19:17:59
|
version 1.30, 2008/02/22 19:09:14
|
|
|
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
#ifndef Pegasus_SSLContextRep_h |
|
#define Pegasus_SSLContextRep_h |
|
|
#ifdef PEGASUS_HAS_SSL | #ifdef PEGASUS_HAS_SSL |
#define OPENSSL_NO_KRB5 1 | #define OPENSSL_NO_KRB5 1 |
#include <openssl/err.h> | #include <openssl/err.h> |
|
|
#else | #else |
#define SSL_CTX void | #define SSL_CTX void |
#endif | #endif |
|
|
#include <Pegasus/Common/SSLContext.h> | #include <Pegasus/Common/SSLContext.h> |
#include <Pegasus/Common/Linkage.h> | #include <Pegasus/Common/Linkage.h> |
#include <Pegasus/Common/Mutex.h> | #include <Pegasus/Common/Mutex.h> |
|
#include <Pegasus/Common/AutoPtr.h> |
#ifndef Pegasus_SSLContextRep_h |
#include <Pegasus/Common/SharedPtr.h> |
#define Pegasus_SSLContextRep_h |
|
|
|
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
|
struct FreeX509STOREPtr |
|
{ |
|
void operator()(X509_STORE* ptr) |
|
{ |
|
#ifdef PEGASUS_HAS_SSL |
|
X509_STORE_free(ptr); |
|
#endif |
|
} |
|
}; |
|
|
class SSLCallbackInfoRep | class SSLCallbackInfoRep |
{ | { |
public: | public: |
|
|
| |
String getCRLPath() const; | String getCRLPath() const; |
| |
X509_STORE* getCRLStore() const; |
SharedPtr<X509_STORE, FreeX509STOREPtr> getCRLStore() const; |
| |
void setCRLStore(X509_STORE* store); | void setCRLStore(X509_STORE* store); |
| |
|
|
| |
SSLCertificateVerifyFunction* _certificateVerifyFunction; | SSLCertificateVerifyFunction* _certificateVerifyFunction; |
| |
X509_STORE* _crlStore; |
SharedPtr<X509_STORE, FreeX509STOREPtr> _crlStore; |
| |
/* | /* |
Mutex containing the SSL locks. | Mutex containing the SSL locks. |