]> git.saurik.com Git - apt.git/blobdiff - apt-inst/deb/debfile.h
Use some semantically more correct buffer operations
[apt.git] / apt-inst / deb / debfile.h
index d94b744467760d24c0ddbdeb8062296def5fc9c2..02ebaae2e5481539270bc40bd96c31ffe503f5d6 100644 (file)
 #include <apt-pkg/arfile.h>
 #include <apt-pkg/dirstream.h>
 #include <apt-pkg/tagfile.h>
 #include <apt-pkg/arfile.h>
 #include <apt-pkg/dirstream.h>
 #include <apt-pkg/tagfile.h>
+#include <apt-pkg/macros.h>
+
+#include <string>
+
+#ifndef APT_8_CLEANER_HEADERS
+#include <apt-pkg/md5.h>
+#endif
+#ifndef APT_10_CLEANER_HEADERS
 #include <apt-pkg/pkgcache.h>
 #include <apt-pkg/pkgcache.h>
+#endif
 
 class FileFd;
 
 
 class FileFd;
 
@@ -44,6 +53,7 @@ class debDebFile
    class ControlExtract;
    class MemControlExtract;
 
    class ControlExtract;
    class MemControlExtract;
 
+   bool ExtractTarMember(pkgDirStream &Stream, const char *Name);
    bool ExtractArchive(pkgDirStream &Stream);
    const ARArchive::Member *GotoMember(const char *Name);
    inline FileFd &GetFile() {return File;};
    bool ExtractArchive(pkgDirStream &Stream);
    const ARArchive::Member *GotoMember(const char *Name);
    inline FileFd &GetFile() {return File;};
@@ -55,7 +65,7 @@ class debDebFile::ControlExtract : public pkgDirStream
 {
    public:
    
 {
    public:
    
-   virtual bool DoItem(Item &Itm,int &Fd);
+   virtual bool DoItem(Item &Itm,int &Fd) APT_OVERRIDE;
 };
 
 class debDebFile::MemControlExtract : public pkgDirStream
 };
 
 class debDebFile::MemControlExtract : public pkgDirStream
@@ -70,15 +80,14 @@ class debDebFile::MemControlExtract : public pkgDirStream
    std::string Member;
    
    // Members from DirStream
    std::string Member;
    
    // Members from DirStream
-   virtual bool DoItem(Item &Itm,int &Fd);
+   virtual bool DoItem(Item &Itm,int &Fd) APT_OVERRIDE;
    virtual bool Process(Item &Itm,const unsigned char *Data,
    virtual bool Process(Item &Itm,const unsigned char *Data,
-                       unsigned long Size,unsigned long Pos);
-   
+                       unsigned long long Size,unsigned long long Pos) APT_OVERRIDE;
 
    // Helpers
    bool Read(debDebFile &Deb);
 
    // Helpers
    bool Read(debDebFile &Deb);
-   bool TakeControl(const void *Data,unsigned long Size);
-      
+   bool TakeControl(const void *Data,unsigned long long Size);
+
    MemControlExtract() : IsControl(false), Control(0), Length(0), Member("control") {};
    MemControlExtract(std::string Member) : IsControl(false), Control(0), Length(0), Member(Member) {};
    ~MemControlExtract() {delete [] Control;};   
    MemControlExtract() : IsControl(false), Control(0), Length(0), Member("control") {};
    MemControlExtract(std::string Member) : IsControl(false), Control(0), Length(0), Member(Member) {};
    ~MemControlExtract() {delete [] Control;};