summaryrefslogtreecommitdiff
path: root/mail/cyrus-imapd/patches/patch-ag
blob: fdb310870e6d773b094f997192cc9551c6bb299b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$NetBSD: patch-ag,v 1.4 2007/06/12 11:34:29 obache Exp $

--- lib/cyrusdb_berkeley.c.orig	2006-03-17 16:12:32.000000000 +0000
+++ lib/cyrusdb_berkeley.c
@@ -173,7 +173,15 @@ static int init(const char *dbdir, int m
 	syslog(LOG_WARNING,
 	       "DBERROR: invalid berkeley_locks_max value, using internal default");
     } else {
+#if DB_VERSION_MAJOR >= 4
+	r = dbenv->set_lk_max_locks(dbenv, opt);
+	if (!r)
+	    r = dbenv->set_lk_max_lockers(dbenv, opt);
+	if (!r)
+	    r = dbenv->set_lk_max_objects(dbenv, opt);
+#else
 	r = dbenv->set_lk_max(dbenv, opt);
+#endif
 	if (r) {
 	    dbenv->err(dbenv, r, "set_lk_max");
 	    syslog(LOG_ERR, "DBERROR: set_lk_max(): %s", db_strerror(r));