File indexing completed on 2024-04-21 16:32:41

0001 /*
0002     SPDX-FileCopyrightText: 2001 Shie Erlich <krusader@users.sourceforge.net>
0003     SPDX-FileCopyrightText: 2001 Rafi Yanai <krusader@users.sourceforge.net>
0004     SPDX-FileCopyrightText: 2004-2022 Krusader Krew <https://krusader.org>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 #ifndef KR7ZENCRYPTIONCHECKER_H
0010 #define KR7ZENCRYPTIONCHECKER_H
0011 
0012 #include <signal.h> // for kill
0013 #include <unistd.h> // for setsid, see Kr7zEncryptionChecker::setupChildProcess
0014 
0015 #include <KCoreAddons/KProcess>
0016 
0017 /**
0018  * Used by ArcHandler.
0019  */
0020 class Kr7zEncryptionChecker : public KProcess
0021 {
0022     Q_OBJECT
0023 
0024 public:
0025     Kr7zEncryptionChecker();
0026 
0027 protected:
0028     void setupChildProcess() override;
0029 
0030 public slots:
0031     void receivedOutput();
0032     bool isEncrypted();
0033 
0034 private:
0035     QString fileName;
0036     bool encrypted;
0037     QString lastData;
0038 };
0039 
0040 #endif // KR7ZENCRYPTIONCHECKER_H