X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoreauthhandler.h;h=6471a3e088a0c76a2dd1b83c4e6eef6551a6d719;hp=a16ca1def52638eede111936f27ffe793f95f47e;hb=1a5c1814a0c52f6f35e65c7033b2f896bf1188e3;hpb=e50ae7a06fc4e5d3a911c361d30953410deab609 diff --git a/src/core/coreauthhandler.h b/src/core/coreauthhandler.h index a16ca1de..6471a3e0 100644 --- a/src/core/coreauthhandler.h +++ b/src/core/coreauthhandler.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2020 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -22,7 +22,9 @@ #define COREAUTHHANDLER_H #include "authhandler.h" +#include "metricsserver.h" #include "peerfactory.h" +#include "proxyline.h" #include "remotepeer.h" #include "types.h" @@ -31,19 +33,22 @@ class CoreAuthHandler : public AuthHandler Q_OBJECT public: - CoreAuthHandler(QTcpSocket *socket, QObject *parent = 0); + CoreAuthHandler(QTcpSocket* socket, QObject* parent = nullptr); + + QHostAddress hostAddress() const; + bool isLocal() const override; signals: - void handshakeComplete(RemotePeer *peer, UserId uid); + void handshakeComplete(RemotePeer* peer, UserId uid); private: using AuthHandler::handle; - void handle(const Protocol::RegisterClient &msg); - void handle(const Protocol::SetupData &msg); - void handle(const Protocol::Login &msg); + void handle(const Protocol::RegisterClient& msg) override; + void handle(const Protocol::SetupData& msg) override; + void handle(const Protocol::Login& msg) override; - void setPeer(RemotePeer *peer); + void setPeer(RemotePeer* peer); void startSsl(); bool checkClientRegistered(); @@ -51,16 +56,18 @@ private: private slots: void onReadyRead(); -#ifdef HAVE_SSL void onSslErrors(); -#endif // only in legacy mode void onProtocolVersionMismatch(int actual, int expected); private: - RemotePeer *_peer; + RemotePeer* _peer; + MetricsServer* _metricsServer; + bool _proxyReceived; + ProxyLine _proxyLine; + bool _useProxyLine; bool _magicReceived; bool _legacy; bool _clientRegistered;