26#include "string_utils.h"
29#include <archive_entry.h>
32#if ARCHIVE_VERSION_NUMBER >= 3000000
33#define INIT_ARCHIVE(ar) \
34 archive_read_support_filter_gzip((ar)); \
35 archive_read_support_filter_bzip2((ar)); \
36 archive_read_support_filter_xz((ar)); \
37 archive_read_support_filter_zstd((ar)); \
38 archive_read_support_format_tar((ar))
39#define FREE_ARCHIVE(ar) \
40 archive_read_free((ar))
42#define INIT_ARCHIVE(ar) \
43 archive_read_support_compression_gzip((ar)); \
44 archive_read_support_compression_bzip2((ar)); \
45 archive_read_support_compression_xz((ar)); \
46 archive_read_support_format_tar((ar))
47#define FREE_ARCHIVE(ar) \
48 archive_read_finish((ar))
51#define DEFAULT_BYTES_PER_BLOCK (20 * 512)
52#define METAFILE ".META"
53#define INFOFILE ".INFO"
54#define MTREEFILE ".MTREE"
61CANNOT_FIND_MTREE_FILE,
76 virtual void treatErrors(
const std::string& s)
const;
84 unsigned int long size();
85 std::set<std::string> setofFiles();
86 std::set<std::string> listofDependencies();
87 std::set<std::string> listofAlias();
88 std::set<std::pair<std::string,time_t> > listofDependenciesBuildDate();
90 std::string version();
92 std::string description();
94 std::string contributors();
95 std::string maintainer();
96 std::string collection();
97 std::string packager();
98 std::string builddate();
101 std::string namebuildn();
102 std::string epochBuildDate();
107 std::string getPackageName();
108 std::string getPackageArch();
109 std::vector<std::string> extractFileContent(
const char * fileName);
110 void getRunTimeDependencies();
111 void getRunTimeDependenciesEpoch();
114 unsigned int long m_size;
116 std::vector<std::string> m_contentMtree;
117 std::vector<std::string> m_contentMeta;
118 std::vector<std::string> m_contentInfo;
120 std::set<std::string> m_rtDependenciesList;
121 std::set<std::pair<std::string,time_t> > m_rtDependenciesEpochList;
122 std::string m_fileName;
123 std::string m_packageName;
124 std::string m_packageArch;
125 std::set<std::string> m_filesList;
126 std::set<std::string> m_aliasList;
128 archive_error m_actualError;
131int openArchive(
const char *fileName);
Definition: archive_utils.h:69