/***************************************************************************
- * Copyright (C) 2005-2014 by the Quassel Project *
+ * Copyright (C) 2005-2016 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#ifndef CLIENTAUTHHANDLER_H
#define CLIENTAUTHHANDLER_H
+#include "compressor.h"
#include "authhandler.h"
#include "coreaccount.h"
public:
ClientAuthHandler(CoreAccount account, QObject *parent = 0);
+ enum DigestVersion {
+ Md5,
+ Sha2_512,
+ Latest=Sha2_512
+ };
+
public slots:
void connectToCore();
#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);
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);
RemotePeer *_peer;
bool _coreConfigured;
QVariantList _backendInfo;
+ QVariantList _authenticatorInfo;
CoreAccount _account;
bool _probing;
bool _legacy;