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

Reply via email to