chore: code fixups suggested by static analysis

master
Johan Ouwerkerk 2021-02-02 19:51:29 +01:00
parent 82ebbdf4f9
commit 653e0b4b44
5 changed files with 52 additions and 48 deletions

View File

@ -1,6 +1,6 @@
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* SPDX-FileCopyrightText: 2020 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
* SPDX-FileCopyrightText: 2020-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
*/
#include "account/actions_p.h"
@ -11,7 +11,7 @@
#include <QTimer>
#include <QtDebug>
class TestJob: public accounts::AccountJob
class TestJob: public accounts::AccountJob // clazy:exclude=ctor-missing-parent-argument
{
Q_OBJECT
public:
@ -29,7 +29,7 @@ public Q_SLOTS:
}
};
class DispatchTest: public QObject
class DispatchTest: public QObject // clazy:exclude=ctor-missing-parent-argument
{
Q_OBJECT
private Q_SLOTS:

View File

@ -1,6 +1,6 @@
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* SPDX-FileCopyrightText: 2020 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
* SPDX-FileCopyrightText: 2020-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
*/
#include "account.h"
#include "account_p.h"
@ -198,7 +198,7 @@ namespace accounts
}
void AccountStorage::addHotp(const QString &name, const QString &issuer, const QString &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool addChecksum)
quint64 counter, const std::optional<uint> offset, bool addChecksum)
{
Q_D(AccountStorage);
const std::function<void(SaveHotp*)> handler([this](SaveHotp *job) -> void
@ -244,8 +244,8 @@ namespace accounts
return d->activeAccounts();
}
void AccountStorage::handleHotp(const QUuid id, const QString name, const QString issuer,
const QByteArray secret, const QByteArray nonce, uint tokenLength,
void AccountStorage::handleHotp(const QUuid id, const QString &name, const QString &issuer,
const QByteArray &secret, const QByteArray &nonce, uint tokenLength,
quint64 counter, bool fixedTruncation, uint offset, bool checksum)
{
Q_D(AccountStorage);
@ -279,9 +279,9 @@ namespace accounts
Q_EMIT added(AccountPrivate::toFullName(name, issuer));
}
void AccountStorage::handleTotp(const QUuid id, const QString name, const QString issuer,
const QByteArray secret, const QByteArray nonce, uint tokenLength,
uint timeStep, const QDateTime epoch, Account::Hash hash)
void AccountStorage::handleTotp(const QUuid id, const QString &name, const QString &issuer,
const QByteArray &secret, const QByteArray &nonce, uint tokenLength,
uint timeStep, const QDateTime &epoch, Account::Hash hash)
{
Q_D(AccountStorage);
if (!d->isStillOpen()) {

View File

@ -1,6 +1,6 @@
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* SPDX-FileCopyrightText: 2020 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
* SPDX-FileCopyrightText: 2020-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
*/
#ifndef ACCOUNTS_ACCOUNT_H
#define ACCOUNTS_ACCOUNT_H
@ -56,7 +56,7 @@ namespace accounts
void setCounter(quint64 counter);
void advanceCounter(quint64 by = 1ULL);
Q_SIGNALS:
void tokenChanged(const QString otp);
void tokenChanged(const QString &otp);
void removed(void);
void updated(void);
private:
@ -88,7 +88,7 @@ namespace accounts
const QString &secret,
uint tokenLength = 6U,
quint64 counter = 0ULL,
const std::optional<uint> &offset = std::nullopt,
const std::optional<uint> offset = std::nullopt,
bool addChecksum = false);
void addTotp(const QString &name,
const QString &issuer,
@ -101,8 +101,8 @@ namespace accounts
bool hasError(void) const;
bool isLoaded(void) const;
Q_SIGNALS:
void added(const QString fullName);
void removed(const QString fullName);
void added(const QString &fullName);
void removed(const QString &fullName);
void error(void);
void loaded(void);
void disposed(void);
@ -113,12 +113,12 @@ namespace accounts
void handleDisposal(void);
void handleError(void);
void handleLoaded(void);
void handleHotp(const QUuid id, const QString name, const QString issuer,
const QByteArray secret, const QByteArray nonce, uint tokenLength,
void handleHotp(const QUuid id, const QString &name, const QString &issuer,
const QByteArray &secret, const QByteArray &nonce, uint tokenLength,
quint64 counter, bool fixedTruncation, uint offset, bool checksum);
void handleTotp(const QUuid id, const QString name, const QString issuer,
const QByteArray secret, const QByteArray nonce, uint tokenLength,
uint timeStep, const QDateTime epoch, Account::Hash hash);
void handleTotp(const QUuid id, const QString &name, const QString &issuer,
const QByteArray &secret, const QByteArray &nonce, uint tokenLength,
uint timeStep, const QDateTime &epoch, Account::Hash hash);
private:
QScopedPointer<AccountStoragePrivate> m_dptr;
Q_DECLARE_PRIVATE_D(m_dptr, AccountStorage)

View File

@ -1,6 +1,6 @@
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* SPDX-FileCopyrightText: 2020 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
* SPDX-FileCopyrightText: 2020-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
*/
#include "account_p.h"
#include "validation.h"
@ -140,7 +140,8 @@ namespace accounts
}
}
void AccountPrivate::acceptTotpTokens(QString token, QString nextToken, QDateTime validFrom, QDateTime validUntil)
void AccountPrivate::acceptTotpTokens(const QString &token, const QString &nextToken,
const QDateTime &validFrom, const QDateTime &validUntil)
{
if (!m_is_still_alive) {
qCDebug(logger)
@ -162,7 +163,7 @@ namespace accounts
setToken(token);
}
void AccountPrivate::acceptHotpTokens(QString token, QString nextToken, quint64 nextCounter)
void AccountPrivate::acceptHotpTokens(const QString &token, const QString &nextToken, quint64 nextCounter)
{
if (!m_is_still_alive) {
qCDebug(logger)
@ -183,7 +184,7 @@ namespace accounts
setToken(token);
}
void AccountPrivate::setToken(QString token)
void AccountPrivate::setToken(const QString &token)
{
Q_Q(Account);
if (m_token != token) {
@ -304,9 +305,9 @@ namespace accounts
AccountPrivate::AccountPrivate(const std::function<Account*(AccountPrivate*)> &account,
AccountStoragePrivate *storage, Dispatcher *dispatcher,
const QUuid &id, const QString &name, const QString &issuer,
const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool addChecksum) :
quint64 counter, const std::optional<uint> offset, bool addChecksum) :
q_ptr(account(this)), m_storage(storage), m_actions(dispatcher), m_is_still_alive(true),
m_algorithm(Account::Algorithm::Hotp), m_id(id), m_token(QString()), m_nextToken(QString()),
m_nextTotpValidFrom(QDateTime::fromMSecsSinceEpoch(0)), // not a totp token so does not really matter
@ -321,7 +322,7 @@ namespace accounts
AccountPrivate::AccountPrivate(const std::function<Account*(AccountPrivate*)> &account,
AccountStoragePrivate *storage, Dispatcher *dispatcher,
const QUuid &id, const QString &name, const QString &issuer,
const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
const QDateTime &epoch, uint timeStep, Account::Hash hash) :
q_ptr(account(this)), m_storage(storage), m_actions(dispatcher), m_is_still_alive(true),
@ -449,7 +450,7 @@ namespace accounts
DeleteAccounts *job = new DeleteAccounts(m_settings, ids);
m_actions->queueAndProceed(job, [&ids, job, this](void) -> void
{
for (const QUuid &id : ids) {
for (const QUuid &id : qAsConst(ids)) {
Account *account = m_accounts[id];
QObject::connect(job, &DeleteAccounts::finished, account, &Account::removed);
}
@ -502,7 +503,8 @@ namespace accounts
qCDebug(logger) << "Handling storage disposal";
for (const QString &accountName : m_names.keys()) {
const auto &names = m_names.keys();
for (const QString &accountName : names) {
const QUuid id = m_names[accountName];
qCDebug(logger) << "Handling account cleanup for account:" << id;
@ -557,7 +559,7 @@ namespace accounts
bool AccountStoragePrivate::addHotp(const std::function<void(SaveHotp*)> &handler,
const QString &name, const QString &issuer,
const QString &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool checksum)
quint64 counter, const std::optional<uint> offset, bool checksum)
{
if (!m_is_still_open) {
qCDebug(logger) << "Will not add new HOTP account: storage no longer open";
@ -653,9 +655,9 @@ namespace accounts
});
}
Account * AccountStoragePrivate::acceptHotpAccount(const QUuid &id, const QString &name, const QString &issuer,
Account * AccountStoragePrivate::acceptHotpAccount(const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool checksum)
quint64 counter, const std::optional<uint> offset, bool checksum)
{
Q_Q(AccountStorage);
qCDebug(logger) << "Registering HOTP account:" << id;
@ -675,7 +677,7 @@ namespace accounts
return m_accounts[id];
}
Account * AccountStoragePrivate::acceptTotpAccount(const QUuid &id, const QString &name, const QString &issuer,
Account * AccountStoragePrivate::acceptTotpAccount(const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
uint timeStep, const QDateTime &epoch, Account::Hash hash)
{
@ -773,12 +775,13 @@ namespace accounts
QObject::connect(job, &ComputeTotp::finished, this, &HandleTokenUpdate::deleteLater);
}
void HandleTokenUpdate::totp(QString otp, QString nextOtp, QDateTime validFrom, QDateTime validUntil)
void HandleTokenUpdate::totp(const QString &otp, const QString &nextOtp, const QDateTime &validFrom,
const QDateTime &validUntil)
{
m_account->acceptTotpTokens(otp, nextOtp, validFrom, validUntil);
}
void HandleTokenUpdate::hotp(QString otp, QString nextOtp, quint64 validUntil)
void HandleTokenUpdate::hotp(const QString &otp, const QString &nextOtp, quint64 validUntil)
{
m_account->acceptHotpTokens(otp, nextOtp, validUntil);
}

View File

@ -1,6 +1,6 @@
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* SPDX-FileCopyrightText: 2020 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
* SPDX-FileCopyrightText: 2020-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com>
*/
#ifndef ACCOUNTS_ACCOUNT_PRIVATE_H
#define ACCOUNTS_ACCOUNT_PRIVATE_H
@ -42,24 +42,25 @@ namespace accounts
static QString toFullName(const QString &name, const QString &issuer);
explicit AccountPrivate(const std::function<Account*(AccountPrivate*)> &account,
AccountStoragePrivate *storage, Dispatcher *dispatcher,
const QUuid &id, const QString &name, const QString &issuer,
const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool addChecksum);
quint64 counter, const std::optional<uint> offset, bool addChecksum);
explicit AccountPrivate(const std::function<Account*(AccountPrivate*)> &account,
AccountStoragePrivate *storage, Dispatcher *dispatcher,
const QUuid &id, const QString &name, const QString &issuer,
const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
const QDateTime &epoch, uint timeStep, Account::Hash hash);
void recompute(void);
void setCounter(quint64 counter);
void remove(void);
void acceptCounter(quint64 counter);
void acceptTotpTokens(QString token, QString nextToken, QDateTime validFrom, QDateTime validUntil);
void acceptHotpTokens(QString token, QString nextToken, quint64 validUntil);
void acceptTotpTokens(const QString &token, const QString &nextToken, const QDateTime &validFrom,
const QDateTime &validUntil);
void acceptHotpTokens(const QString &token, const QString &nextToken, quint64 validUntil);
void markForRemoval(void);
bool isStillAlive(void) const;
private:
void setToken(QString token);
void setToken(const QString &token);
void shiftTokens(void);
private:
Q_DISABLE_COPY(AccountPrivate);
@ -108,16 +109,16 @@ namespace accounts
AccountSecret *secret(void) const;
void removeAccounts(const QSet<QString> &accountNames);
void acceptAccountRemoval(const QString &accountName);
Account * acceptHotpAccount(const QUuid &id, const QString &name, const QString &issuer,
Account * acceptHotpAccount(const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool checksum);
Account * acceptTotpAccount(const QUuid &id, const QString &name, const QString &issuer,
quint64 counter, const std::optional<uint> offset, bool checksum);
Account * acceptTotpAccount(const QUuid id, const QString &name, const QString &issuer,
const secrets::EncryptedSecret &secret, uint tokenLength,
uint timeStep, const QDateTime &epoch, Account::Hash hash);
bool addHotp(const std::function<void(SaveHotp*)> &handler,
const QString &name, const QString &issuer,
const QString &secret, uint tokenLength,
quint64 counter, const std::optional<uint> &offset, bool checksum);
quint64 counter, const std::optional<uint> offset, bool checksum);
bool addTotp(const std::function<void(SaveTotp*)> &handler,
const QString &name, const QString &issuer,
const QString &secret, uint tokenLength,
@ -175,8 +176,8 @@ namespace accounts
private:
AccountPrivate * const m_account;
private Q_SLOTS:
void totp(QString otp, QString nextOtp, QDateTime validFrom, QDateTime validUntil);
void hotp(QString otp, QString nextOtp, quint64 validUntil);
void totp(const QString &otp, const QString &nextOtp, const QDateTime &validFrom, const QDateTime &validUntil);
void hotp(const QString &otp, const QString &nextOtp, quint64 validUntil);
};
}