[pmg-devel] applied-series: [PATCH pmg-api/pmg-docs v2] make filter timeout configurable

Thomas Lamprecht t.lamprecht at proxmox.com
Thu Feb 22 16:23:38 CET 2024


Am 12/01/2024 um 20:21 schrieb Stoiko Ivanov:
> v1->v2:
> * addressed Thomas' feedback - Thanks very much
> * changed the setting from filter_timeout to filter-timeout (thus
>   template toolkit needs to access it as 'pmg.mail.item('filter-timeout')
> * fixed a few glitches in the commit messages
> 
> original cover-letter for v1:
> This series improves mail-handling in case pmg-smtp-filter takes too long in
> processing a mail.
> Currently the timeout is based on postfix defaults which differ between
> after-queue filtering (600s) and before-queue filtering (120s) (patch 1/4
> unifies the timeout, and is meant as a stop-gap measure).
> 
> In both cases - once the timeout is reached the behavior is inconvenient
> (to put it mildly):
> * postfix detects the timeout and reports a temporary 4xx code to the
>   sender, while pmg-smtp-filter sends the mail further after processing
>   anyways
> This results in such mails getting delivered multiple times to the
> recipient (and you need the administrator of the server sending to PMG to
> remove it from their queue, for the deliveries to stop).
> 
> Tested by adding a `sleep 200;` in PMG::Utils::analyze_virus_clam.
> 
> The docs patch is necessary for patch 3/5 (new config-options need to be
> known in the doc-generator)
> 
> pmg-api:
> Stoiko Ivanov (4):
>   templates: postfix: set same timeouts for before and after-queue
>   pmg-smtp-filter: cleanup use of gettimeofday
>   config: postfix: make smtp-filter-timeout configurable
>   pmg-smtp-filter: die if processing took longer than the timeout
> 
>  src/PMG/Config.pm        |  9 +++++++++
>  src/bin/pmg-smtp-filter  | 21 ++++++++++++---------
>  src/templates/main.cf.in |  5 ++++-
>  3 files changed, 25 insertions(+), 10 deletions(-)
> 
> pmg-docs:
> Stoiko Ivanov (1):
>   doc-generator: add new option filter-timeout
> 
>  gen-pmg.conf.5-opts.pl | 1 +
>  1 file changed, 1 insertion(+)
> 


applied, with Dominik's R-b & T-b, thanks!




More information about the pmg-devel mailing list