Sophie

Sophie

distrib > Mageia > 7 > x86_64 > by-pkgid > 133738fd1ec1a496d35c2af5039a0eb4 > files > 11

apt-0.5.15lorg3.94-32.mga7.src.rpm

diff -up apt-0.5.15lorg3.94pt/apt-pkg/rpm/rapttypes.h.rpm414 apt-0.5.15lorg3.94pt/apt-pkg/rpm/rapttypes.h
--- apt-0.5.15lorg3.94pt/apt-pkg/rpm/rapttypes.h.rpm414	2009-02-24 11:46:07.000000000 +0100
+++ apt-0.5.15lorg3.94pt/apt-pkg/rpm/rapttypes.h	2017-09-01 02:10:06.182343306 +0200
@@ -6,6 +6,8 @@
  * C happily converts enum to int etc automatically, C++ doesn't...
  */
 
+#include "config.h"
+
 #ifdef HAVE_RPM_RPMTYPES_H
 #include <rpm/rpmtypes.h>
 #include <rpm/rpmds.h>
diff -up apt-0.5.15lorg3.94pt/apt-pkg/rpm/rpmhandler.h.rpm414 apt-0.5.15lorg3.94pt/apt-pkg/rpm/rpmhandler.h
--- apt-0.5.15lorg3.94pt/apt-pkg/rpm/rpmhandler.h.rpm414	2017-09-01 00:30:45.482477437 +0200
+++ apt-0.5.15lorg3.94pt/apt-pkg/rpm/rpmhandler.h	2017-09-01 02:14:37.264531097 +0200
@@ -10,6 +10,8 @@
 #ifndef PKGLIB_RPMHANDLER_H
 #define PKGLIB_RPMHANDLER_H
 
+#include "config.h"
+
 #include <apt-pkg/aptconf.h>
 #include <apt-pkg/fileutl.h>
 #include <apt-pkg/pkgrecords.h>
