Sieve filter fileinto doesn't preserve flags
Konstantinos Tsakiltzidis
ktsakiltzidis at modulus.gr
Mon Mar 5 12:35:52 EET 2018
my script is as simple as:
require ["imap4flags", "fileinto"];
if hasflag :contains "spam" {
fileinto "Public.telecoms.Spam";
}
the mails is correctly delivered in the above mailbox
but the flags have been removed
On 03/03/2018 09:56 AM, Stephan Bosch wrote:
> Op 3/2/2018 om 6:41 PM schreef Konstantinos Tsakiltzidis:
>> Using `fileinto` to move a mail into another mailbox removes flags
>>
>> that have been set with a previous sieve filter with `addflag`.
> I need to see your script to help you.
>
> Regards,
>
> Stephan Bosch.
>
>
>
>> # 2.2.33.2 (d6601f4ec): /etc/dovecot/dovecot.conf
>> # Pigeonhole version 0.4.21 (92477967)
>> # OS: Linux 4.9.0-6-amd64 x86_64 Debian 9.1 ext4
>> lda_mailbox_autocreate = yes
>> lda_mailbox_autosubscribe = yes
>> mail_debug = yes
>> mail_location = maildir:/var/vmail/%d/%n
>> managesieve_notify_capability = mailto
>> managesieve_sieve_capability = fileinto reject envelope
>> encoded-character vacation subaddress comparator-i;ascii-numeric
>> relational regex imap4flags copy include variables body enotify
>> environment mailbox date index ihave duplicate mime foreverypart
>> extracttext
>> namespace inbox {
>> inbox = yes
>> location =
>> mailbox Drafts {
>> special_use = \Drafts
>> }
>> mailbox Junk {
>> special_use = \Junk
>> }
>> mailbox Sent {
>> special_use = \Sent
>> }
>> mailbox "Sent Messages" {
>> special_use = \Sent
>> }
>> mailbox Trash {
>> special_use = \Trash
>> }
>> prefix =
>> separator = .
>> subscriptions = yes
>> type = private
>> }
>> namespace modulus {
>> list = children
>> location = maildir:/var/vmail/%d/Public:INDEXPVT=~/public/indexes
>> mailbox admin {
>> auto = subscribe
>> }
>> mailbox support {
>> auto = subscribe
>> }
>> mailbox telecoms {
>> auto = subscribe
>> }
>> prefix = Public.
>> separator = .
>> subscriptions = yes
>> type = public
>> }
>> passdb {
>> driver = pam
>> }
>> plugin {
>> acl = vfile
>> mail_log_events = flag_change
>> mail_log_fields = box flags uid
>> sieve = ~/dovecot.sieve
>> sieve_before = /var/vmail/global.sieve
>> sieve_dir = ~/sieve
>> sieve_global_dir = /var/vmail/sieve
>> }
>> protocols = " imap lmtp sieve lmtp"
>> service auth {
>> unix_listener /var/spool/postfix/private/auth {
>> group = mail
>> mode = 0666
>> user = postfix
>> }
>> unix_listener auth-userdb {
>> group = mail
>> mode = 0666
>> user = vmail
>> }
>> }
>> service imap-login {
>> inet_listener imap {
>> port = 0
>> }
>> }
>> service lmtp {
>> unix_listener /var/spool/postfix/private/dovecot-lmtp {
>> group = postfix
>> mode = 0600
>> user = postfix
>> }
>> }
>> service managesieve-login {
>> inet_listener sieve {
>> port = 4190
>> }
>> process_min_avail = 0
>> service_count = 1
>> vsz_limit = 64 M
>> }
>> service managesieve {
>> process_limit = 1024
>> }
>> ssl = required
>> ssl_cert = </etc/ssl/certs/mail.crt
>> ssl_key = # hidden, use -P to show it
>> userdb {
>> driver = passwd
>> }
>> protocol imap {
>> mail_max_userip_connections = 20
>> mail_plugins = " mail_log notify acl"
>> passdb {
>> args = /etc/dovecot/dovecot-ldap-users.conf.ext
>> driver = ldap
>> name =
>> }
>> userdb {
>> args = uid=vmail gid=mail home=/var/vmail/%d/%n
>> driver = static
>> name =
>> }
>> }
>> protocol lda {
>> mail_plugins = " sieve acl"
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-users.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/%n
>> }
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-groups.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/Public/.%n
>> mail=maildir:/var/vmail/%d/Public/.%n
>> }
>> }
>> protocol lmtp {
>> mail_plugins = " sieve acl"
>> postmaster_address = postmaster at modulus.gr
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-users.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/%n
>> }
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-groups.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/Public/.%n
>> mail=maildir:/var/vmail/%d/Public/.%n
>> }
>> }
>> protocol doveadm {
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-users.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/%n
>> }
>> userdb {
>> args = /etc/dovecot/dovecot-ldap-groups.conf.ext
>> driver = ldap
>> name =
>> override_fields = uid=vmail gid=mail home=/var/vmail/%d/Public/.%n
>> mail=maildir:/var/vmail/%d/Public/.%n
>> }
>> }
>> protocol sieve {
>> mail_max_userip_connections = 10
>> managesieve_implementation_string = Dovecot Pigeonhole
>> managesieve_logout_format = bytes=%i/%o
>> managesieve_max_line_length = 65536
>> passdb {
>> args = /etc/dovecot/dovecot-ldap-users.conf.ext
>> driver = ldap
>> name =
>> }
>> userdb {
>> args = uid=vmail gid=mail home=/var/vmail/%d/%n
>> driver = static
>> name =
>> }
>> }
>>
More information about the dovecot
mailing list