RPM Community Forums

Mailing List Message of <rpm-devel>

Re: [CVS] RPM: rpm/rpmdb/ rpmdb.c

From: Jeff Johnson <n3npq@mac.com>
Date: Fri 08 Aug 2008 - 07:37:42 CEST
Message-ID: <38764268657324377129501006871900735957-Webmail2@me.com>
Careful with this change. It's quite easy to end up truncating
unloaded header blobs accidentally by 8b (which is what your
deletion does afaict, not checked).

headerGetMagic() is just a complicated way of setting nb = 8.

Doing
    rpm --rebuilddb -vv
    rpm -qavv --yaml > /dev/null
should verify whether headers are truncated (or not).

I'm on the road and cannot verify atm ...

73 de Jeff

On Thursday, August 07, 2008, at 10:07PM, "Alexey Tourbin" <at@rpm5.org> wrote:
>  RPM Package Manager, CVS Repository
>  http://rpm5.org/cvs/
>  ____________________________________________________________________________
>
>  Server: rpm5.org                         Name:   Alexey Tourbin
>  Root:   /v/rpm/cvs                       Email:  at@rpm5.org
>  Module: rpm                              Date:   08-Aug-2008 04:07:11
>  Branch: HEAD                             Handle: 2008080802071100
>
>  Modified files:
>    rpm/rpmdb               rpmdb.c
>
>  Log:
>    rpmdb.c (rpmdbAdd): removed old db0 hack
>
>  Summary:
>    Revision    Changes     Path
>    1.261       +0  -7      rpm/rpmdb/rpmdb.c
>  ____________________________________________________________________________
>
>  patch -p0 <<'@@ .'
>  Index: rpm/rpmdb/rpmdb.c
>  ============================================================================
>  $ cvs diff -u -r1.260 -r1.261 rpmdb.c
>  --- rpm/rpmdb/rpmdb.c	7 Aug 2008 19:17:20 -0000	1.260
>  +++ rpm/rpmdb/rpmdb.c	8 Aug 2008 02:07:11 -0000	1.261
>  @@ -3221,13 +3221,6 @@
>         dbi = dbiOpen(db, RPMDBI_PACKAGES, 0);
>         if (dbi != NULL) {
>   
>  -	nb = 0;
>  -	(void) headerGetMagic(h, NULL, &nb);
>  -	/* XXX db0: hack to pass sizeof header to fadAlloc */
>  -	datap = h;
>  -	datalen = headerSizeof(h);
>  -	datalen -= nb;	/* XXX HEADER_MAGIC_NO */
>  -
>   	xx = dbiCopen(dbi, dbi->dbi_txnid, &dbcursor, DB_WRITECURSOR);
>   
>   	/* Retrieve join key for next header instance. */
>  @@ .
>______________________________________________________________________
>RPM Package Manager                                    http://rpm5.org
>CVS Sources Repository                                rpm-cvs@rpm5.org
>
>
Received on Fri Aug 8 07:37:45 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.