On Thu, Apr 02, 2009 at 09:27:13AM +0000, Debian Bug Tracking System wrote:
> Bug#521860: libpam-modules: libdb upgrade silently breaks pam_userdb.so
> Bug marked as found in version 4.7.25-6.

Possible fix; I'll add more information once I have Internet.

diff --git a/btree/bt_open.c b/btree/bt_open.c
index f03652d..d77c7d6 100644
--- a/btree/bt_open.c
+++ b/btree/bt_open.c
@@ -314,7 +314,7 @@ __bam_read_root(dbp, ip, txn, base_pgno, flags)
 
                t->bt_meta = base_pgno;
                t->bt_root = meta->root;
-               if (PGNO(meta) == PGNO_BASE_MD && !F_ISSET(dbp, DB_AM_RECOVER))
+               if (PGNO(meta) == PGNO_BASE_MD && meta->dbmeta.last_pgno > 0 && 
!F_ISSET(dbp, DB_AM_RECOVER))
                        __memp_set_last_pgno(mpf, meta->dbmeta.last_pgno);
        } else {
                DB_ASSERT(dbp->env,
diff --git a/hash/hash_open.c b/hash/hash_open.c
index f5e1d7f..769b583 100644
--- a/hash/hash_open.c
+++ b/hash/hash_open.c
@@ -110,6 +110,7 @@ __ham_open(dbp, ip, txn, name, base_pgno, flags)
                if (F_ISSET(&hcp->hdr->dbmeta, DB_HASH_SUBDB))
                        F_SET(dbp, DB_AM_SUBDB);
                if (PGNO(hcp->hdr) == PGNO_BASE_MD &&
+                    hcp->hdr->dbmeta.last_pgno > 0 &&
                     !F_ISSET(dbp, DB_AM_RECOVER))
                        __memp_set_last_pgno(dbp->mpf,
                            hcp->hdr->dbmeta.last_pgno);



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to