#include <string>
+#include <apt-pkg/macros.h>
#ifndef APT_8_CLEANER_HEADERS
#include <apt-pkg/fileutl.h>
#endif
unsigned long long Size;
// Location of the data.
+#if APT_PKG_ABI >= 413
unsigned long long Start;
+#else
+ unsigned long Start;
+#endif
Member *Next;
Member() : Start(0), Next(0) {};
// ExtractTar::ExtractTar - Constructor /*{{{*/
// ---------------------------------------------------------------------
/* */
+#if APT_PKG_ABI >= 413
ExtractTar::ExtractTar(FileFd &Fd,unsigned long long Max,string DecompressionProgram)
: File(Fd), MaxInSize(Max), DecompressProg(DecompressionProgram)
+#else
+ExtractTar::ExtractTar(FileFd &Fd,unsigned long Max,string DecompressionProgram)
+ : File(Fd), MaxInSize(Max), DecompressProg(DecompressionProgram)
+#endif
{
GZPid = -1;
Eof = false;
#define PKGLIB_EXTRACTTAR_H
#include <apt-pkg/fileutl.h>
+#include <apt-pkg/macros.h>
#include <string>
GNU_LongLink = 'K',GNU_LongName = 'L'};
FileFd &File;
+#if APT_PKG_ABI >= 413
unsigned long long MaxInSize;
+#else
+ unsigned long MaxInSize;
+#endif
int GZPid;
FileFd InFd;
bool Eof;
public:
bool Go(pkgDirStream &Stream);
-
+
+#if APT_PKG_ABI >= 413
ExtractTar(FileFd &Fd,unsigned long long Max,std::string DecompressionProgram);
+#else
+ ExtractTar(FileFd &Fd,unsigned long Max,std::string DecompressionProgram);
+#endif
virtual ~ExtractTar();
};
/* Just memcopy the block from the tar extractor and put it in the right
place in the pre-allocated memory block. */
bool debDebFile::MemControlExtract::Process(Item &/*Itm*/,const unsigned char *Data,
+#if APT_PKG_ABI >= 413
unsigned long long Size,unsigned long long Pos)
+#else
+ unsigned long Size,unsigned long Pos)
+#endif
{
memcpy(Control + Pos, Data,Size);
return true;
// ---------------------------------------------------------------------
/* The given memory block is loaded into the parser and parsed as a control
record. */
+#if APT_PKG_ABI >= 413
bool debDebFile::MemControlExtract::TakeControl(const void *Data,unsigned long long Size)
+#else
+bool debDebFile::MemControlExtract::TakeControl(const void *Data,unsigned long Size)
+#endif
{
delete [] Control;
Control = new char[Size+2];
#include <apt-pkg/arfile.h>
#include <apt-pkg/dirstream.h>
#include <apt-pkg/tagfile.h>
+#include <apt-pkg/macros.h>
#include <string>
// Members from DirStream
virtual bool DoItem(Item &Itm,int &Fd);
virtual bool Process(Item &Itm,const unsigned char *Data,
+#if APT_PKG_ABI >= 413
unsigned long long Size,unsigned long long Pos);
-
+#else
+ unsigned long Size,unsigned long Pos);
+#endif
// Helpers
bool Read(debDebFile &Deb);
+#if APT_PKG_ABI >= 413
bool TakeControl(const void *Data,unsigned long long Size);
-
+#else
+ bool TakeControl(const void *Data,unsigned long Size);
+#endif
+
MemControlExtract() : IsControl(false), Control(0), Length(0), Member("control") {};
MemControlExtract(std::string Member) : IsControl(false), Control(0), Length(0), Member(Member) {};
~MemControlExtract() {delete [] Control;};
#ifndef PKGLIB_DIRSTREAM_H
#define PKGLIB_DIRSTREAM_H
+#include <apt-pkg/macros.h>
class pkgDirStream
{
Directory, FIFO} Type;
char *Name;
char *LinkTarget;
+#if APT_PKG_ABI >= 413
unsigned long long Size;
+#endif
unsigned long Mode;
unsigned long UID;
unsigned long GID;
+#if APT_PKG_ABI < 413
+ unsigned long Size;
+#endif
unsigned long MTime;
unsigned long Major;
unsigned long Minor;
virtual bool DoItem(Item &Itm,int &Fd);
virtual bool Fail(Item &Itm,int Fd);
virtual bool FinishedFile(Item &Itm,int Fd);
+#if APT_PKG_ABI >= 413
virtual bool Process(Item &/*Itm*/,const unsigned char * /*Data*/,
unsigned long long /*Size*/,unsigned long long /*Pos*/) {return true;};
-
+#else
+ virtual bool Process(Item &/*Itm*/,const unsigned char * /*Data*/,
+ unsigned long /*Size*/,unsigned long /*Pos*/) {return true;};
+#endif
virtual ~pkgDirStream() {};
};