Hello community,

here is the log from the commit of package dovecot23 for openSUSE:Factory 
checked in at 2018-07-22 23:05:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dovecot23 (Old)
 and      /work/SRC/openSUSE:Factory/.dovecot23.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dovecot23"

Sun Jul 22 23:05:43 2018 rev:10 rq:624423 version:2.3.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/dovecot23/dovecot23.changes      2018-07-13 
10:21:09.262441315 +0200
+++ /work/SRC/openSUSE:Factory/.dovecot23.new/dovecot23.changes 2018-07-22 
23:05:45.368896767 +0200
@@ -1,0 +2,6 @@
+Fri Jul 13 21:23:16 UTC 2018 - [email protected]
+
+- added
+  
https://github.com/dovecot/core/commit/4ff4bd024a9b6e7973b76b186ce085c2ca669d3e.patch
+
+-------------------------------------------------------------------

New:
----
  4ff4bd024a9b6e7973b76b186ce085c2ca669d3e.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dovecot23.spec ++++++
--- /var/tmp/diff_new_pack.Wo33Jh/_old  2018-07-22 23:05:46.084896501 +0200
+++ /var/tmp/diff_new_pack.Wo33Jh/_new  2018-07-22 23:05:46.088896500 +0200
@@ -136,6 +136,7 @@
 Source12:       dovecot23.keyring
 Patch:          dovecot-2.3.0-dont_use_etc_ssl_certs.patch
 Patch1:         dovecot-2.3.0-better_ssl_defaults.patch
+Patch2:         
https://github.com/dovecot/core/commit/4ff4bd024a9b6e7973b76b186ce085c2ca669d3e.patch
 Summary:        IMAP and POP3 Server Written Primarily with Security in Mind
 License:        BSD-3-Clause AND LGPL-2.1-or-later AND MIT
 Group:          Productivity/Networking/Email/Servers
@@ -315,6 +316,7 @@
 %setup -q -n %{pkg_name}-%{dovecot_version} -a 1
 %patch -p1
 %patch1 -p1
+%patch2 -p1
 gzip -9v ChangeLog
 # Fix plugins dir.
 sed -i 's|#mail_plugin_dir = /usr/lib/dovecot|mail_plugin_dir = 
%{_libdir}/dovecot/modules|' doc/example-config/conf.d/10-mail.conf

++++++ 4ff4bd024a9b6e7973b76b186ce085c2ca669d3e.patch ++++++
>From 4ff4bd024a9b6e7973b76b186ce085c2ca669d3e Mon Sep 17 00:00:00 2001
From: Aki Tuomi <[email protected]>
Date: Thu, 24 May 2018 12:48:58 +0000
Subject: [PATCH] acl: Fix return value of acl_attribute_get_acl

If matching acl entry is not found, it must return 0
and not 1 because it did not find anything.

Fixes dsync: Panic: file mailbox-attribute.c: line 362 
(mailbox_attribute_get_stream): assertion failed: (value_r->value != NULL || 
value_r->value_stream != NULL)

Broken in 37c72fa0cd3f1d74d79b64afb3fb6da5ffd4fe3a

Found by @dl8bh
---
 src/plugins/acl/acl-attributes.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/plugins/acl/acl-attributes.c b/src/plugins/acl/acl-attributes.c
index 2499a30f9c..f0d3177de4 100644
--- a/src/plugins/acl/acl-attributes.c
+++ b/src/plugins/acl/acl-attributes.c
@@ -60,7 +60,7 @@ static int acl_attribute_get_acl(struct mailbox *box, const 
char *key,
        struct acl_object_list_iter *iter;
        struct acl_rights rights, wanted_rights;
        const char *id;
-       int ret;
+       int ret = 0;
 
        i_zero(value_r);
 
@@ -88,11 +88,17 @@ static int acl_attribute_get_acl(struct mailbox *box, const 
char *key,
                    rights.id_type == wanted_rights.id_type &&
                    null_strcmp(rights.identifier, wanted_rights.identifier) == 
0) {
                        value_r->value = acl_rights_export(&rights);
+                       ret = 1;
                        break;
                }
        }
-       if ((ret = acl_object_list_deinit(&iter)) < 0)
+       /* the return value here cannot be used, because this function
+          needs to return whether it actually matched something
+          or not */
+       if (acl_object_list_deinit(&iter) < 0) {
                mail_storage_set_internal_error(box->storage);
+               ret = -1;
+       }
        return ret;
 }
 




Reply via email to