diff options
Diffstat (limited to 'Swiften/Session/SessionStream.h')
-rw-r--r-- | Swiften/Session/SessionStream.h | 136 |
1 files changed, 68 insertions, 68 deletions
diff --git a/Swiften/Session/SessionStream.h b/Swiften/Session/SessionStream.h index 9dcec71..18404c6 100644 --- a/Swiften/Session/SessionStream.h +++ b/Swiften/Session/SessionStream.h @@ -20,72 +20,72 @@ #include <Swiften/TLS/CertificateWithKey.h> namespace Swift { - class SWIFTEN_API SessionStream { - public: - class SWIFTEN_API SessionStreamError : public Swift::Error { - public: - enum Type { - ParseError, - TLSError, - InvalidTLSCertificateError, - ConnectionReadError, - ConnectionWriteError - }; - - SessionStreamError(Type type) : type(type) {} - - Type type; - }; - - SessionStream(): certificate() {} - - virtual ~SessionStream(); - - virtual void close() = 0; - virtual bool isOpen() = 0; - - virtual void writeHeader(const ProtocolHeader& header) = 0; - virtual void writeFooter() = 0; - virtual void writeElement(boost::shared_ptr<ToplevelElement>) = 0; - virtual void writeData(const std::string& data) = 0; - - virtual bool supportsZLibCompression() = 0; - virtual void addZLibCompression() = 0; - - virtual bool supportsTLSEncryption() = 0; - virtual void addTLSEncryption() = 0; - virtual bool isTLSEncrypted() = 0; - virtual void setWhitespacePingEnabled(bool enabled) = 0; - - virtual void resetXMPPParser() = 0; - - void setTLSCertificate(CertificateWithKey::ref cert) { - certificate = cert; - } - - virtual bool hasTLSCertificate() { - return certificate && !certificate->isNull(); - } - - virtual Certificate::ref getPeerCertificate() const = 0; - virtual std::vector<Certificate::ref> getPeerCertificateChain() const = 0; - virtual boost::shared_ptr<CertificateVerificationError> getPeerCertificateVerificationError() const = 0; - - virtual ByteArray getTLSFinishMessage() const = 0; - - boost::signal<void (const ProtocolHeader&)> onStreamStartReceived; - boost::signal<void (boost::shared_ptr<ToplevelElement>)> onElementReceived; - boost::signal<void (boost::shared_ptr<Error>)> onClosed; - boost::signal<void ()> onTLSEncrypted; - boost::signal<void (const SafeByteArray&)> onDataRead; - boost::signal<void (const SafeByteArray&)> onDataWritten; - - protected: - CertificateWithKey::ref getTLSCertificate() const { - return certificate; - } - - private: - CertificateWithKey::ref certificate; - }; + class SWIFTEN_API SessionStream { + public: + class SWIFTEN_API SessionStreamError : public Swift::Error { + public: + enum Type { + ParseError, + TLSError, + InvalidTLSCertificateError, + ConnectionReadError, + ConnectionWriteError + }; + + SessionStreamError(Type type) : type(type) {} + + Type type; + }; + + SessionStream(): certificate() {} + + virtual ~SessionStream(); + + virtual void close() = 0; + virtual bool isOpen() = 0; + + virtual void writeHeader(const ProtocolHeader& header) = 0; + virtual void writeFooter() = 0; + virtual void writeElement(boost::shared_ptr<ToplevelElement>) = 0; + virtual void writeData(const std::string& data) = 0; + + virtual bool supportsZLibCompression() = 0; + virtual void addZLibCompression() = 0; + + virtual bool supportsTLSEncryption() = 0; + virtual void addTLSEncryption() = 0; + virtual bool isTLSEncrypted() = 0; + virtual void setWhitespacePingEnabled(bool enabled) = 0; + + virtual void resetXMPPParser() = 0; + + void setTLSCertificate(CertificateWithKey::ref cert) { + certificate = cert; + } + + virtual bool hasTLSCertificate() { + return certificate && !certificate->isNull(); + } + + virtual Certificate::ref getPeerCertificate() const = 0; + virtual std::vector<Certificate::ref> getPeerCertificateChain() const = 0; + virtual boost::shared_ptr<CertificateVerificationError> getPeerCertificateVerificationError() const = 0; + + virtual ByteArray getTLSFinishMessage() const = 0; + + boost::signal<void (const ProtocolHeader&)> onStreamStartReceived; + boost::signal<void (boost::shared_ptr<ToplevelElement>)> onElementReceived; + boost::signal<void (boost::shared_ptr<Error>)> onClosed; + boost::signal<void ()> onTLSEncrypted; + boost::signal<void (const SafeByteArray&)> onDataRead; + boost::signal<void (const SafeByteArray&)> onDataWritten; + + protected: + CertificateWithKey::ref getTLSCertificate() const { + return certificate; + } + + private: + CertificateWithKey::ref certificate; + }; } |