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 13
View file
cyrus-imapd.spec
Changed
@@ -61,6 +61,7 @@ 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 +Patch16: 0001-Backwards-compatibility-for-the-sync-protocol-withou.patch Source10: cyrus-imapd.logrotate
View file
0001-Backwards-compatibility-for-the-sync-protocol-withou.patch
Added
@@ -0,0 +1,45 @@ +From e12d8ea15dbab5f56f1b3915c1578e9d5f3fefa9 Mon Sep 17 00:00:00 2001 +From: Christian Mollekopf <mollekopf@apheleia-it.ch> +Date: Wed, 17 May 2023 18:16:09 +0200 +Subject: PATCH Backwards compatibility for the sync protocol without MODSEQ + +Required after 9d4d5069230d699c34e9c8410f0bd1df9ae3040a +--- + imap/sync_support.c | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +diff --git a/imap/sync_support.c b/imap/sync_support.c +index f2699108a..d71b6f614 100755 +--- a/imap/sync_support.c ++++ b/imap/sync_support.c +@@ -1420,8 +1420,11 @@ int decode_annotations(/*const*/struct dlist *annots, + return IMAP_PROTOCOL_BAD_PARAMETERS; + if (!dlist_getatom(aa, "USERID", &userid)) + return IMAP_PROTOCOL_BAD_PARAMETERS; +- if (!dlist_getnum64(aa, "MODSEQ", &modseq)) +- return IMAP_PROTOCOL_BAD_PARAMETERS; ++ if (!dlist_getnum64(aa, "MODSEQ", &modseq)) { ++ // Backwards compat for cyrus 2.5 ++ modseq = 0; ++ //return IMAP_PROTOCOL_BAD_PARAMETERS; ++ } + if (!dlist_getbuf(aa, "VALUE", &value)) + return IMAP_PROTOCOL_BAD_PARAMETERS; + if (!strcmp(entry, IMAP_ANNOT_NS "thrid") && +@@ -2996,10 +2999,10 @@ int sync_apply_mailbox(struct dlist *kin, + + /* take all mailbox (not message) annotations - aka metadata, + * they're not versioned either */ +- if (ka) +- decode_annotations(ka, &mannots, mailbox, NULL); ++ if (ka) { ++ r = decode_annotations(ka, &mannots, mailbox, NULL); + +- r = read_annotations(mailbox, NULL, &rannots, 0, 0); ++ if (!r) r = read_annotations(mailbox, NULL, &rannots, 0, 0); + if (!r) r = apply_annotations(mailbox, NULL, rannots, mannots, 0, NULL); + + if (r) { +-- +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
.