Blame headeradddb.diff

Bernhard M. Wiedemann 1250f9
Add rpmtsHeaderAddDB and rpmtsHeaderRemoveDB so that
Bernhard M. Wiedemann 1250f9
convertdb1 will build again.
Bernhard M. Wiedemann 1250f9
Bernhard M. Wiedemann 1250f9
--- lib/rpmts.c.orig	2011-05-12 13:21:03.000000000 +0000
Bernhard M. Wiedemann 1250f9
+++ lib/rpmts.c	2011-05-12 13:26:25.000000000 +0000
Bernhard M. Wiedemann 1250f9
@@ -159,6 +159,24 @@ int rpmtsVerifyDB(rpmts ts)
Bernhard M. Wiedemann 1250f9
     return rc;
Bernhard M. Wiedemann 1250f9
 }
Bernhard M. Wiedemann 1250f9
 
Bernhard M. Wiedemann 1250f9
+int rpmtsHeaderAddDB(rpmts ts, Header h)
Bernhard M. Wiedemann 1250f9
+{
Bernhard M. Wiedemann 1250f9
+    if (rpmtsOpenDB(ts, (O_RDWR|O_CREAT)))
Bernhard M. Wiedemann 1250f9
+	return RPMRC_FAIL;
Bernhard M. Wiedemann 1250f9
+    if (rpmdbAdd(rpmtsGetRdb(ts), h) != 0)
Bernhard M. Wiedemann 1250f9
+	return RPMRC_FAIL;
Bernhard M. Wiedemann 1250f9
+    return RPMRC_OK;
Bernhard M. Wiedemann 1250f9
+}
Bernhard M. Wiedemann 1250f9
+
Bernhard M. Wiedemann 1250f9
+int rpmtsHeaderRemoveDB(rpmts ts, unsigned int hdrNum)
Bernhard M. Wiedemann 1250f9
+{
Bernhard M. Wiedemann 1250f9
+    if (rpmtsOpenDB(ts, (O_RDWR|O_CREAT)))
Bernhard M. Wiedemann 1250f9
+	return RPMRC_FAIL;
Bernhard M. Wiedemann 1250f9
+    if (rpmdbRemove(rpmtsGetRdb(ts), hdrNum) != 0)
Bernhard M. Wiedemann 1250f9
+	return RPMRC_FAIL;
Bernhard M. Wiedemann 1250f9
+    return RPMRC_OK;
Bernhard M. Wiedemann 1250f9
+}
Bernhard M. Wiedemann 1250f9
+
Bernhard M. Wiedemann 1250f9
 /* keyp might no be defined. */
Bernhard M. Wiedemann 1250f9
 rpmdbMatchIterator rpmtsInitIterator(const rpmts ts, rpmDbiTagVal rpmtag,
Bernhard M. Wiedemann 1250f9
 			const void * keyp, size_t keylen)
Bernhard M. Wiedemann 1250f9
--- lib/rpmts.h.orig	2011-05-12 13:21:11.000000000 +0000
Bernhard M. Wiedemann 1250f9
+++ lib/rpmts.h	2011-05-12 13:28:32.000000000 +0000
Bernhard M. Wiedemann 1250f9
@@ -264,6 +264,22 @@ int rpmtsRebuildDB(rpmts ts);
Bernhard M. Wiedemann 1250f9
 int rpmtsVerifyDB(rpmts ts);
Bernhard M. Wiedemann 1250f9
 
Bernhard M. Wiedemann 1250f9
 /** \ingroup rpmts
Bernhard M. Wiedemann 1250f9
+ * Add a header to the database used by the transaction.
Bernhard M. Wiedemann 1250f9
+ * @param ts            transaction set 
Bernhard M. Wiedemann 1250f9
+ * @param h             header to add
Bernhard M. Wiedemann 1250f9
+ * @return              0 on success
Bernhard M. Wiedemann 1250f9
+ */
Bernhard M. Wiedemann 1250f9
+int rpmtsHeaderAddDB(rpmts ts, Header h);
Bernhard M. Wiedemann 1250f9
+
Bernhard M. Wiedemann 1250f9
+/** \ingroup rpmts
Bernhard M. Wiedemann 1250f9
+ * Remove a header from the database used by the transaction.
Bernhard M. Wiedemann 1250f9
+ * @param ts            transaction set 
Bernhard M. Wiedemann 1250f9
+ * @param hdrNum        index of header to remove
Bernhard M. Wiedemann 1250f9
+ * @return              0 on success
Bernhard M. Wiedemann 1250f9
+ */
Bernhard M. Wiedemann 1250f9
+int rpmtsHeaderRemoveDB(rpmts ts, unsigned int hdrNum);
Bernhard M. Wiedemann 1250f9
+
Bernhard M. Wiedemann 1250f9
+/** \ingroup rpmts
Bernhard M. Wiedemann 1250f9
  * Return transaction database iterator.
Bernhard M. Wiedemann 1250f9
  * @param ts		transaction set
Bernhard M. Wiedemann 1250f9
  * @param rpmtag	database index tag