Le 09/05/2019 à 10:13, Ondřej Surý a écrit :
> Hi Xavier,
> 
> yes, the comaintainers are really sought.
> 
> The emails here should reset the autoremoval status, so if you have time to 
> fix this bug, it doesn’t need to be downgraded, just fixed...
> 
> Ondrej
> --
> Ondřej Surý
> ond...@sury.org
> 
> 
> 
>> On 9 May 2019, at 15:04, Xavier <y...@debian.org> wrote:
>>
>> Le 09/05/2019 à 06:37, Xavier a écrit :
>>> Hi all,
>>>
>>> I'm afraid to see that Cyrus-Imapd is going to be out of Buster. Sorry,
>>> I can't help here, but can this bug be considered as "important" instead
>>> of "serious" to avoid expel?
>>>
>>> Cheers,
>>> Xavier
>>
>> Hi all,
>>
>> I just saw that Cyrus-Imapd is RFA. Since I need it here (~120.000
>> mailboxes), I can take co-maintenance (and think that this bug should be
>> downgraded to "important" since only Sieve part of Cyrus-Imapd is
>> affected and there is no CVE).
>>
>> Cheers,
>> Xavier

Following upstream commits, this patch may fix the problem:

diff --git a/imap/lmtp_sieve.c b/imap/lmtp_sieve.c
index 4c3bbc3b7..9ba030f38 100644
--- a/imap/lmtp_sieve.c
+++ b/imap/lmtp_sieve.c
@@ -414,7 +414,7 @@ static int sieve_redirect(void *ac,
     /* if we have a msgid, we can track our redirects */
     if (m->id) {
         snprintf(buf, sizeof(buf), "%s-%s", m->id, rc->addr);
-        sievedb = make_sieve_db(mbname_userid(sd->mbname));
+        sievedb = make_sieve_db(mbname_recipient(sd->mbname,
((deliver_data_t *) mc)->ns));

         dkey.id = buf;
         dkey.to = sievedb;
@@ -496,7 +496,7 @@ static int sieve_reject(void *ac,
     body = msg_getheader(md, "original-recipient");
     origreceip = body ? body[0] : NULL;
     if ((res = send_rejection(md->id, md->return_path,
-                              origreceip, mbname_userid(sd->mbname),
+                              origreceip, mbname_recipient(sd->mbname,
((deliver_data_t *) mc)->ns),
                               rc->msg, md->data)) == 0) {
         snmp_increment(SIEVE_REJECT, 1);
         syslog(LOG_INFO, "sieve rejected: %s to: %s",
@@ -735,7 +735,7 @@ static int send_response(void *ac,
     while (waitpid(sm_pid, &sm_stat, 0) < 0);

     if (sm_stat == 0) { /* sendmail exit value */
-        sievedb = make_sieve_db(mbname_userid(sdata->mbname));
+        sievedb = make_sieve_db(mbname_recipient(sdata->mbname,
((deliver_data_t *) mc)->ns));

         dkey.id = outmsgid;
         dkey.to = sievedb;

Reply via email to