diff --git a/src/fs/luks.cpp b/src/fs/luks.cpp index 2f47fde..e947f86 100644 --- a/src/fs/luks.cpp +++ b/src/fs/luks.cpp @@ -65,6 +65,22 @@ luks::~luks() delete m_innerFs; } +void luks::init() +{ +// m_Create = findExternal(QStringLiteral("cryptsetup")) ? cmdSupportFileSystem : cmdSupportNone; + m_SetLabel = cmdSupportNone; + m_GetLabel = cmdSupportFileSystem; + m_UpdateUUID = findExternal(QStringLiteral("cryptsetup")) ? cmdSupportFileSystem : cmdSupportNone; + m_Grow = findExternal(QStringLiteral("cryptsetup")) ? cmdSupportFileSystem : cmdSupportNone; + m_Shrink = m_Grow; + m_Check = cmdSupportCore; + m_Copy = cmdSupportCore; + m_Move = cmdSupportCore; + m_Backup = cmdSupportCore; + m_GetUsed = cmdSupportNone; // libparted does not support LUKS, we do this as a special case + m_GetUUID = findExternal(QStringLiteral("cryptsetup")) ? cmdSupportFileSystem : cmdSupportNone; +} + bool luks::supportToolFound() const { m_cryptsetupFound = findExternal(QStringLiteral("cryptsetup")) ? cmdSupportFileSystem : cmdSupportNone; diff --git a/src/fs/luks.h b/src/fs/luks.h index 1a1f4f4..9c80f54 100644 --- a/src/fs/luks.h +++ b/src/fs/luks.h @@ -44,6 +44,7 @@ public: virtual ~luks(); public: + void init() override; virtual qint64 readUsedCapacity(const QString& deviceNode) const override; virtual CommandSupportType supportGetUsed() const override {