diff options
Diffstat (limited to 'src/totp/totp.h')
-rw-r--r-- | src/totp/totp.h | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/totp/totp.h b/src/totp/totp.h index d5d8aa679..7d4c78c1d 100644 --- a/src/totp/totp.h +++ b/src/totp/totp.h @@ -20,13 +20,15 @@ #define QTOTP_H #include <QtCore/qglobal.h> +#include <QString> +#include <QMap> class QUrl; -class QTotp +class Totp { public: - QTotp(); + Totp(); static QString parseOtpString(QString rawSecret, quint8& digits, quint8& step); static QString generateTotp(const QByteArray key, quint64 time, const quint8 numDigits, const quint8 step); static QUrl generateOtpString(const QString& secret, @@ -34,10 +36,25 @@ public: const QString& issuer, const QString& username, const QString& algorithm, - const quint8& digits, - const quint8& step); + quint8 digits, + quint8 step); static const quint8 defaultStep; static const quint8 defaultDigits; + struct Encoder + { + QString name; + QString shortName; + QString alphabet; + quint8 digits; + quint8 step; + bool reverse; + }; + static const Encoder defaultEncoder; + // custom encoder values that overload the digits field + static const quint8 ENCODER_STEAM; + static const QMap<quint8, Encoder> encoders; + static const QMap<QString, quint8> shortNameToEncoder; + static const QMap<QString, quint8> nameToEncoder; }; #endif // QTOTP_H |