From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id B3F17B5A6 for ; Mon, 11 Sep 2023 16:23:43 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 967A49CF6 for ; Mon, 11 Sep 2023 16:23:43 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Mon, 11 Sep 2023 16:23:42 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id CB36A447EE for ; Mon, 11 Sep 2023 16:23:41 +0200 (CEST) From: Stoiko Ivanov To: pmg-devel@lists.proxmox.com Date: Mon, 11 Sep 2023 16:23:12 +0200 Message-Id: <20230911142317.19746-1-s.ivanov@proxmox.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.089 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pmg-devel] [PATCH pmg-api/docs] make filter timeout configurable X-BeenThere: pmg-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Mail Gateway development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Sep 2023 14:23:43 -0000 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: refactor 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 | 6 ++++++ src/bin/pmg-smtp-filter | 22 +++++++++++++--------- src/templates/main.cf.in | 5 ++++- 3 files changed, 23 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(+) -- 2.39.2