X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclientauthhandler.h;h=888f935df0e27b71b74f0dfa3b4666f4f3bd1125;hp=7d6c9357f2fc1d3d80bebe4fb0753b37a159a974;hb=c27d5bfbe80bfeb583a25404f4ccee4b70b010e0;hpb=921e54680da16fcf2adb7a90506875aceb6633a4 diff --git a/src/client/clientauthhandler.h b/src/client/clientauthhandler.h index 7d6c9357..888f935d 100644 --- a/src/client/clientauthhandler.h +++ b/src/client/clientauthhandler.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -18,8 +18,7 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef CLIENTAUTHHANDLER_H -#define CLIENTAUTHHANDLER_H +#pragma once #include "compressor.h" #include "authhandler.h" @@ -34,8 +33,16 @@ class ClientAuthHandler : public AuthHandler Q_OBJECT public: + enum DigestVersion { + Md5, + Sha2_512, + Latest=Sha2_512 + }; + ClientAuthHandler(CoreAccount account, QObject *parent = 0); + Peer *peer() const; + public slots: void connectToCore(); @@ -64,7 +71,7 @@ signals: #endif void encrypted(bool isEncrypted = true); - void startCoreSetup(const QVariantList &backendInfo); + void startCoreSetup(const QVariantList &backendInfo, const QVariantList &authenticatorInfo); void coreSetupSuccessful(); void coreSetupFailed(const QString &error); @@ -83,6 +90,10 @@ private: void checkAndEnableSsl(bool coreSupportsSsl); void startRegistration(); +#if QT_VERSION < 0x050000 + QByteArray sha2_512(const QByteArray &input); +#endif + private slots: void onSocketConnected(); void onSocketStateChanged(QAbstractSocket::SocketState state); @@ -103,10 +114,9 @@ private: RemotePeer *_peer; bool _coreConfigured; QVariantList _backendInfo; + QVariantList _authenticatorInfo; CoreAccount _account; bool _probing; bool _legacy; quint8 _connectionFeatures; }; - -#endif