summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
diff options
context:
space:
mode:
authorQing He <qing.he@intel.com>2011-05-27 17:03:18 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-05-27 16:38:52 +0100
commit6015a10899d38110bced4ca7e9b758b409a2f062 (patch)
treea947312a8712ef39f679b56112a8220d3a4d7680 /meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
parent57684a71df239ecc24f0bb7397af37563a74edcf (diff)
downloadast2050-yocto-poky-6015a10899d38110bced4ca7e9b758b409a2f062.zip
ast2050-yocto-poky-6015a10899d38110bced4ca7e9b758b409a2f062.tar.gz
rpm: fix fprint pointer issue
[YOCTO #1030] (From OE-Core rev: bc4b86639a713c877dbe5e0f984873915d1578d4) Signed-off-by: Qing He <qing.he@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch')
-rw-r--r--meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch b/meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
new file mode 100644
index 0000000..87a92eb
--- /dev/null
+++ b/meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
@@ -0,0 +1,35 @@
+Upstream-Status: Submitted
+
+From: Qing He <qing.he@intel.com>
+Subject: [PATCH] rpm 5.4.0: Fix pointer mishandling
+
+In fpLookupSubdir, data returned by hash should be of type
+"struct rpmffi_s **" instead of "struct rpmffi_s *" to avoid
+segfault.
+
+Signed-off-by: Qing He <qing.he@intel.com>
+
+diff --git a/rpmdb/fprint.c b/rpmdb/fprint.c
+index 0e76148..82b8f45 100644
+--- a/rpmdb/fprint.c
++++ b/rpmdb/fprint.c
+@@ -333,7 +333,7 @@ restart:
+ *te = '\0';
+
+ while (te < se) {
+- struct rpmffi_s * recs;
++ struct rpmffi_s ** recs;
+ int numRecs;
+ int i;
+
+@@ -346,8 +346,8 @@ restart:
+ const char * link;
+ int fx;
+
+- fx = recs[i].fileno;
+- fi = recs[i].p->fi;
++ fx = recs[i]->fileno;
++ fi = recs[i]->p->fi;
+ flink = fi->flinks[fx];
+ if (!(flink && *flink != '\0'))
+ continue;
OpenPOWER on IntegriCloud