diff --git a/include/Swiften/Server/ServerFromClientSession.h b/include/Swiften/Server/ServerFromClientSession.h index 121f3f9a1f39e3f1e7e15b5e2d78f9bac5b7c350..230bb119fc13ca9153ddbc83e7036cb6b517b2b9 100644 --- a/include/Swiften/Server/ServerFromClientSession.h +++ b/include/Swiften/Server/ServerFromClientSession.h @@ -1,85 +1,91 @@ -/* - * Copyright (c) 2010 Remko Tronçon - * Licensed under the GNU General Public License v3. - * See Documentation/Licenses/GPLv3.txt for more information. - */ - -#pragma once - -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -namespace Swift { - class ProtocolHeader; - class Element; - class Stanza; - class PayloadParserFactoryCollection; - class PayloadSerializerCollection; - class StreamStack; - class UserRegistry; - class XMPPLayer; - class ConnectionLayer; - class Connection; - class TLSServerLayer; - class TLSServerContextFactory; - class PKCS12Certificate; - - class ServerFromClientSession : public Session { - public: - ServerFromClientSession( - const std::string& id, - boost::shared_ptr connection, - PayloadParserFactoryCollection* payloadParserFactories, - PayloadSerializerCollection* payloadSerializers, - UserRegistry* userRegistry, - XMLParserFactory* factory, - Swift::JID remoteJID = Swift::JID()); - ~ServerFromClientSession(); - - boost::signal onSessionStarted; - void setAllowSASLEXTERNAL(); - const std::string &getUser() { - return user_; - } - - void addTLSEncryption(TLSServerContextFactory* tlsContextFactory, CertificateWithKey::ref cert); - - Swift::JID getBareJID() { - return Swift::JID(user_, getLocalJID().getDomain()); - } - - void handlePasswordValid(); - void handlePasswordInvalid(const std::string &error = ""); - - private: - void handleElement(boost::shared_ptr); - void handleStreamStart(const ProtocolHeader& header); - void handleSessionFinished(const boost::optional&); - - void setInitialized(); - bool isInitialized() const { - return initialized; - } - - void handleTLSError() { } - void handleTLSConnected() { tlsConnected = true; } - - private: - std::string id_; - UserRegistry* userRegistry_; - bool authenticated_; - bool initialized; - bool allowSASLEXTERNAL; - std::string user_; - TLSServerLayer* tlsLayer; - bool tlsConnected; - }; -} +/* + * Copyright (c) 2010 Remko Tronçon + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#pragma once + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#define HAVE_SWIFTEN_3 SWIFTEN_VERSION >= 0x030000 + +namespace Swift { + class ProtocolHeader; + class Element; + class Stanza; + class PayloadParserFactoryCollection; + class PayloadSerializerCollection; + class StreamStack; + class UserRegistry; + class XMPPLayer; + class ConnectionLayer; + class Connection; + class TLSServerLayer; + class TLSServerContextFactory; + class PKCS12Certificate; + + class ServerFromClientSession : public Session { + public: + ServerFromClientSession( + const std::string& id, + boost::shared_ptr connection, + PayloadParserFactoryCollection* payloadParserFactories, + PayloadSerializerCollection* payloadSerializers, + UserRegistry* userRegistry, + XMLParserFactory* factory, + Swift::JID remoteJID = Swift::JID()); + ~ServerFromClientSession(); + + boost::signal onSessionStarted; + void setAllowSASLEXTERNAL(); + const std::string &getUser() { + return user_; + } + + void addTLSEncryption(TLSServerContextFactory* tlsContextFactory, CertificateWithKey::ref cert); + + Swift::JID getBareJID() { + return Swift::JID(user_, getLocalJID().getDomain()); + } + + void handlePasswordValid(); + void handlePasswordInvalid(const std::string &error = ""); + + private: +#if HAVE_SWIFTEN_3 + void handleElement(boost::shared_ptr); +#else + void handleElement(boost::shared_ptr); +#endif + void handleStreamStart(const ProtocolHeader& header); + void handleSessionFinished(const boost::optional&); + + void setInitialized(); + bool isInitialized() const { + return initialized; + } + + void handleTLSError() { } + void handleTLSConnected() { tlsConnected = true; } + + private: + std::string id_; + UserRegistry* userRegistry_; + bool authenticated_; + bool initialized; + bool allowSASLEXTERNAL; + std::string user_; + TLSServerLayer* tlsLayer; + bool tlsConnected; + }; +}