[mlmmj] README.exim4 broken, needs update
Florian Berger <[email protected]> Thu, 7 Dec 2023 22:29:20 +0000
| Newsgroups | org.mlmmj.mlmmj |
|---|---|
| Message-ID | <[email protected]> |
The mlmmj.org website hosts a tutorial for exim 4 setup at http://mlmmj.org/docs/readme-exim4/ ,
which in turn refers to https://plonk.de/sw/mlmmj/README.exim4 as the most recent original (hence
author Jakob Hirsch in cc:).
For the transport configuration, it advertises:
mlmmj_transport:
[irrelevant lines left out]
command = /usr/local/bin/mlmmj-recieve -F -L MLMMJ_HOME/${lc:$local_part}
This will no longer work in recent versions of exim (4.94 and above). exim now considers
sender-derived data tainted, and will refuse to use them as-is. See
- https://git.exim.org/exim.git/blob/HEAD:/src/README.UPDATING
- https://www.exim.org/exim-html-current/doc/html/spec_html/ch-string_expansions.html
As far as the mlmmj config is concerned, $local_part is considered tainted.
It can reasonably be de-tainted by changing it into a directory lookup:
mlmmj_transport:
[unchanged lines left out]
command = /usr/bin/mlmmj-receive -F -L "${lookup {$local_part} dsearch,ret=full {MLMMJ_HOME}}"
To avoind exim users running into issues, the tutorial at plonk.de and mlmmj.org should be updated
accordingly.
Thanks for considering,
Florian