Projects
Kolab:16:Testing:Candidate
cyrus-imapd-3
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 12
View file
cyrus-imapd.spec
Changed
@@ -60,6 +60,7 @@ Patch12: 0001-Fix-SETMETADATA-on-shared-folders.patch Patch13: 0001-Print-errors-during-sieve-script-parsing.patch Patch14: 0002-Ignore-broken-and-missing-sieve-scripts-during-repli.patch +Patch15: 0001-Fixed-crash-on-0-pointer-access-in-mupdate.c.patch Source10: cyrus-imapd.logrotate
View file
0001-Fixed-crash-on-0-pointer-access-in-mupdate.c.patch
Added
@@ -0,0 +1,47 @@ +From 49a6571f495c731796ab31f7cefca317d8e3e19a Mon Sep 17 00:00:00 2001 +From: Christian Mollekopf <mollekopf@apheleia-it.ch> +Date: Fri, 5 May 2023 09:19:35 +0200 +Subject: PATCH Fixed crash on 0 pointer access in mupdate.c + +We can't check the location of the mailbox if it doesn't exist. +This means we can't really suppress the DOESNTEXIST message, +but I don't know if this is a problem in reality. +--- + imap/mupdate.c | 14 ++++---------- + 1 file changed, 4 insertions(+), 10 deletions(-) + +diff --git a/imap/mupdate.c b/imap/mupdate.c +index 2cc2571bc..8d4f92415 100644 +--- a/imap/mupdate.c ++++ b/imap/mupdate.c +@@ -1629,7 +1629,7 @@ static void cmd_set(struct conn *C, + * deactivation twice. Suppress bailing out on the second one + * (the replica). + */ +- if (strcmp(m->location, location)) { ++ if (m && strcmp(m->location, location)) { + /* failed; mailbox not currently active */ + msg = NOTACTIVE; + goto done; +@@ -1643,15 +1643,9 @@ static void cmd_set(struct conn *C, + if (!m) { + /* Check if we run in a discrete murder topology */ + if (config_mupdate_config == IMAP_ENUM_MUPDATE_CONFIG_STANDARD) { +- /* Replicated backends with the same server name issue +- * deletion twice. Suppress bailing out on the second one +- * (the replica). +- */ +- if (strcmp(m->location, location)) { +- /* failed; mailbox doesn't exist */ +- msg = DOESNTEXIST; +- goto done; +- } ++ /* failed; mailbox doesn't exist */ ++ msg = DOESNTEXIST; ++ goto done; + } + /* otherwise do nothing (local delete on master) */ + } else { +-- +2.40.0 +
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.