]> git.saurik.com Git - apt.git/blobdiff - apt-inst/contrib/extracttar.h
Merge branch 'debian/sid' into debian/experimental
[apt.git] / apt-inst / contrib / extracttar.h
index aaca987f279f72430448076bec0f4423a7be4c6c..472e018f4d3c18eb30a98c493ee2d610dd1e69c6 100644 (file)
 #ifndef PKGLIB_EXTRACTTAR_H
 #define PKGLIB_EXTRACTTAR_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/extracttar.h"
-#endif
-
 #include <apt-pkg/fileutl.h>
+
+#include <string>
+
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/dirstream.h>
+#include <algorithm>
+using std::min;
+#endif
+
+class pkgDirStream;
 
 class ExtractTar
 {
@@ -34,10 +39,11 @@ class ExtractTar
                   GNU_LongLink = 'K',GNU_LongName = 'L'};
 
    FileFd &File;
-   unsigned long MaxInSize;
+   unsigned long long MaxInSize;
    int GZPid;
    FileFd InFd;
    bool Eof;
+   std::string DecompressProg;
    
    // Fork and reap gzip
    bool StartGzip();
@@ -47,7 +53,7 @@ class ExtractTar
 
    bool Go(pkgDirStream &Stream);
    
-   ExtractTar(FileFd &Fd,unsigned long Max);
+   ExtractTar(FileFd &Fd,unsigned long long Max,std::string DecompressionProgram);
    virtual ~ExtractTar();
 };