Hello,
The documentation says imapsieve_url "has no effect on the
administrator-controlled Sieve scripts". However, when setting this item, I
get lines such as:
Error: imapsieve: mailbox INBOX: Failed to read /shared/imapsieve/script mailbox
attribute: Mailbox attributes not enabled
and that's it. imapsieve_mailboxXXX_* settings are completely ignored.
Unsetting imapsieve_url makes it all work again.
# 2.3.11.3 (502c39af9): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.11 (6c69c917)
# OS: Linux 4.19.0-5-amd64 x86_64 Debian bullseye/sid xfs
# Hostname: ------
auth_master_user_separator = *
auth_mechanisms = plain login
auth_verbose = yes
imapc_features = rfc822.size fetch-headers
imapc_host = imap.gmail.com
imapc_port = 993
imapc_ssl = imaps
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_gid = vmail
mail_home = /srv/mail/domains/%d/%n
mail_location = mdbox:/srv/mail/domains/%d/%n/mdbox
mail_plugins = quota fts fts_solr
mail_prefetch_count = 20
mail_privileged_group = mail
mail_uid = vmail
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 imapsieve vnd.dovecot.imapsieve
mdbox_preallocate_space = yes
namespace inbox {
? inbox = yes
? location ? mailbox Drafts {
??? auto = subscribe
??? special_use = \Drafts
? }
? mailbox Junk {
??? auto = subscribe
??? autoexpunge = 30 days
??? special_use = \Junk
? }
? mailbox Sent {
??? auto = subscribe
??? special_use = \Sent
? }
? mailbox "Sent Messages" {
??? special_use = \Sent
? }
? mailbox Trash {
??? auto = subscribe
??? autoexpunge = 30 days
??? special_use = \Trash
? }
? prefix ? separator = /
}
passdb {
? args = /etc/dovecot/master-users
? driver = passwd-file
? master = yes
? pass = yes
}
passdb {
? args = /etc/dovecot/dovecot-sql.conf.ext
? driver = sql
}
plugin {
? fts = solr
? fts_autoindex = yes
? fts_solr = url=http://127.0.0.1:8983/solr/dovecot/
? fts_tika = http://127.0.0.1:9998/tika/
? imapsieve_mailbox1_before = file:/usr/local/lib/imapsieve/report-spam.sieve
? imapsieve_mailbox1_causes = COPY
? imapsieve_mailbox1_name = Junk
? imapsieve_mailbox2_before = file:/usr/local/lib/imapsieve/report-ham.sieve
? imapsieve_mailbox2_causes = COPY
? imapsieve_mailbox2_from = Junk
? imapsieve_mailbox2_name = *
? imapsieve_mailbox3_before = file:/usr/local/lib/imapsieve/report-spam.sieve
? imapsieve_mailbox3_causes = COPY
? imapsieve_mailbox3_name = Junk2
? imapsieve_mailbox4_before = file:~/sieve/IMAP-Sent.sieve
? imapsieve_mailbox4_causes = APPEND COPY
? imapsieve_mailbox4_name = Sent
? quota = count:User quota:noenforcing
? quota_rule = *:storage=5120M
? quota_vsizes = yes
? sieve = file:~/sieve;active=~/.dovecot.sieve
? sieve_before = /etc/dovecot/sieve-global/fileinto-spam.sieve
? sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
? sieve_pipe_bin_dir = /usr/local/lib/imapsieve
? sieve_plugins = sieve_imapsieve sieve_extprograms
}
pop3_fast_size_lookups = yes
pop3_no_flag_updates = yes
protocols = " imap lmtp sieve pop3"
quota_full_tempfail = yes
service auth-worker {
? user = $default_internal_user
}
service auth {
? unix_listener auth-client {
??? group = Debian-exim
??? mode = 0660
??? user = Debian-exim
? }
? unix_listener auth-userdb {
??? group = vmail
??? mode = 0660
??? user = vmail
? }
? user = $default_internal_user
}
service imap-login {
? inet_listener imap {
??? port = 143
? }
? service_count = 0
}
service imap {
? vsz_limit = 512 M
}
service lmtp {
? inet_listener lmtp {
??? address = -------
??? port = 2525
? }
? unix_listener lmtp {
??? group = Debian-exim
??? mode = 0660
??? user = root
? }
}
service managesieve-login {
? inet_listener sieve {
??? port = 4190
? }
? service_count = 0
}
service pop3-login {
? inet_listener pop3 {
??? port = 110
? }
? service_count = 0
}
ssl = required
ssl_cert = </etc/letsencrypt/live/--------/fullchain.pem
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
? driver = prefetch
}
userdb {
? args = /etc/dovecot/dovecot-sql.conf.ext
? driver = sql
}
verbose_proctitle = yes
protocol lmtp {
? mail_plugins = quota fts fts_solr sieve
? ssl = no
}
protocol !indexer-worker {
? mail_vsize_bg_after_count = 100
}
protocol lda {
? mail_plugins = quota fts fts_solr sieve
}
protocol imap {
? mail_max_userip_connections = 30
? mail_plugins = quota fts fts_solr imap_quota imap_sieve
}
protocol sieve {
? mail_max_userip_connections = 10
}
Stephan Bosch
2020-Oct-27 11:52 UTC
imapsieve: setting imapsieve_url disables admin scripts
On 27/10/2020 11:32, Gedalya wrote:> Hello, > > The documentation says imapsieve_url "has no effect on the administrator-controlled Sieve scripts". However, when setting this item, I get lines such as: > > Error: imapsieve: mailbox INBOX: Failed to read /shared/imapsieve/script mailbox attribute: Mailbox attributes not enabled > > and that's it. imapsieve_mailboxXXX_* settings are completely ignored. Unsetting imapsieve_url makes it all work again.https://doc.dovecot.org/configuration_manual/imap_metadata/ METADATA support is needed for IMAPSieve with user Sieve scripts. Regards, Stephan.> > # 2.3.11.3 (502c39af9): /etc/dovecot/dovecot.conf > # Pigeonhole version 0.5.11 (6c69c917) > # OS: Linux 4.19.0-5-amd64 x86_64 Debian bullseye/sid xfs > # Hostname: ------ > auth_master_user_separator = * > auth_mechanisms = plain login > auth_verbose = yes > imapc_features = rfc822.size fetch-headers > imapc_host = imap.gmail.com > imapc_port = 993 > imapc_ssl = imaps > log_timestamp = "%Y-%m-%d %H:%M:%S " > mail_gid = vmail > mail_home = /srv/mail/domains/%d/%n > mail_location = mdbox:/srv/mail/domains/%d/%n/mdbox > mail_plugins = quota fts fts_solr > mail_prefetch_count = 20 > mail_privileged_group = mail > mail_uid = vmail > 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 imapsieve vnd.dovecot.imapsieve > mdbox_preallocate_space = yes > namespace inbox { > ? inbox = yes > ? location > ? mailbox Drafts { > ??? auto = subscribe > ??? special_use = \Drafts > ? } > ? mailbox Junk { > ??? auto = subscribe > ??? autoexpunge = 30 days > ??? special_use = \Junk > ? } > ? mailbox Sent { > ??? auto = subscribe > ??? special_use = \Sent > ? } > ? mailbox "Sent Messages" { > ??? special_use = \Sent > ? } > ? mailbox Trash { > ??? auto = subscribe > ??? autoexpunge = 30 days > ??? special_use = \Trash > ? } > ? prefix > ? separator = / > } > passdb { > ? args = /etc/dovecot/master-users > ? driver = passwd-file > ? master = yes > ? pass = yes > } > passdb { > ? args = /etc/dovecot/dovecot-sql.conf.ext > ? driver = sql > } > plugin { > ? fts = solr > ? fts_autoindex = yes > ? fts_solr = url=http://127.0.0.1:8983/solr/dovecot/ > ? fts_tika = http://127.0.0.1:9998/tika/ > ? imapsieve_mailbox1_before = file:/usr/local/lib/imapsieve/report-spam.sieve > ? imapsieve_mailbox1_causes = COPY > ? imapsieve_mailbox1_name = Junk > ? imapsieve_mailbox2_before = file:/usr/local/lib/imapsieve/report-ham.sieve > ? imapsieve_mailbox2_causes = COPY > ? imapsieve_mailbox2_from = Junk > ? imapsieve_mailbox2_name = * > ? imapsieve_mailbox3_before = file:/usr/local/lib/imapsieve/report-spam.sieve > ? imapsieve_mailbox3_causes = COPY > ? imapsieve_mailbox3_name = Junk2 > ? imapsieve_mailbox4_before = file:~/sieve/IMAP-Sent.sieve > ? imapsieve_mailbox4_causes = APPEND COPY > ? imapsieve_mailbox4_name = Sent > ? quota = count:User quota:noenforcing > ? quota_rule = *:storage=5120M > ? quota_vsizes = yes > ? sieve = file:~/sieve;active=~/.dovecot.sieve > ? sieve_before = /etc/dovecot/sieve-global/fileinto-spam.sieve > ? sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment > ? sieve_pipe_bin_dir = /usr/local/lib/imapsieve > ? sieve_plugins = sieve_imapsieve sieve_extprograms > } > pop3_fast_size_lookups = yes > pop3_no_flag_updates = yes > protocols = " imap lmtp sieve pop3" > quota_full_tempfail = yes > service auth-worker { > ? user = $default_internal_user > } > service auth { > ? unix_listener auth-client { > ??? group = Debian-exim > ??? mode = 0660 > ??? user = Debian-exim > ? } > ? unix_listener auth-userdb { > ??? group = vmail > ??? mode = 0660 > ??? user = vmail > ? } > ? user = $default_internal_user > } > service imap-login { > ? inet_listener imap { > ??? port = 143 > ? } > ? service_count = 0 > } > service imap { > ? vsz_limit = 512 M > } > service lmtp { > ? inet_listener lmtp { > ??? address = ------- > ??? port = 2525 > ? } > ? unix_listener lmtp { > ??? group = Debian-exim > ??? mode = 0660 > ??? user = root > ? } > } > service managesieve-login { > ? inet_listener sieve { > ??? port = 4190 > ? } > ? service_count = 0 > } > service pop3-login { > ? inet_listener pop3 { > ??? port = 110 > ? } > ? service_count = 0 > } > ssl = required > ssl_cert = </etc/letsencrypt/live/--------/fullchain.pem > ssl_client_ca_dir = /etc/ssl/certs > ssl_dh = # hidden, use -P to show it > ssl_key = # hidden, use -P to show it > userdb { > ? driver = prefetch > } > userdb { > ? args = /etc/dovecot/dovecot-sql.conf.ext > ? driver = sql > } > verbose_proctitle = yes > protocol lmtp { > ? mail_plugins = quota fts fts_solr sieve > ? ssl = no > } > protocol !indexer-worker { > ? mail_vsize_bg_after_count = 100 > } > protocol lda { > ? mail_plugins = quota fts fts_solr sieve > } > protocol imap { > ? mail_max_userip_connections = 30 > ? mail_plugins = quota fts fts_solr imap_quota imap_sieve > } > protocol sieve { > ? mail_max_userip_connections = 10 > } >
On 10/27/20 7:52 PM, Stephan Bosch wrote:> > > On 27/10/2020 11:32, Gedalya wrote: >> Hello, >> >> The documentation says imapsieve_url "has no effect on the administrator-controlled Sieve scripts". However, when setting this item, I get lines such as: >> >> Error: imapsieve: mailbox INBOX: Failed to read /shared/imapsieve/script mailbox attribute: Mailbox attributes not enabled >> >> and that's it. imapsieve_mailboxXXX_* settings are completely ignored. Unsetting imapsieve_url makes it all work again. > > https://doc.dovecot.org/configuration_manual/imap_metadata/ > > METADATA support is needed for IMAPSieve with user Sieve scripts.OK, I see, so if I want user scripts to actually work I'd have to enable that. Why does a broken user script configuration have to break admin scripts?