diff options
Diffstat (limited to 'Swiften/TLS/Schannel/SchannelContext.h')
-rw-r--r-- | Swiften/TLS/Schannel/SchannelContext.h | 122 |
1 files changed, 61 insertions, 61 deletions
diff --git a/Swiften/TLS/Schannel/SchannelContext.h b/Swiften/TLS/Schannel/SchannelContext.h index be30a7c..2c6a3ff 100644 --- a/Swiften/TLS/Schannel/SchannelContext.h +++ b/Swiften/TLS/Schannel/SchannelContext.h @@ -28,85 +28,85 @@ #include <boost/noncopyable.hpp> -namespace Swift -{ - class CAPICertificate; - class SchannelContext : public TLSContext, boost::noncopyable - { - public: - typedef boost::shared_ptr<SchannelContext> sp_t; +namespace Swift +{ + class CAPICertificate; + class SchannelContext : public TLSContext, boost::noncopyable + { + public: + typedef boost::shared_ptr<SchannelContext> sp_t; - public: - SchannelContext(bool tls1_0Workaround); + public: + SchannelContext(bool tls1_0Workaround); - virtual ~SchannelContext(); + virtual ~SchannelContext(); - // - // TLSContext - // - virtual void connect(); - virtual bool setClientCertificate(CertificateWithKey::ref cert); + // + // TLSContext + // + virtual void connect(); + virtual bool setClientCertificate(CertificateWithKey::ref cert); - virtual void handleDataFromNetwork(const SafeByteArray& data); - virtual void handleDataFromApplication(const SafeByteArray& data); + virtual void handleDataFromNetwork(const SafeByteArray& data); + virtual void handleDataFromApplication(const SafeByteArray& data); - virtual std::vector<Certificate::ref> getPeerCertificateChain() const; - virtual CertificateVerificationError::ref getPeerCertificateVerificationError() const; + virtual std::vector<Certificate::ref> getPeerCertificateChain() const; + virtual CertificateVerificationError::ref getPeerCertificateVerificationError() const; - virtual ByteArray getFinishMessage() const; + virtual ByteArray getFinishMessage() const; - virtual void setCheckCertificateRevocation(bool b); + virtual void setCheckCertificateRevocation(bool b); - virtual void setDisconnectOnCardRemoval(bool b); + virtual void setDisconnectOnCardRemoval(bool b); - private: - void determineStreamSizes(); - void continueHandshake(const SafeByteArray& data); - void indicateError(boost::shared_ptr<TLSError> error); - //FIXME: Remove - void indicateError() {indicateError(boost::make_shared<TLSError>());} - void handleCertError(SECURITY_STATUS status) ; + private: + void determineStreamSizes(); + void continueHandshake(const SafeByteArray& data); + void indicateError(boost::shared_ptr<TLSError> error); + //FIXME: Remove + void indicateError() {indicateError(boost::make_shared<TLSError>());} + void handleCertError(SECURITY_STATUS status) ; - void sendDataOnNetwork(const void* pData, size_t dataSize); - void forwardDataToApplication(const void* pData, size_t dataSize); + void sendDataOnNetwork(const void* pData, size_t dataSize); + void forwardDataToApplication(const void* pData, size_t dataSize); - void decryptAndProcessData(const SafeByteArray& data); - void encryptAndSendData(const SafeByteArray& data); + void decryptAndProcessData(const SafeByteArray& data); + void encryptAndSendData(const SafeByteArray& data); - void appendNewData(const SafeByteArray& data); - SECURITY_STATUS validateServerCertificate(); + void appendNewData(const SafeByteArray& data); + SECURITY_STATUS validateServerCertificate(); - void handleCertificateCardRemoved(); + void handleCertificateCardRemoved(); - private: - enum SchannelState - { - Start, - Connecting, - Connected, - Error + private: + enum SchannelState + { + Start, + Connecting, + Connected, + Error - }; + }; - SchannelState state_; - boost::optional<CertificateVerificationError> verificationError_; + SchannelState state_; + boost::optional<CertificateVerificationError> verificationError_; - ULONG secContext_; - ScopedCredHandle credHandle_; - ScopedCtxtHandle contextHandle_; - DWORD contextFlags_; - SecPkgContext_StreamSizes streamSizes_; + ULONG secContext_; + ScopedCredHandle credHandle_; + ScopedCtxtHandle contextHandle_; + DWORD contextFlags_; + SecPkgContext_StreamSizes streamSizes_; - std::vector<char> receivedData_; + std::vector<char> receivedData_; - HCERTSTORE myCertStore_; - std::string certStoreName_; - std::string certName_; + HCERTSTORE myCertStore_; + std::string certStoreName_; + std::string certName_; ////Not needed, most likely - std::string smartCardReader_; //Can be empty string for non SmartCard certificates - boost::shared_ptr<CAPICertificate> userCertificate_; - bool checkCertificateRevocation_; - bool tls1_0Workaround_; - bool disconnectOnCardRemoval_; - }; + std::string smartCardReader_; //Can be empty string for non SmartCard certificates + boost::shared_ptr<CAPICertificate> userCertificate_; + bool checkCertificateRevocation_; + bool tls1_0Workaround_; + bool disconnectOnCardRemoval_; + }; } |