Dovecot 1.2.10 in Debian, using Dovecot sieve. I have a sieve script, generated by Ingo, that's supposed to mark spam messages as "Seen" and file them into the Junk folder. In part it reads:
require ["regex", "body", "imapflags", "fileinto"]; if exists "X-Spam-Flag" { addflag "\\Seen"; fileinto "Junk"; removeflag "\\Seen"; stop; } This has been working correctly for a long time, but since about 2 weeks ago now, the "Seen" flag isn't being set, although the messages are still being filed into the Junk folder. In two different mail clients, new messages in the Junk folder show up as being unread. Looking at the mail files that hold those messages, the file names don't have an "S" flag appended, while older messages all have the "S" and show up as already seen in the mail clients. I don't believe that I've updated dovecot recently, so I'm not sure why the behavior has changed. Note that I do have plugin { sieve_extensions = +imapflags } in dovecot.conf. I know that imapflags is deprecated, but it is still supposed to be supported. Unfortunately ingo1 doesn't support imap4flags yet (http://bugs.horde.org/ticket/8784). I'm trying to find log information that might indicate an error, but I'm not finding much. /var/log/exim4/mainlog just says: 2010-02-15 14:22:14 1Nh6WK-000200-8z <x...@xxx.xxx>: deliver_pipe transport output: deliver(andrex): Info: sieve: msgid=<ad58db2a42700ec0e5c924c8882d4...@yourmailnews.net>: stored mail into mailbox 'Junk' The wiki says that there should be a log file ~/.dovecot.sieve.log, but there isn't one, which I guess means there are no error messages. Output of dovecot -a is below. Any ideas why the Seen flag isn't being set any more? Thanks, Andrew. # dovecot -a # 1.2.10: /etc/dovecot/dovecot.conf # OS: Linux 2.6.26 x86_64 Debian squeeze/sid base_dir: /var/run/dovecot log_path: info_log_path: log_timestamp: %Y-%m-%d %H:%M:%S syslog_facility: mail protocols: imap imaps managesieve listen(default): localhost listen(imap): localhost listen(managesieve): localhost:2000 ssl_listen: imap ssl: yes ssl_ca_file: ssl_cert_file: /etc/dovecot/helium-imaps.cert.pem ssl_key_file: /etc/dovecot/helium-imaps.key.pem ssl_key_password: ssl_parameters_regenerate: 0 ssl_cipher_list: ssl_cert_username_field: commonName ssl_verify_client_cert: no disable_plaintext_auth: yes verbose_ssl: no shutdown_clients: yes nfs_check: yes version_ignore: no login_dir: /var/run/dovecot/login login_executable(default): /usr/lib/dovecot/imap-login login_executable(imap): /usr/lib/dovecot/imap-login login_executable(managesieve): /usr/lib/dovecot/managesieve-login login_user: dovecot login_greeting: Dovecot ready. login_log_format_elements: user=<%u> method=%m rip=%r lip=%l %c login_log_format: %$: %s login_process_per_connection: yes login_chroot: yes login_trusted_networks: login_process_size: 64 login_processes_count: 3 login_max_processes_count: 128 login_max_connections: 256 valid_chroot_dirs: mail_chroot: max_mail_processes: 512 mail_max_userip_connections: 10 verbose_proctitle: no first_valid_uid: 500 last_valid_uid: 0 first_valid_gid: 1 last_valid_gid: 0 mail_access_groups: mail_privileged_group: mail mail_uid: mail_gid: mail_location: maildir:~/.mail mail_cache_fields: mail_never_cache_fields: imap.envelope mail_cache_min_mail_count: 0 mailbox_idle_check_interval: 30 mail_debug: no mail_full_filesystem_access: yes mail_max_keyword_length: 50 mail_save_crlf: no mmap_disable: yes dotlock_use_excl: yes fsync_disable: no mail_nfs_storage: no mail_nfs_index: no mailbox_list_index_disable: yes lock_method: fcntl maildir_stat_dirs: no maildir_copy_with_hardlinks: yes maildir_copy_preserve_filename: no maildir_very_dirty_syncs: no mbox_read_locks: fcntl mbox_write_locks: fcntl dotlock mbox_lock_timeout: 300 mbox_dotlock_change_timeout: 120 mbox_min_index_size: 0 mbox_dirty_syncs: yes mbox_very_dirty_syncs: no mbox_lazy_writes: yes dbox_rotate_size: 2048 dbox_rotate_min_size: 16 dbox_rotate_days: 1 mail_drop_priv_before_exec: no mail_executable(default): /usr/lib/dovecot/imap mail_executable(imap): /usr/lib/dovecot/imap mail_executable(managesieve): /usr/lib/dovecot/managesieve mail_process_size: 256 mail_plugins: mail_plugin_dir(default): /usr/lib/dovecot/modules/imap mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap mail_plugin_dir(managesieve): /usr/lib/dovecot/modules/managesieve mail_log_prefix: %Us(%u): mail_log_max_lines_per_sec: 10 imap_max_line_length: 65536 imap_capability: imap_client_workarounds: imap_logout_format: bytes=%i/%o imap_id_send: imap_id_log: imap_idle_notify_interval: 120 pop3_no_flag_updates: no pop3_enable_last: no pop3_reuse_xuidl: no pop3_save_uidl: no pop3_lock_session: no pop3_uidl_format: %08Xu%08Xv pop3_client_workarounds: pop3_logout_format: top=%t/%p, retr=%r/%b, del=%d/%m, size=%s dict_db_config: dict_process_count: 1 managesieve_max_line_length: 65536 managesieve_logout_format: bytes=%i/%o managesieve_implementation_string: dovecot lda: postmaster_address: postmas...@xxx.xxx mail_plugin_dir: /usr/lib/dovecot/modules/lda mail_plugins: sieve log_path: /dev/stderr log_timestamp: auth default: mechanisms: plain realms: default_realm: cache_size: 0 cache_ttl: 3600 cache_negative_ttl: 3600 executable: /usr/lib/dovecot/dovecot-auth user: root chroot: username_chars: abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@ username_translation: username_format: master_user_separator: anonymous_username: anonymous krb5_keytab: gssapi_hostname: winbind_helper_path: /usr/bin/ntlm_auth failure_delay: 2 verbose: no debug: no debug_passwords: no ssl_require_client_cert: no ssl_username_from_cert: no use_winbind: no count: 1 worker_max_count: 30 process_size: 256 passdb: driver: pam args: deny: no pass: no master: no userdb: driver: passwd args: plugin: sieve_extensions: +imapflags sieve_dir: ~/.mail/sieve