[packages/dovecot] Up to 2.3.17.1.

arekm arekm at pld-linux.org
Sun Dec 12 14:36:49 CET 2021


commit aedd63db39ec97c1affdf1f80899c3ddc3f92a5e
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Sun Dec 12 14:36:11 2021 +0100

    Up to 2.3.17.1.

 dovecot.spec         | 10 +++----
 upstream-fixes.patch | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 80 insertions(+), 5 deletions(-)
---
diff --git a/dovecot.spec b/dovecot.spec
index 7e55a27..01fa504 100644
--- a/dovecot.spec
+++ b/dovecot.spec
@@ -12,13 +12,13 @@
 Summary:	IMAP and POP3 server written with security primarily in mind
 Summary(pl.UTF-8):	Serwer IMAP i POP3 pisany głównie z myślą o bezpieczeństwie
 Name:		dovecot
-Version:	2.3.17
-Release:	2
+Version:	2.3.17.1
+Release:	1
 Epoch:		1
 License:	MIT (libraries), LGPL v2.1 (the rest)
 Group:		Networking/Daemons
 Source0:	http://dovecot.org/releases/2.3/%{name}-%{version}.tar.gz
-# Source0-md5:	b9e928ebba1e7a523ab5616025c9f245
+# Source0-md5:	9b67ec4f21e5ecfcfb32fd5f412b511b
 Source1:	%{name}.pamd
 Source2:	%{name}.init
 Source3:	%{name}.sysconfig
@@ -26,7 +26,7 @@ Source4:	%{name}.tmpfiles
 Patch0:		%{name}-config.patch
 Patch1:		%{name}-rpath.patch
 Patch2:		%{name}-shebang.patch
-
+Patch3:		upstream-fixes.patch
 Patch4:		openssl3.patch
 URL:		http://dovecot.org/
 BuildRequires:	autoconf
@@ -168,7 +168,7 @@ Pakiet programistyczny do tworzenia wtyczek dla Dovecota.
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-
+%patch3 -p1
 %patch4 -p1
 
 %{__sed} -i 's,/usr/lib/dovecot,%{_libdir}/dovecot,g' doc/example-config/*.conf doc/example-config/conf.d/*.conf
diff --git a/upstream-fixes.patch b/upstream-fixes.patch
new file mode 100644
index 0000000..e1c3a99
--- /dev/null
+++ b/upstream-fixes.patch
@@ -0,0 +1,75 @@
+From 98f709deac9381721b93d896c27576dbff1f711c Mon Sep 17 00:00:00 2001
+From: Stephan Bosch <stephan.bosch at open-xchange.com>
+Date: Fri, 12 Nov 2021 10:43:16 +0100
+Subject: [PATCH 1/2] lib-storage: mail-duplicate - Fix panic occurring when
+ user has no configured home directory.
+
+Panic was:
+
+Panic: file imem.c: line 65 (i_strconcat): assertion failed: (str1 != NULL)
+---
+ src/lib-storage/mail-duplicate.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/src/lib-storage/mail-duplicate.c b/src/lib-storage/mail-duplicate.c
+index ff4fa5630b..407fe4aec9 100644
+--- a/src/lib-storage/mail-duplicate.c
++++ b/src/lib-storage/mail-duplicate.c
+@@ -722,14 +722,17 @@ mail_duplicate_db_init(struct mail_user *user, const char *name)
+ 
+ 	e_debug(db->event, "Initialize");
+ 
++	db->user = user;
++
+ 	if (mail_user_get_home(user, &home) <= 0) {
+ 		e_error(db->event, "User %s doesn't have home dir set, "
+ 			"disabling duplicate database", user->username);
++		return db;
+ 	}
+ 
+-	db->user = user;
+-	db->path = home == NULL ? NULL :
+-		i_strconcat(home, "/.dovecot.", name, NULL);
++	i_assert(home != NULL);
++
++	db->path = i_strconcat(home, "/.dovecot.", name, NULL);
+ 	db->dotlock_set = default_mail_duplicate_dotlock_set;
+ 
+ 	lock_dir = mail_user_get_volatile_dir(user);
+
+From d36d2c595a12378b597f1fc82cd7b47cbbadb2e1 Mon Sep 17 00:00:00 2001
+From: Stephan Bosch <stephan.bosch at open-xchange.com>
+Date: Fri, 12 Nov 2021 11:16:47 +0100
+Subject: [PATCH 2/2] lib-storage: mail-duplicate - Fix segfault occurring when
+ user has no configured home directory
+
+Occurred only when a duplicate DB transaction was created.
+---
+ src/lib-storage/mail-duplicate.c | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/src/lib-storage/mail-duplicate.c b/src/lib-storage/mail-duplicate.c
+index 407fe4aec9..7a78caa7c7 100644
+--- a/src/lib-storage/mail-duplicate.c
++++ b/src/lib-storage/mail-duplicate.c
+@@ -491,13 +491,15 @@ mail_duplicate_transaction_free(struct mail_duplicate_transaction **_trans)
+ 	i_assert(trans->db->transaction_count > 0);
+ 	trans->db->transaction_count--;
+ 
+-	iter = hash_table_iterate_init(trans->hash);
+-	while (hash_table_iterate(iter, trans->hash, &d, &d))
+-		mail_duplicate_unlock(trans, d);
+-	hash_table_iterate_deinit(&iter);
++	if (hash_table_is_created(trans->hash)) {
++		iter = hash_table_iterate_init(trans->hash);
++		while (hash_table_iterate(iter, trans->hash, &d, &d))
++			mail_duplicate_unlock(trans, d);
++		hash_table_iterate_deinit(&iter);
++		hash_table_destroy(&trans->hash);
++	}
+ 	i_assert(trans->id_lock_count == 0);
+ 
+-	hash_table_destroy(&trans->hash);
+ 	event_unref(&trans->event);
+ 	pool_unref(&trans->pool);
+ }
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/dovecot.git/commitdiff/aedd63db39ec97c1affdf1f80899c3ddc3f92a5e



More information about the pld-cvs-commit mailing list