Skip to contentSkip to conversation

Fix rpm rootfs generation

PATCH Applied Qing He 2 participants 3 messages May 27, 2011

lore
Share & tools
lore

Qing He

author
#0 lore raw

cover Fix rpm rootfs generation

rpm-native is fixed by the patch.

The following changes since commit 9bccbc5fbc71b331911b558a2ba15e0a6d0046b4:
Nitin A Kamble (1):
tcmode-default: workaround for gcc 4.6.0 failure on beagleboard

are available in the git repository at:

git://git.pokylinux.org/poky-contrib qhe/fix
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=qhe/fix

Qing He (1):
rpm: fix fprint pointer issue

 .../rpm/rpm/fprint-pointer-fix.patch               |   35 ++++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_5.4.0.bb             |    3 +-
 2 files changed, 37 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
author
#1 lore raw

PATCH 1/1 rpm: fix fprint pointer issue

[YOCTO #1030]

---
 .../rpm/rpm/fprint-pointer-fix.patch               |   35 ++++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_5.4.0.bb             |    3 +-
 2 files changed, 37 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch
meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch new file +35 -0
new file mode 100644
index 0000000..87a92eb
@@ -0,0 +1,35 @@
+Upstream-Status: Submitted
+
+From: Qing He <[email protected]>
+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 <[email protected]>
+
+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;
meta/recipes-devtools/rpm/rpm_5.4.0.bb +2 -1
index ff55469..d3f85f2 100644
@@ -43,7 +43,7 @@ LICENSE = "LGPL 2.1"
 LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
 
 DEPENDS = "bzip2 zlib python perl db openssl elfutils expat libpcre attr acl popt"
-PR = "r15"
+PR = "r16"
 
 # rpm2cpio is a shell script, which is part of the rpm src.rpm.  It is needed
 # in order to extract the distribution SRPM into a format we can extract...
@@ -57,6 +57,7 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.0-0.20101229.src.rpm;ex
 	   file://rpm-nofsync.patch \
 	   file://rpm-solvedb.patch \
 	   file://rpm-tools-mtree-LDFLAGS.patch \
+	   file://fprint-pointer-fix.patch \
 	  "
 
 #           file://hdraddorappend.patch \
Signature · 1 line
1.7.0
#2 lore raw

Re: [PATCH 1/1] rpm: fix fprint pointer issue

Quoted 9 lines · Qing He

[YOCTO #1030]

---
 .../rpm/rpm/fprint-pointer-fix.patch               |   35 ++++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_5.4.0.bb             |    3 +-
 2 files changed, 37 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/rpm/rpm/fprint-pointer-fix.patch

Applied to master, thanks.

Richard