[packages/abrt] - support rpm5, patch from Mandriva
baggins
baggins at pld-linux.org
Sun Oct 14 23:17:49 CEST 2012
commit 56d713b938acef32eab44b328589df42215080d8
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sun Oct 14 23:02:12 2012 +0200
- support rpm5, patch from Mandriva
abrt-rpm.patch | 117 ----------------------------------
abrt-rpm5.patch | 192 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 192 insertions(+), 117 deletions(-)
---
diff --git a/abrt-rpm.patch b/abrt-rpm.patch
deleted file mode 100644
index 27b84d1..0000000
--- a/abrt-rpm.patch
+++ /dev/null
@@ -1,117 +0,0 @@
---- abrt-1.0.0/src/Daemon/Makefile.am~ 2009-11-22 21:50:18.000000000 +0200
-+++ abrt-1.0.0/src/Daemon/Makefile.am 2009-12-07 13:07:30.732868433 +0200
-@@ -16,6 +16,7 @@
- abrtd_CPPFLAGS = \
- -I$(srcdir)/../../inc \
- -I$(srcdir)/../../lib/Utils \
-+ -I/usr/include/rpm \
- -DBIN_DIR=\"$(bindir)\" \
- -DVAR_RUN=\"$(VAR_RUN)\" \
- -DCONF_DIR=\"$(CONF_DIR)\" \
---- abrt-1.0.7/src/Daemon/RPM.cpp 2010-03-15 00:26:28.929435334 +0200
-+++ abrt-1.0.8/src/Daemon/RPM.cpp 2010-03-24 13:03:13.691485654 +0200
-@@ -33,9 +33,11 @@
-
- void CRPM::LoadOpenGPGPublicKey(const char* pFileName)
- {
-+#if 0
- uint8_t* pkt = NULL;
- size_t pklen;
- pgpKeyID_t keyID;
-+
- if (pgpReadPkts(pFileName, &pkt, &pklen) != PGPARMOR_PUBKEY)
- {
- free(pkt);
-@@ -51,11 +53,13 @@
- }
- }
- free(pkt);
-+#endif
- }
-
- bool CRPM::CheckFingerprint(const char* pPackage)
- {
- bool ret = false;
-+#if 0
- rpmts ts = rpmtsCreate();
- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_NAME, pPackage, 0);
- Header header = rpmdbNextIterator(iter);
-@@ -97,12 +101,14 @@
- }
- rpmdbFreeIterator(iter);
- rpmtsFree(ts);
-+#endif
- return ret;
- }
-
- bool CheckHash(const char* pPackage, const char* pPath)
- {
- bool ret = false;
-+#if 0
- rpmts ts = rpmtsCreate();
- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_NAME, pPackage, 0);
- Header header = rpmdbNextIterator(iter);
-@@ -128,23 +134,25 @@
- rpmdbFreeIterator(iter);
- rpmtsFree(ts);
- return ret;
-+#endif
- }
-
- std::string GetDescription(const char* pPackage)
- {
-- std::string pDescription;
-+ std::string pDescription = "";
-+
- rpmts ts = rpmtsCreate();
- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_NAME, pPackage, 0);
- Header header = rpmdbNextIterator(iter);
- if (header != NULL)
- {
-- rpmtd td = rpmtdNew();
-- headerGet(header, RPMTAG_SUMMARY, td, HEADERGET_DEFAULT);
-- const char* summary = rpmtdGetString(td);
-- headerGet(header, RPMTAG_DESCRIPTION, td, HEADERGET_DEFAULT);
-- const char* description = rpmtdGetString(td);
-+ const char *summary, *description;
-+ int_32 type, count;
-+
-+ headerGetEntry(header, RPMTAG_SUMMARY, &type, (void**)&summary, &count);
-+ headerGetEntry(header, RPMTAG_DESCRIPTION, &type, (void**)&description, &count);
-+
- pDescription = summary + std::string("\n\n") + description;
-- rpmtdFree(td);
- }
- rpmdbFreeIterator(iter);
- rpmtsFree(ts);
-@@ -153,7 +161,8 @@
-
- std::string GetComponent(const char* pFileName)
- {
-- std::string ret;
-+ std::string ret = "";
-+#if 0
- rpmts ts = rpmtsCreate();
- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, pFileName, 0);
- Header header = rpmdbNextIterator(iter);
-@@ -172,12 +181,14 @@
-
- rpmdbFreeIterator(iter);
- rpmtsFree(ts);
-+#endif
- return ret;
- }
-
- char* GetPackage(const char* pFileName)
- {
- char* ret = NULL;
-+#if 0
- rpmts ts = rpmtsCreate();
- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, pFileName, 0);
- Header header = rpmdbNextIterator(iter);
-@@ -189,4 +200,5 @@
- rpmdbFreeIterator(iter);
- rpmtsFree(ts);
-+#endif
- return ret;
- }
diff --git a/abrt-rpm5.patch b/abrt-rpm5.patch
new file mode 100644
index 0000000..b0cd0d1
--- /dev/null
+++ b/abrt-rpm5.patch
@@ -0,0 +1,192 @@
+--- abrt-2.0.8/src/daemon/Makefile.am.0011~ 2011-12-15 13:39:13.000000000 +0100
++++ abrt-2.0.8/src/daemon/Makefile.am 2012-03-11 21:28:24.900043460 +0100
+@@ -84,6 +84,7 @@ abrt_action_save_package_data_CPPFLAGS =
+ -I$(srcdir)/../include \
+ -I$(srcdir)/../lib \
+ -DCONF_DIR=\"$(CONF_DIR)\" \
++ $(RPM_CFLAGS) \
+ $(GLIB_CFLAGS) \
+ $(LIBREPORT_CFLAGS) \
+ -D_GNU_SOURCE \
+--- abrt-2.0.8/src/daemon/rpm.c.0011~ 2011-12-21 13:20:12.000000000 +0100
++++ abrt-2.0.8/src/daemon/rpm.c 2012-03-11 21:28:01.051031573 +0100
+@@ -62,7 +62,6 @@ void rpm_init()
+ void rpm_destroy()
+ {
+ rpmFreeRpmrc();
+- rpmFreeCrypto();
+ rpmFreeMacros(NULL);
+
+ list_free_with_free(list_fingerprints);
+@@ -97,13 +96,20 @@ int rpm_chk_fingerprint(const char* pkg)
+ const char *errmsg = NULL;
+
+ rpmts ts = rpmtsCreate();
+- rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_NAME, pkg, 0);
+- Header header = rpmdbNextIterator(iter);
++ rpmmi iter = rpmtsInitIterator(ts, RPMTAG_NAME, pkg, 0);
++ Header header = rpmmiNext(iter);
+
+ if (!header)
+ goto error;
+
+- pgpsig = headerFormat(header, "%|SIGGPG?{%{SIGGPG:pgpsig}}:{%{SIGPGP:pgpsig}}|", &errmsg);
++ pgpsig = headerSprintf(
++ header,
++ "%|DSAHEADER?{%{DSAHEADER:pgpsig}}:{%|RSAHEADER?{%{RSAHEADER:pgpsig}}:"
++ "{%|SIGGPG?{%{SIGGPG:pgpsig}}:{%|SIGPGP?{%{SIGPGP:pgpsig}}:{(none)}|}|}|}|",
++ NULL,
++ NULL,
++ &errmsg);
++
+ if (!pgpsig && errmsg)
+ {
+ VERB1 log("cannot get siggpg:pgpsig. reason: %s", errmsg);
+@@ -121,8 +127,8 @@ int rpm_chk_fingerprint(const char* pkg)
+
+ error:
+ free(pgpsig);
+- rpmdbFreeIterator(iter);
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ return ret;
+ }
+
+@@ -160,8 +166,8 @@ bool CheckHash(const char* pPackage, con
+ }
+ rpmfiFree(fi);
+ error:
+- rpmdbFreeIterator(iter);
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ return ret;
+ }
+ */
+@@ -171,15 +177,15 @@ char* rpm_get_component(const char *file
+ char *ret = NULL;
+ char *srpm = NULL;
+ rpmts ts;
+- rpmdbMatchIterator iter;
+- Header header;
++ rpmmi iter = NULL;
++ Header header = NULL;
+
+ ts = rpmtsCreate();
+ /* This loop executes once (normally) or twice (if we detect chroot) */
+ while (1)
+ {
+ iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, filename, 0);
+- header = rpmdbNextIterator(iter);
++ header = rpmmiNext(iter);
+ //log("%s: header('%s'):%p", __func__, filename, header);
+ if (header)
+ break;
+@@ -192,17 +198,16 @@ char* rpm_get_component(const char *file
+
+ /* It is a chroot */
+ //log("%s: skipping '%s' pfx", __func__, rootdir_or_NULL);
+- rpmdbFreeIterator(iter);
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ ts = rpmtsCreate();
+- if (rpmtsSetRootDir(ts, rootdir_or_NULL) != 0)
+- goto error1;
++ rpmtsSetRootDir(ts, rootdir_or_NULL);
+ filename += len;
+ rootdir_or_NULL = NULL;
+ }
+
+ const char *errmsg = NULL;
+- srpm = headerFormat(header, "%{SOURCERPM}", &errmsg);
++ srpm = headerSprintf(header, "%{SOURCERPM}", NULL, NULL, &errmsg);
+ if (!srpm && errmsg)
+ {
+ error_msg("cannot get srpm. reason: %s", errmsg);
+@@ -213,9 +218,8 @@ char* rpm_get_component(const char *file
+ free(srpm);
+
+ error:
+- rpmdbFreeIterator(iter);
+- error1:
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ return ret;
+ }
+
+@@ -227,7 +227,7 @@
+ static inline int pkg_add_##name(Header header, struct pkg_envra *p) \
+ { \
+ const char *errmsg = NULL; \
+- p->p_##name = headerFormat(header, "%{"#name"}", &errmsg); \
++ p->p_##name = headerSprintf(header, "%{"#name"}", NULL, NULL, &errmsg); \
+ if (p->p_##name || !errmsg) \
+ return 0; \
+ \
+@@ -254,17 +258,17 @@ char* rpm_get_package_nvr(const char *fi
+ struct pkg_envra *rpm_get_package_nvr(const char *filename, const char *rootdir_or_NULL)
+ {
+ rpmts ts;
+- rpmdbMatchIterator iter;
+- Header header;
++ rpmmi iter = NULL;
++ Header header = NULL;
+
+ struct pkg_envra *p = NULL;
+
+ ts = rpmtsCreate();
+ /* This loop executes once (normally) or twice (if we detect chroot) */
+ while (1)
+ {
+ iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, filename, 0);
+- header = rpmdbNextIterator(iter);
++ header = rpmmiNext(iter);
+ //log("%s: header('%s'):%p", __func__, filename, header);
+ if (header)
+ break;
+@@ -285,11 +289,9 @@ char* rpm_get_package_nvr(const char *fi
+
+ /* It is a chroot */
+ //log("%s: skipping '%s' pfx", __func__, rootdir_or_NULL);
+- rpmdbFreeIterator(iter);
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ ts = rpmtsCreate();
+- if (rpmtsSetRootDir(ts, rootdir_or_NULL) != 0)
+- goto error1;
+ filename += len;
+ rootdir_or_NULL = NULL;
+ }
+@@ -320,9 +332,8 @@
+ error:
+ free_pkg_envra(p);
+
+- rpmdbFreeIterator(iter);
+- error1:
+- rpmtsFree(ts);
++ iter = rpmmiFree(iter);
++ ts = rpmtsFree(ts);
+ return NULL;
+ }
+
+--- abrt-2.0.8/src/daemon/rpm.h.0011~ 2011-12-21 13:20:12.000000000 +0100
++++ abrt-2.0.8/src/daemon/rpm.h 2012-03-11 21:28:01.051031573 +0100
+@@ -22,10 +22,10 @@
+ #ifndef RPM_H_
+ #define RPM_H_
+
+-#include <rpm/rpmts.h>
+-#include <rpm/rpmcli.h>
+-#include <rpm/rpmdb.h>
+-#include <rpm/rpmpgp.h>
++#include <rpmcli.h>
++#include <rpmts.h>
++#include <rpmdb.h>
++#include <rpmio.h>
+
+ #ifdef __cplusplus
+ extern "C" {
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/abrt.git/commitdiff/608b599415cd8aca91ec23eeadb3367d9a146c5f
More information about the pld-cvs-commit
mailing list