]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/indexcopy.h
releasing version 0.9.7.8~exp2
[apt.git] / apt-pkg / indexcopy.h
index 7778ae595a49d4f07c1a79d151884f728217f202..e3de1afd97f1f6454d1a20ec43bd8802fadbc164 100644 (file)
 #include <string>
 #include <stdio.h>
 
 #include <string>
 #include <stdio.h>
 
+#ifndef APT_8_CLEANER_HEADERS
 using std::string;
 using std::vector;
 using std::string;
 using std::vector;
+#endif
 
 class pkgTagSection;
 class FileFd;
 class indexRecords;
 class pkgCdromStatus;
 
 
 class pkgTagSection;
 class FileFd;
 class indexRecords;
 class pkgCdromStatus;
 
-class IndexCopy
+class IndexCopy                                                                /*{{{*/
 {
 {
+   /** \brief dpointer placeholder (for later in case we need it) */
+   void *d;
+
    protected:
    
    pkgTagSection *Section;
    
    protected:
    
    pkgTagSection *Section;
    
-   string ChopDirs(string Path,unsigned int Depth);
-   bool ReconstructPrefix(string &Prefix,string OrigPath,string CD,
-                         string File);
-   bool ReconstructChop(unsigned long &Chop,string Dir,string File);
-   void ConvertToSourceList(string CD,string &Path);
-   bool GrabFirst(string Path,string &To,unsigned int Depth);
-   virtual bool GetFile(string &Filename,unsigned long &Size) = 0;
-   virtual bool RewriteEntry(FILE *Target,string File) = 0;
+   std::string ChopDirs(std::string Path,unsigned int Depth);
+   bool ReconstructPrefix(std::string &Prefix,std::string OrigPath,std::string CD,
+                         std::string File);
+   bool ReconstructChop(unsigned long &Chop,std::string Dir,std::string File);
+   void ConvertToSourceList(std::string CD,std::string &Path);
+   bool GrabFirst(std::string Path,std::string &To,unsigned int Depth);
+   virtual bool GetFile(std::string &Filename,unsigned long long &Size) = 0;
+   virtual bool RewriteEntry(FILE *Target,std::string File) = 0;
    virtual const char *GetFileName() = 0;
    virtual const char *Type() = 0;
    
    public:
 
    virtual const char *GetFileName() = 0;
    virtual const char *Type() = 0;
    
    public:
 
-   bool CopyPackages(string CDROM,string Name,vector<string> &List,
+   bool CopyPackages(std::string CDROM,std::string Name,std::vector<std::string> &List,
                     pkgCdromStatus *log);
    virtual ~IndexCopy() {};
 };
                     pkgCdromStatus *log);
    virtual ~IndexCopy() {};
 };
-
-class PackageCopy : public IndexCopy
+                                                                       /*}}}*/
+class PackageCopy : public IndexCopy                                   /*{{{*/
 {
    protected:
    
 {
    protected:
    
-   virtual bool GetFile(string &Filename,unsigned long &Size);
-   virtual bool RewriteEntry(FILE *Target,string File);
+   virtual bool GetFile(std::string &Filename,unsigned long long &Size);
+   virtual bool RewriteEntry(FILE *Target,std::string File);
    virtual const char *GetFileName() {return "Packages";};
    virtual const char *Type() {return "Package";};
    
    virtual const char *GetFileName() {return "Packages";};
    virtual const char *Type() {return "Package";};
    
-   public:
 };
 };
-
-class SourceCopy : public IndexCopy
+                                                                       /*}}}*/
+class SourceCopy : public IndexCopy                                    /*{{{*/
 {
    protected:
    
 {
    protected:
    
-   virtual bool GetFile(string &Filename,unsigned long &Size);
-   virtual bool RewriteEntry(FILE *Target,string File);
+   virtual bool GetFile(std::string &Filename,unsigned long long &Size);
+   virtual bool RewriteEntry(FILE *Target,std::string File);
    virtual const char *GetFileName() {return "Sources";};
    virtual const char *Type() {return "Source";};
    
    virtual const char *GetFileName() {return "Sources";};
    virtual const char *Type() {return "Source";};
    
-   public:
 };
 };
-
-class TranslationsCopy
+                                                                       /*}}}*/
+class TranslationsCopy                                                 /*{{{*/
 {
    protected:
    pkgTagSection *Section;
 
    public:
 {
    protected:
    pkgTagSection *Section;
 
    public:
-   bool CopyTranslations(string CDROM,string Name,vector<string> &List,
+   bool CopyTranslations(std::string CDROM,std::string Name,std::vector<std::string> &List,
                         pkgCdromStatus *log);
 };
                         pkgCdromStatus *log);
 };
-
-
-class SigVerify 
+                                                                       /*}}}*/
+class SigVerify                                                                /*{{{*/
 {
 {
-   bool Verify(string prefix,string file, indexRecords *records);
-   bool CopyMetaIndex(string CDROM, string CDName, 
-                     string prefix, string file);
+   /** \brief dpointer placeholder (for later in case we need it) */
+   void *d;
+
+   bool Verify(std::string prefix,std::string file, indexRecords *records);
+   bool CopyMetaIndex(std::string CDROM, std::string CDName, 
+                     std::string prefix, std::string file);
 
  public:
 
  public:
-   bool CopyAndVerify(string CDROM,string Name,vector<string> &SigList,
-                     vector<string> PkgList,vector<string> SrcList);
+   bool CopyAndVerify(std::string CDROM,std::string Name,std::vector<std::string> &SigList,
+                     std::vector<std::string> PkgList,std::vector<std::string> SrcList);
+
+   /** \brief generates and run the command to verify a file with gpgv */
+   static bool RunGPGV(std::string const &File, std::string const &FileOut,
+                      int const &statusfd, int fd[2]);
+   inline static bool RunGPGV(std::string const &File, std::string const &FileOut,
+                             int const &statusfd = -1) {
+      int fd[2];
+      return RunGPGV(File, FileOut, statusfd, fd);
+   };
 };
 };
-
-
+                                                                       /*}}}*/
 
 #endif
 
 #endif