December 19, 2021 Roberto Puzzanghera 0 comments
qmail-spp
provides plug-in support for qmail-smtpd. It allows you to write external programs and use them to checkSMTP
command argument validity. The plug-in can trigger several actions, like denying a command with an error message, logging data, adding a header and much more.
Today I played for the first time with an ancient patch for qmail
: qmail-spp
and I was really impressed for the ease of use and the elegance of its code, which is inserted inside qmail-smtpd.c
with a few touches, despite of the many things that it can do when installed and enabled.
It can run a custom plugin in any language and at any level of the smtp
session, grabbing the environment variables, writing into stderr
or blocking the smtp
session with a return error for the sender.
In no time at all I managed to understand its logic and write a small plugin by adapting a c program I wrote for s/qmail
a few months ago to check the validity of the recipient.
Of course I decided to add this patch to my combo. I've just modified the way it has to be enabled, just not to bother those who don't want to touch their run scripts. So, while the original patch is enabled by default, I modified things a little bit so that you have to manually enable it by exporting the variable ENABLE_SPP
in your run scripts. Therefore the original NOSPP
variable is useless.
Have fun!
RBL and Bordermailer
March 20, 2023 09:31
RBL and Bordermailer
March 20, 2023 09:13
RBL and Bordermailer
March 18, 2023 15:52
Bug in dknewkey
March 18, 2023 11:35
What is qq_internal_bug_?
March 18, 2023 11:28
What is qq_internal_bug_?
March 18, 2023 11:08
What is qq_internal_bug_?
March 18, 2023 08:48
What is qq_internal_bug_?
March 18, 2023 08:08
What is qq_internal_bug_?
March 18, 2023 07:43
What is qq_internal_bug_?
March 18, 2023 04:37
Tags
apache clamav dkim dovecot ezmlm fail2ban hacks lamp letsencrypt linux linux-vserver lxc mariadb mediawiki mozilla mysql openboard owncloud patches php proftpd qmail qmail to postfix qmail-spp qmailadmin rbl roundcube rsync sieve simscan slackware solr spamassassin spf ssh ssl surbl tcprules tex ucspi-tcp vpopmail vqadmin