[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Freeze exception? prayer refuses to start if present libdb is older than version at compile time



See http://bugs.debian.org/592119

In short, prayer checks the current version of libdb and refuses to start if 
it's older than when prayer was compiled. It shouldn't do that because the API 
and ABI of libdb don't change within the same minor version, IIUC, and if it 
did we have shlibs files to handle the dependencies. It only does it if SSL 
session caching is enabled though, and SSL session caching is disabled by 
default, so I'm not sure how serious that bug should be actually considered. 
Also, the problem will go away when the db4.8 package in unstable enters 
testing, but for now it exists.

Could I get a freeze exception for the attached debdiff? It also includes a 
change to source format 3.0 (quilt) that I had already committed when I 
noticed this bug, but that's a trivial change in this case.

-- 
Magnus Holmgren        holmgren@debian.org
Debian Developer 
diff -Nru prayer-1.3.3-dfsg1/debian/changelog prayer-1.3.3-dfsg1/debian/changelog
--- prayer-1.3.3-dfsg1/debian/changelog	2010-08-07 19:06:48.000000000 +0200
+++ prayer-1.3.3-dfsg1/debian/changelog	2010-08-07 17:46:02.000000000 +0200
@@ -1,3 +1,14 @@
+prayer (1.3.3-dfsg1-2) unstable; urgency=high
+
+  * Convert (trivially, since CDBS with quilt was already used) to source
+    format 3.0 (quilt).
+  * no_db_version_check.patch: Remove unnecessary and incorrect check that
+    the major and minor version numbers of the current libdb are the same
+    as at compile time, but also that the patch number is equal and
+    greater, which should not be a concern.
+
+ -- Magnus Holmgren <holmgren@debian.org>  Sat, 07 Aug 2010 17:42:49 +0200
+
 prayer (1.3.3-dfsg1-1) unstable; urgency=low
 
   * New upstream release.
diff -Nru prayer-1.3.3-dfsg1/debian/control prayer-1.3.3-dfsg1/debian/control
--- prayer-1.3.3-dfsg1/debian/control	2010-08-07 19:06:48.000000000 +0200
+++ prayer-1.3.3-dfsg1/debian/control	2010-08-05 20:49:57.000000000 +0200
@@ -2,7 +2,7 @@
 Section: mail
 Priority: optional
 Maintainer: Magnus Holmgren <holmgren@debian.org>
-Build-Depends: cdbs, debhelper (>= 5), quilt, 
+Build-Depends: cdbs, debhelper (>= 5),
  libc-client2007e-dev | libc-client2007b-dev | libc-client-dev (>= 7:2007~),
  libldap2-dev, zlib1g-dev, libssl-dev (>= 0.9.6), libdb-dev, libtidy-dev
 Standards-Version: 3.9.0
diff -Nru prayer-1.3.3-dfsg1/debian/patches/no_db_version_check.patch prayer-1.3.3-dfsg1/debian/patches/no_db_version_check.patch
--- prayer-1.3.3-dfsg1/debian/patches/no_db_version_check.patch	1970-01-01 01:00:00.000000000 +0100
+++ prayer-1.3.3-dfsg1/debian/patches/no_db_version_check.patch	2010-08-07 17:29:29.000000000 +0200
@@ -0,0 +1,24 @@
+--- a/lib/mydb_db3.c
++++ b/lib/mydb_db3.c
+@@ -190,21 +190,10 @@ static int myinit(const char *dbdir, int
+ 
+ static int init(const char *dbdir, int myflags)
+ {
+-  int   maj, min, patch;
+-  char *vstr;
+   int   r;
+ 
+   if (dbinit++) return 0;
+ 
+-  vstr = db_version(&maj, &min, &patch);
+-  if (maj != DB_VERSION_MAJOR || min != DB_VERSION_MINOR ||
+-      DB_VERSION_PATCH > patch) {
+-    log_fatal("incorrect version of Berkeley db: "
+-              "compiled against %d.%d.%d, linked against %d.%d.%d",
+-              DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH,
+-              maj, min, patch);
+-  }
+-
+   if (!(r = myinit(dbdir, myflags)))
+     return(0);
+ 
diff -Nru prayer-1.3.3-dfsg1/debian/patches/series prayer-1.3.3-dfsg1/debian/patches/series
--- prayer-1.3.3-dfsg1/debian/patches/series	2010-08-07 19:06:48.000000000 +0200
+++ prayer-1.3.3-dfsg1/debian/patches/series	2010-08-07 17:25:24.000000000 +0200
@@ -3,3 +3,4 @@
 dlopen_templates.patch
 unbrand_cam_template.patch
 template_sdk.patch
+no_db_version_check.patch
diff -Nru prayer-1.3.3-dfsg1/debian/README.source prayer-1.3.3-dfsg1/debian/README.source
--- prayer-1.3.3-dfsg1/debian/README.source	2010-08-07 19:06:48.000000000 +0200
+++ prayer-1.3.3-dfsg1/debian/README.source	1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-This package uses quilt to manage all modifications to the upstream
-source.  Changes are stored in the source package as diffs in
-debian/patches and applied during the build. For basic usage
-information, see
-
-  /usr/share/doc/quilt/README.source
-
-(after installing quilt).
diff -Nru prayer-1.3.3-dfsg1/debian/rules prayer-1.3.3-dfsg1/debian/rules
--- prayer-1.3.3-dfsg1/debian/rules	2010-08-07 19:06:48.000000000 +0200
+++ prayer-1.3.3-dfsg1/debian/rules	2010-08-05 20:49:57.000000000 +0200
@@ -9,7 +9,6 @@
 
 include /usr/share/cdbs/1/class/makefile.mk
 include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/rules/patchsys-quilt.mk
 
 DEB_MAKE_INVOKE = $(DEB_MAKE_ENVVARS) $(MAKE)
 DEB_MAKE_INSTALL_TARGET = install BROOT=$(CURDIR)/debian/tmp
diff -Nru prayer-1.3.3-dfsg1/debian/source/format prayer-1.3.3-dfsg1/debian/source/format
--- prayer-1.3.3-dfsg1/debian/source/format	1970-01-01 01:00:00.000000000 +0100
+++ prayer-1.3.3-dfsg1/debian/source/format	2010-08-05 20:49:57.000000000 +0200
@@ -0,0 +1 @@
+3.0 (quilt)

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: