From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 3A1DE1FF13A for ; Wed, 10 Jun 2026 13:36:43 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 58C16AEB8; Wed, 10 Jun 2026 13:36:41 +0200 (CEST) From: Dominik Csapak To: pmg-devel@lists.proxmox.com Subject: [RFC PATCH pmg-api 2/3] pmgpolicy: mimic Net::Server::PreForkSimple's signal handlers in child Date: Wed, 10 Jun 2026 13:35:45 +0200 Message-ID: <20260610113634.2172613-2-d.csapak@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260610113634.2172613-1-d.csapak@proxmox.com> References: <20260610113634.2172613-1-d.csapak@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.049 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 Message-ID-Hash: U5KMVQTDEEJ7HJFCGXUFF4B3WJRSXTYO X-Message-ID-Hash: U5KMVQTDEEJ7HJFCGXUFF4B3WJRSXTYO X-MailFrom: d.csapak@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Mail Gateway development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: In PreForkSimple's `run_child` method, some signal handlers are reset that were copied over from the parent process. In pmgpolicy this method gets overwritten and some handlers are overwritten like the default, except SIGPIPE. This shouldn't introduce any changes currently since it's set to IGNORE in the parent already, but by mimicking the run_child behavior, we protect against future changes when it might get set to something else in the parent. Signed-off-by: Dominik Csapak --- sending as RFC because i'm currently not sure if it makes a difference at all, but it seems like the correct approach, considering it's what PreForkSimple also does. src/bin/pmgpolicy | 1 + 1 file changed, 1 insertion(+) diff --git a/src/bin/pmgpolicy b/src/bin/pmgpolicy index 31bffe7..e491d89 100755 --- a/src/bin/pmgpolicy +++ b/src/bin/pmgpolicy @@ -1003,6 +1003,7 @@ sub run_child { }; $SIG{'CHLD'} = 'DEFAULT'; + $SIG{'PIPE'} = 'IGNORE'; delete $prop->{children}; -- 2.47.3