On Wed, 7 Oct 2020, Yves Goergen via Exim-users wrote:
Hello,
I'm setting up a new mail server with Exim and try to get the Sieve filter
working as it does on another server. But it doesn't. And I don't know why.
The Exim version is 4.93 on Ubuntu Linux 20.04.
This is a part of my Exim config. All addresses with maildirs and sieve data
is stored in a database.
SQL_FILTER = \
select E'# Sieve filter\n' || sieve_filter \
from mail_entries \
where local = '${quote_pgsql:$local_part}' and domain =
'${quote_pgsql:$domain}' and maildir <> '' and sieve_filter <> ''
The mainlog doesn't show more than the in and out events. There are
especially no errors. (I can have errors when I leave out the Sieve filter
comment prefix or use an invalid database query or break the database
permissions. I've seen all of this but they're fixed and the messages are
gone.)
How can I debug or fix the Sieve filter in Exim? I thought that the config I
have here is about the same as what's already working with the Exim from
Ubuntu 16.04.
A new concept "Tainting" was introduced to exim between Ubuntu 16.04 and 20.04.
quote_pgsql may untaint $local_part (I am not familiar with quote_pgsql),
but in many configurations $local_part causes taintedness and failures;
the fix in some cases is to replace it with $local_part_data *and* ensure
that the router does check_local_user.
--
Andrew C. Aitchison Kendal, UK
[email protected]
--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/