From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pmg-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
	by lore.proxmox.com (Postfix) with ESMTPS id E28BC1FF187
	for <inbox@lore.proxmox.com>; Wed, 23 Apr 2025 10:46:49 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 4A0DFCD59;
	Wed, 23 Apr 2025 10:46:47 +0200 (CEST)
From: Hannes Duerr <h.duerr@proxmox.com>
To: pmg-devel@lists.proxmox.com
Date: Wed, 23 Apr 2025 10:45:49 +0200
Message-Id: <20250423084549.20411-1-h.duerr@proxmox.com>
X-Mailer: git-send-email 2.39.5
MIME-Version: 1.0
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.044 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
 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
 URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See
 http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more
 information. [mailqueue.pm]
Subject: [pmg-devel] [PATCH pmg-api v2] trim Message-ID when parsing E-mail
X-BeenThere: pmg-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox Mail Gateway development discussion
 <pmg-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pmg-devel>, 
 <mailto:pmg-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pmg-devel/>
List-Post: <mailto:pmg-devel@lists.proxmox.com>
List-Help: <mailto:pmg-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel>, 
 <mailto:pmg-devel-request@lists.proxmox.com?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: pmg-devel-bounces@lists.proxmox.com
Sender: "pmg-devel" <pmg-devel-bounces@lists.proxmox.com>

when we currently parse emails we do not remove trailing newlines from
the message-id. The consequence of this is that if you use the rule
system macro __MSGID__, there is also a newline at the end of the
string. This in turn leads to problems if you create a rule and want to
add something after the message ID.
One use case for this is if you want to remove or change the domain from
the MSGID for privacy reasons

Signed-off-by: Hannes Duerr <h.duerr@proxmox.com>
---
 src/PMG/MailQueue.pm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/PMG/MailQueue.pm b/src/PMG/MailQueue.pm
index 4e37cb9..eda4037 100644
--- a/src/PMG/MailQueue.pm
+++ b/src/PMG/MailQueue.pm
@@ -4,6 +4,7 @@ use strict;
 use warnings;
 
 use PVE::SafeSyslog;
+use PVE::Tools qw (trim);
 use MIME::Parser;
 use IO::File;
 use Encode;
@@ -394,7 +395,7 @@ sub parse_mail {
     PMG::MIMEUtils::fixup_multipart($entity);
 
     if ((my $idcount = $entity->head->count ('Message-Id')) > 0) {
-	$self->msgid ($entity->head->get ('Message-Id', $idcount - 1));
+	$self->msgid(trim($entity->head->get ('Message-Id', $idcount - 1)));
     }
 
     # fixme: add parse_time to statistic database
-- 
2.39.5



_______________________________________________
pmg-devel mailing list
pmg-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel