Package: dovecot-sieve Version: 1:2.3.2.1-1 Severity: normal I recently upgraded dovecot and it now fails to start sieve processing. syslog contains:
Error: sieve: Failed to initialize script execution: Invalid postmaster_address: invalid address `postmaster@' specified for the postmaster_address setting The problem appears to be that the default dovecot configuration (/etc/dovecot/conf.d/15-lda.conf) allows the postmaster_address setting to default. The default value is postmaster@%d. Unfortunately in some contexts the domain (%d) is not known and so the postmaster_address ends up with the invalid value 'postmaster@'. This seems to have been the case for some time but does not seem to have caused any noticeable problems (for me, at least). However, a recent change to dovecot-sieve seems to insist on validating that address when initialising sieve processing. This causes sieve to fail, with the error shown above, even when the postmaster_address setting will not actually be used. No sieve scripts at all are run, whether they rely on that setting or not. Note: in my case, sieve is being called from dovecot-lda, which is handling local delivery. The workround is to manually configure postmaster_address. Personally I doubt the wisdom of the new validation, as it never seems to have caused a problem before. I don't know if it can be removed, or if the code can be improved to correctly detect the domain in more cases. But as this breaks all sieve scripts after a debian upgrade to this version please consider one or more of the following: 1) Add a NEWS item warning that the postmaster_address setting in /etc/dovecot/conf.d/15-lda.conf must be modified to specify the domain explicitly. 2) Do magic at upgrade time to fix the setting. 3) For new installations, make sure the setting is specified correctly so that they will be able to start using sieve. -- Package-specific info: dovecot configuration --------------------- # 2.3.2.1 (0719df592): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.2 () # OS: Linux 4.15.0-2-amd64 x86_64 Debian buster/sid # Hostname: black.home.cobb.me.uk protocol lmtp { mail_plugins = " sieve" } protocol lda { mail_plugins = " sieve" } -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (900, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.15.0-2-amd64 (SMP w/4 CPU cores) Locale: LANG=en_IE.utf8, LC_CTYPE=en_IE.utf8 (charmap=UTF-8) (ignored: LC_ALL set to en_IE.utf8), LANGUAGE=en_IE.utf8 (charmap=UTF-8) (ignored: LC_ALL set to en_IE.utf8) Shell: /bin/sh linked to /bin/bash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages dovecot-sieve depends on: ii dovecot-core 1:2.3.2.1-1 ii libc6 2.27-3 ii ucf 3.0038 dovecot-sieve recommends no packages. dovecot-sieve suggests no packages. Versions of packages dovecot-sieve is related to: ii dovecot-core [dovecot-common] 1:2.3.2.1-1 pn dovecot-dev <none> pn dovecot-gssapi <none> ii dovecot-imapd 1:2.3.2.1-1 pn dovecot-ldap <none> pn dovecot-lmtpd <none> pn dovecot-managesieved <none> pn dovecot-mysql <none> pn dovecot-pgsql <none> pn dovecot-pop3d <none> ii dovecot-sieve 1:2.3.2.1-1 pn dovecot-sqlite <none> -- no debconf information