summaryrefslogtreecommitdiffstats
path: root/cmdline/apt-extracttemplates.h
diff options
context:
space:
mode:
Diffstat (limited to 'cmdline/apt-extracttemplates.h')
-rw-r--r--cmdline/apt-extracttemplates.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/cmdline/apt-extracttemplates.h b/cmdline/apt-extracttemplates.h
new file mode 100644
index 0000000..bbd926e
--- /dev/null
+++ b/cmdline/apt-extracttemplates.h
@@ -0,0 +1,49 @@
+// -*- mode: cpp; mode: fold -*-
+// Description /*{{{*/
+/* ######################################################################
+
+ apt-extracttemplate - tool to extract template and config data
+
+ ##################################################################### */
+ /*}}}*/
+#ifndef _APTEXTRACTTEMPLATE_H_
+#define _APTEXTRACTTEMPLATE_H_
+
+#include <apt-pkg/dirstream.h>
+#include <apt-pkg/fileutl.h>
+
+#include <string>
+
+class pkgCache;
+
+class DebFile : public pkgDirStream
+{
+ FileFd File;
+ char *Control;
+ unsigned long ControlLen;
+
+public:
+ explicit DebFile(const char *FileName);
+ ~DebFile();
+ bool DoItem(Item &I, int &fd) APT_OVERRIDE;
+ bool Process(pkgDirStream::Item &I, const unsigned char *data,
+ unsigned long long size, unsigned long long pos) APT_OVERRIDE;
+
+ bool Go();
+ bool ParseInfo();
+
+ static std::string GetInstalledVer(const std::string &package);
+
+ std::string Package;
+ std::string Version;
+ std::string DepVer, PreDepVer;
+ unsigned int DepOp, PreDepOp;
+
+ char *Config;
+ char *Template;
+
+ static pkgCache *Cache;
+ enum { None, IsControl, IsConfig, IsTemplate } Which;
+};
+
+#endif