Hello,

I noticed that sieve's duplicate function is not working when the MessageID
header has a line break and I have encountered messages originating from
Microsoft 365 this way.

 

For example:

 

# test 1

From:  <mailto:te...@domain.com.br> te...@domain.com.br

To:  <mailto:c...@domain.com.br> c...@domain.com.br

Subject: test

Message-Id:  <mailto:854115.209399851-sendEmail@pa1>
854115.209399851-sendEmail@pa1

Date: Wed, 19 Jun 2024 12:35:16 -0300 (-03)

 

Test

 

# test 2

From:  <mailto:te...@domain.com.br> te...@domain.com.br

To:  <mailto:c...@domain.com.br> c...@domain.com.br

Subject: test

Message-ID:

 <mailto:854115.209399851-sendEmail@pa1> 854115.209399851-sendEmail@pa1

Date: Wed, 19 Jun 2024 12:35:16 -0300 (-03)

 

test

 

# dovecot log

Jun 19 12:59:33 server1 dovecot[513090]: lmtp(c...@domain.com.br)
<mailto:c...@domain.com.br)%3c2993309%3e%3c4AeXHGUAc2adrC0AZCVTkw>
<2993309><4AeXHGUAc2adrC0AZCVTkw>: sieve: subject=test
from:te...@domain.com.br sender:te...@domain.com.br to: c...@domain.com.br
<mailto:c...@domain.com.br>  size:1010 msgid=854115.209399851-sendEmail@pa1
<mailto:854115.209399851-sendEmail@pa1>  status=stored mail into mailbox
'INBOX' delivery_time=3 session_time=1

 

Jun 19 12:59:35 server1 dovecot[513090]: lmtp(c...@domain.com.br)
<mailto:c...@domain.com.br)%3c2993309%3e%3csKNOK2cAc2adrC0AZCVTkw>
<2993309><sKNOK2cAc2adrC0AZCVTkw>: sieve: subject=test
from:te...@domain.com.br sender:te...@domain.com.br to: c...@domain.com.br
<mailto:c...@domain.com.br>  size:1014 msgid=854115.209399851-sendEmail@pa1
<mailto:854115.209399851-sendEmail@pa1>  status=stored mail into mailbox
'INBOX' delivery_time=3 session_time=1

 

# sieve rule

require ["duplicate", "fileinto", "envelope", "variables"];

if envelope :matches "from" "*" { set "sender" "${1}"; }

if header :matches "subject" "*" { set "subject" "${1}"; }

if header :matches "message-id" "*" {

    if duplicate :seconds 300 :uniqueid "${sender} ${subject} ${0}"{

        discard;

   }

}

 

Regards,

Ricardo

_______________________________________________
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org

Reply via email to