diff options
Diffstat (limited to 'src/keys/FileKey.h')
-rw-r--r-- | src/keys/FileKey.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/src/keys/FileKey.h b/src/keys/FileKey.h index 7a9b1caf0..2aa48909b 100644 --- a/src/keys/FileKey.h +++ b/src/keys/FileKey.h @@ -1,4 +1,5 @@ /* +* Copyright (C) 2017 KeePassXC Team <team@keepassxc.org> * Copyright (C) 2011 Felix Geyer <debfx@fobos.de> * * This program is free software: you can redistribute it and/or modify @@ -24,16 +25,24 @@ class QIODevice; -class FileKey : public Key +class FileKey: public Key { public: - FileKey(); + enum Type { + None, + Hashed, + KeePass2XML, + FixedBinary, + FixedBinaryHex + }; + bool load(QIODevice* device); bool load(const QString& fileName, QString* errorMsg = nullptr); - QByteArray rawKey() const; - FileKey* clone() const; - static void create(QIODevice* device); - static bool create(const QString& fileName, QString* errorMsg = nullptr); + QByteArray rawKey() const override; + FileKey* clone() const override; + Type type() const; + static void create(QIODevice* device, int size = 128); + static bool create(const QString& fileName, QString* errorMsg = nullptr, int size = 128); private: bool loadXml(QIODevice* device); @@ -44,6 +53,7 @@ private: bool loadHashed(QIODevice* device); QByteArray m_key; + Type m_type = None; }; #endif // KEEPASSX_FILEKEY_H |