diff -up apt-0.5.15lorg3.94pt/tools/genpkglist.cc.rpm414 apt-0.5.15lorg3.94pt/tools/genpkglist.cc
--- apt-0.5.15lorg3.94pt/tools/genpkglist.cc.rpm414	2017-09-01 00:30:46.617469648 +0200
+++ apt-0.5.15lorg3.94pt/tools/genpkglist.cc	2017-09-01 02:26:30.588778802 +0200
@@ -108,21 +108,27 @@ static void copyStrippedFileList(Header
    raptTagCount count1, count2, count3;
    char **dirnames = NULL, **basenames = NULL;
    raptInt *dirindexes = NULL;
-   raptTagData dirnameval = NULL, basenameval = NULL, dirindexval = NULL;
+//   raptTagData dirnameval = NULL, basenameval = NULL, dirindexval = NULL;
    char **dnames, **bnames;
    raptInt *dindexes;
    bool res1, res2, res3;
+   rpmtd td_dirnames = rpmtdNew();
+   rpmtd td_basenames = rpmtdNew();
+   rpmtd td_dirindexes = rpmtdNew();
    
 #define FREE(a) if (a) free(a);
-   res1 = headerGetRawEntry(header, RPMTAG_DIRNAMES, &type1, 
-			 &dirnameval, &count1);
-   res2 = headerGetRawEntry(header, RPMTAG_BASENAMES, &type2, 
-			 &basenameval, &count2);
-   res3 = headerGetRawEntry(header, RPMTAG_DIRINDEXES, &type3, 
-			 &dirindexval, &count3);
-   dirnames = (char **)dirnameval;
-   basenames = (char **)basenameval;
-   dirindexes = (raptInt *)dirindexval;
+   res1 = headerGet(header, RPMTAG_DIRNAMES, td_dirnames, HEADERGET_RAW);
+   res2 = headerGet(header, RPMTAG_BASENAMES, td_basenames, HEADERGET_RAW);
+   res3 = headerGet(header, RPMTAG_DIRINDEXES, td_dirindexes, HEADERGET_RAW);
+//   res1 = headerGetRawEntry(header, RPMTAG_DIRNAMES, &type1, 
+//			 &dirnameval, &count1);
+//   res2 = headerGetRawEntry(header, RPMTAG_BASENAMES, &type2, 
+//			 &basenameval, &count2);
+//   res3 = headerGetRawEntry(header, RPMTAG_DIRINDEXES, &type3, 
+//			 &dirindexval, &count3);
+   dirnames = (char **)td_dirnames->data;
+   basenames = (char **)td_basenames->data;
+   dirindexes = (raptInt *)td_dirindexes->data;
    
    if (res1!= 1 || res2!= 1 || res3!= 1 ) {
       FREE(dirnames);
@@ -180,15 +186,23 @@ static void copyStrippedFileList(Header
       return;
    }
    
-   headerAddEntry(newHeader, RPMTAG_DIRNAMES, type1, dnames, i2);
+   headerPutStringArray(newHeader, RPMTAG_DIRNAMES, (char const **)dnames, i2);
+   headerPutStringArray(newHeader, RPMTAG_BASENAMES, (char const **)bnames, i1);
+   headerPutUint32(newHeader, RPMTAG_DIRINDEXES, dindexes, i1);
+
+   td_dirnames = rpmtdFree(td_dirnames);
+   td_basenames = rpmtdFree(td_basenames);
+   td_dirindexes = rpmtdFree(td_dirindexes);
+   
+//   headerAddEntry(newHeader, RPMTAG_DIRNAMES, type1, dnames, i2);
    
-   headerAddEntry(newHeader, RPMTAG_BASENAMES, type2, bnames, i1);
+//   headerAddEntry(newHeader, RPMTAG_BASENAMES, type2, bnames, i1);
    
-   headerAddEntry(newHeader, RPMTAG_DIRINDEXES, type3, dindexes, i1);
+//   headerAddEntry(newHeader, RPMTAG_DIRINDEXES, type3, dindexes, i1);
    
-   FREE(dirnames);
-   FREE(basenames);
-   FREE(dindexes);
+//   FREE(dirnames);
+//   FREE(basenames);
+//   FREE(dindexes);
 }
 
 
@@ -229,6 +243,7 @@ bool copyFields(Header h, Header newHead
 {
    int i;
    raptInt size[1];
+   rpmtd td = rpmtdNew();
 
    size[0] = filesize;
    
@@ -241,35 +256,50 @@ bool copyFields(Header h, Header newHead
       
       // Copy raw entry, so that internationalized strings
       // will get copied correctly.
-      res = headerGetRawEntry(h, (raptTag) tags[i], &type, &data, &count);
+      res = headerGet(h, (raptTag) tags[i], td, HEADERGET_RAW);
+//      res = headerGetRawEntry(h, (raptTag) tags[i], &type, &data, &count);
       if (res != 1)
 	 continue;
-      headerAddEntry(newHeader, (raptTag) tags[i], type, data, count);
+      res = headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//      headerAddEntry(newHeader, (raptTag) tags[i], type, data, count);
    }
+   td = rpmtdFree(td);
  
    if (fullFileList) {
       raptTagType type1, type2, type3;
-      raptTagCount count1, count2, count3;
-      char **dnames, **bnames, **dindexes;
-      raptTagData dnameval, bnameval, dindexval;
+//      raptTagCount count1, count2, count3;
+//      char **dnames, **bnames, **dindexes;
+//      raptTagData dnameval, bnameval, dindexval;
       int res;
-   
-      res = headerGetEntry(h, RPMTAG_DIRNAMES, (rpm_tagtype_t*)&type1, 
-			   &dnameval, &count1);
-      res = headerGetEntry(h, RPMTAG_BASENAMES, (rpm_tagtype_t*)&type2, 
-			   &bnameval, &count2);
-      res = headerGetEntry(h, RPMTAG_DIRINDEXES, (rpm_tagtype_t*)&type3, 
-			   &dindexval, &count3);
-
-      dnames = (char **)dnameval;
-      bnames = (char **)bnameval;
-      dindexes = (char **)dindexval;
+      rpmtd td_dirnames = rpmtdNew();
+      rpmtd td_basenames = rpmtdNew();
+      rpmtd td_dirindexes = rpmtdNew();
+   
+      res = headerGet(h, RPMTAG_DIRNAMES, td_dirnames, HEADERGET_DEFAULT);
+      res = headerGet(h, RPMTAG_BASENAMES, td_basenames, HEADERGET_DEFAULT);
+      res = headerGet(h, RPMTAG_DIRINDEXES, td_dirindexes, HEADERGET_DEFAULT);
+//      res = headerGetEntry(h, RPMTAG_DIRNAMES, (rpm_tagtype_t*)&type1, 
+//			   &dnameval, &count1);
+//      res = headerGetEntry(h, RPMTAG_BASENAMES, (rpm_tagtype_t*)&type2, 
+//			   &bnameval, &count2);
+//      res = headerGetEntry(h, RPMTAG_DIRINDEXES, (rpm_tagtype_t*)&type3, 
+//			   &dindexval, &count3);
+
+//      dnames = (char **)dnameval;
+//      bnames = (char **)bnameval;
+//      dindexes = (char **)dindexval;
 
       if (res == 1) {
-	 headerAddEntry(newHeader, RPMTAG_DIRNAMES, type1, dnames, count1);
-	 headerAddEntry(newHeader, RPMTAG_BASENAMES, type2, bnames, count2);
-	 headerAddEntry(newHeader, RPMTAG_DIRINDEXES, type3, dindexes, count3);
+	 headerPut(newHeader, td_dirnames, HEADERPUT_DEFAULT);
+	 headerPut(newHeader, td_basenames, HEADERPUT_DEFAULT);
+	 headerPut(newHeader, td_dirindexes, HEADERPUT_DEFAULT);
+//	 headerAddEntry(newHeader, RPMTAG_DIRNAMES, type1, dnames, count1);
+//	 headerAddEntry(newHeader, RPMTAG_BASENAMES, type2, bnames, count2);
+//	 headerAddEntry(newHeader, RPMTAG_DIRINDEXES, type3, dindexes, count3);
       }
+      td_dirnames = rpmtdFree(td_dirnames);
+      td_basenames = rpmtdFree(td_basenames);
+      td_dirindexes = rpmtdFree(td_dirindexes);
    } else {
        copyStrippedFileList(h, newHeader);
    }
@@ -279,49 +309,77 @@ bool copyFields(Header h, Header newHead
       raptTagType type;
       raptTagCount count;
       raptTagData srpmval, nameval;
-      char *srpm, *name;
+      char const *srpm, *name;
       int res;
+      rpmtd	td_name = rpmtdNew();
+      rpmtd	td_srpm = rpmtdNew();
       
-      res = headerGetEntry(h, RPMTAG_NAME, (rpm_tagtype_t*)&type, 
-			   &nameval, &count);
-      res = headerGetEntry(h, RPMTAG_SOURCERPM, (rpm_tagtype_t*)&type, 
-			   &srpmval, &count);
-      name = (char *)nameval;
-      srpm = (char *)srpmval;
+      res = headerGet(h, RPMTAG_NAME, td_name, HEADERGET_DEFAULT);
+      res = headerGet(h, RPMTAG_SOURCERPM, td_srpm, HEADERGET_DEFAULT);
+//      res = headerGetEntry(h, RPMTAG_NAME, (rpm_tagtype_t*)&type, 
+//			   &nameval, &count);
+//      res = headerGetEntry(h, RPMTAG_SOURCERPM, (rpm_tagtype_t*)&type, 
+//			   &srpmval, &count);
+      name = rpmtdNextString(td_name);
+      srpm = rpmtdNextString(td_srpm);
 
       if (res == 1) {
 	 fprintf(idxfile, "%s %s\n", srpm, name);
       }
    }
+   {
    // our additional tags
-   headerAddEntry(newHeader, CRPMTAG_DIRECTORY, RPM_STRING_TYPE,
-		  directory, 1);
-   headerAddEntry(newHeader, CRPMTAG_FILENAME, RPM_STRING_TYPE, 
-		  filename, 1);
-   headerAddEntry(newHeader, CRPMTAG_FILESIZE, RPM_INT32_TYPE,
-		  size, 1);
+   rpmtd	td_directory = rpmtdNew();
+   rpmtd	td_filename = rpmtdNew();
+   rpmtd	td_filesize = rpmtdNew();
+   rpmtdFromString(td_directory, CRPMTAG_DIRECTORY, directory);
+   rpmtdFromString(td_filename, CRPMTAG_FILENAME, filename);
+   rpmtdFromUint32(td_filesize, CRPMTAG_FILESIZE, size, 1);
+   headerPut(newHeader, td_directory, HEADERPUT_DEFAULT);
+   headerPut(newHeader, td_filename, HEADERPUT_DEFAULT);
+   headerPut(newHeader, td_filesize, HEADERPUT_DEFAULT);
+   td_directory = rpmtdFree(td_directory);
+   td_filename = rpmtdFree(td_filename);
+   td_filesize = rpmtdFree(td_filesize);
+   }
+//   headerAddEntry(newHeader, CRPMTAG_DIRECTORY, RPM_STRING_TYPE,
+//		  directory, 1);
+//   headerAddEntry(newHeader, CRPMTAG_FILENAME, RPM_STRING_TYPE, 
+//		  filename, 1);
+//   headerAddEntry(newHeader, CRPMTAG_FILESIZE, RPM_INT32_TYPE,
+//		  size, 1);
       
    // update description tags
    if (updateInfo.find(string(filename)) != updateInfo.end()) {
       const char *tmp;
       string name = string(filename);
+      td = rpmtdNew();
       
       tmp = updateInfo[name].summary.c_str();
-      headerAddEntry(newHeader, CRPMTAG_UPDATE_SUMMARY,
-		     RPM_STRING_TYPE,
-		     tmp, 1);
+      rpmtdFromString(td, CRPMTAG_UPDATE_SUMMARY, tmp);
+      headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//      headerAddEntry(newHeader, CRPMTAG_UPDATE_SUMMARY,
+//		     RPM_STRING_TYPE,
+//		     tmp, 1);
       tmp = updateInfo[name].url.c_str();
-      headerAddEntry(newHeader, CRPMTAG_UPDATE_URL,
-		     RPM_STRING_TYPE,
-		     tmp, 1);
+      rpmtdFromString(td, CRPMTAG_UPDATE_URL, tmp);
+      headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//      headerAddEntry(newHeader, CRPMTAG_UPDATE_URL,
+//		     RPM_STRING_TYPE,
+//		     tmp, 1);
       tmp = updateInfo[name].date.c_str();
-      headerAddEntry(newHeader, CRPMTAG_UPDATE_DATE,
-		     RPM_STRING_TYPE,
-		     tmp, 1);
+      rpmtdFromString(td, CRPMTAG_UPDATE_DATE, tmp);
+      headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//      headerAddEntry(newHeader, CRPMTAG_UPDATE_DATE,
+//		     RPM_STRING_TYPE,
+//		     tmp, 1);
       tmp = updateInfo[name].importance.c_str();
-      headerAddEntry(newHeader, CRPMTAG_UPDATE_IMPORTANCE,
-		     RPM_STRING_TYPE,
-		     tmp, 1);
+      rpmtdFromString(td, CRPMTAG_UPDATE_IMPORTANCE, tmp);
+      headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//      headerAddEntry(newHeader, CRPMTAG_UPDATE_IMPORTANCE,
+//		     RPM_STRING_TYPE,
+//		     tmp, 1);
+      td = rpmtdFree(td);
    }
    
    return true;
@@ -549,7 +607,11 @@ int main(int argc, char ** argv)
 
 	    md5cache->MD5ForFile(string(dirEntries[entry_cur]->d_name), 
 				 sb.st_mtime, md5);
-	    headerAddEntry(newHeader, CRPMTAG_MD5, RPM_STRING_TYPE, md5, 1);
+	    rpmtd td = rpmtdNew();
+	    rpmtdFromString(td, CRPMTAG_MD5, md5);
+	    headerPut(newHeader, td, HEADERPUT_DEFAULT);
+	    td = rpmtdFree(td);
+//	    headerAddEntry(newHeader, CRPMTAG_MD5, RPM_STRING_TYPE, md5, 1);
 
 	    headerWrite(outfd, newHeader, HEADER_MAGIC_YES);
 	    
diff -up apt-0.5.15lorg3.94pt/tools/gensrclist.cc.rpm414 apt-0.5.15lorg3.94pt/tools/gensrclist.cc
--- apt-0.5.15lorg3.94pt/tools/gensrclist.cc.rpm414	2009-02-24 11:46:07.000000000 +0100
+++ apt-0.5.15lorg3.94pt/tools/gensrclist.cc	2017-09-01 02:32:29.008391312 +0200
@@ -302,6 +302,7 @@ int main(int argc, char ** argv)
 	    Header newHeader;
 	    int i;
 	    bool foundInIndex;
+	    rpmtd td = rpmtdNew();
 	    
 	    newHeader = headerNew();
 	    
@@ -314,29 +315,46 @@ int main(int argc, char ** argv)
 	       
 	       // Copy raw entry, so that internationalized strings
 	       // will get copied correctly.
-	       res = headerGetRawEntry(h, (raptTag) tags[i], &type, &data, &count);
+	       res = headerGet(h, tags[i], td, HEADERGET_RAW);
+//	       res = headerGetRawEntry(h, (raptTag) tags[i], &type, &data, &count);
 	       if (res != 1)
 		  continue;
-	       headerAddEntry(newHeader, (raptTag) tags[i], type, data, count);
+	       headerPut(newHeader, td, HEADERPUT_DEFAULT);
+//	       headerAddEntry(newHeader, (raptTag) tags[i], type, data, count);
 	    }
 	    
 	    
 	    // our additional tags
-	    headerAddEntry(newHeader, CRPMTAG_DIRECTORY, RPM_STRING_TYPE,
-			   srpmdir.c_str(), 1);
+	    {
+	    rpmtd	td_directory = rpmtdNew();
+	    rpmtd	td_filename = rpmtdNew();
+	    rpmtd	td_filesize = rpmtdNew();
+	    rpmtdFromString(td_directory, CRPMTAG_DIRECTORY, srpmdir.c_str());
+	    rpmtdFromString(td_filename, CRPMTAG_FILENAME, dirEntries[entry_cur]->d_name);
+	    rpmtdFromUint32(td_filesize, CRPMTAG_FILESIZE, size, 1);
+	    headerPut(newHeader, td_directory, HEADERPUT_DEFAULT);
+	    headerPut(newHeader, td_filename, HEADERPUT_DEFAULT);
+	    headerPut(newHeader, td_filesize, HEADERPUT_DEFAULT);
+	    td_directory = rpmtdFree(td_directory);
+	    td_filename = rpmtdFree(td_filename);
+	    td_filesize = rpmtdFree(td_filesize);
+	    }
+//	    headerAddEntry(newHeader, CRPMTAG_DIRECTORY, RPM_STRING_TYPE,
+//			   srpmdir.c_str(), 1);
 	    
-	    headerAddEntry(newHeader, CRPMTAG_FILENAME, RPM_STRING_TYPE, 
-			   dirEntries[entry_cur]->d_name, 1);
-	    headerAddEntry(newHeader, CRPMTAG_FILESIZE, RPM_INT32_TYPE,
-			   size, 1);
+//	    headerAddEntry(newHeader, CRPMTAG_FILENAME, RPM_STRING_TYPE, 
+//			   dirEntries[entry_cur]->d_name, 1);
+//	    headerAddEntry(newHeader, CRPMTAG_FILESIZE, RPM_INT32_TYPE,
+//			   size, 1);
 	    
 	    {
 	       char md5[34];
 	       
 	       md5cache->MD5ForFile(dirEntries[entry_cur]->d_name, sb.st_mtime, md5);
 	       
-	       headerAddEntry(newHeader, CRPMTAG_MD5, RPM_STRING_TYPE,
-			      md5, 1);
+	       headerPutString(newHeader, CRPMTAG_MD5, md5);
+//	       headerAddEntry(newHeader, CRPMTAG_MD5, RPM_STRING_TYPE,
+//			      md5, 1);
 	    }
 	    
 	    foundInIndex = false;
@@ -358,8 +376,9 @@ int main(int argc, char ** argv)
 	       }
 	       
 	       if (count) {
-		  headerAddEntry(newHeader, CRPMTAG_BINARY,
-				 RPM_STRING_ARRAY_TYPE, l, count);
+		  headerPutStringArray(newHeader, CRPMTAG_BINARY, (char const **)l, count);
+//		  headerAddEntry(newHeader, CRPMTAG_BINARY,
+//				 RPM_STRING_ARRAY_TYPE, l, count);
 	       }
 	    }
 	    if (foundInIndex || !mapi)