summaryrefslogtreecommitdiffstats
path: root/ui/qt/utils/wireshark_zip_helper.h
blob: 2f8e39f87ef9c8f8248fd3bfcb7aabca1eb86572 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/** @file
 *
 * Definitions for zip / unzip of files
 *
 * Wireshark - Network traffic analyzer
 * By Gerald Combs <gerald@wireshark.org>
 * Copyright 1998 Gerald Combs
 *
 * SPDX-License-Identifier: GPL-2.0-or-later
 */

#ifndef WS_ZIP_HELPER_H
#define WS_ZIP_HELPER_H

#include "config.h"

#include <QDir>

#ifdef HAVE_MINIZIP

#include "minizip/zip.h"

class WiresharkZipHelper
{
public:
    static bool zip(QString zipFile, QStringList files, QString relativeTo = QString());
    static bool unzip(QString zipFile, QString directory, bool (*fileCheck)(QString fileName, int fileSize) = Q_NULLPTR, QString (*cleanName)(QString name) = Q_NULLPTR);

protected:
    static void addFileToZip(zipFile zf, QString filepath, QString fileInZip);

};

#endif

#endif // WS_ZIP_HELPER_H