public inbox for pmg-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Hannes Duerr <h.duerr@proxmox.com>
To: pmg-devel@lists.proxmox.com
Subject: [pmg-devel] [RFC pmg-api] trim Message-ID when parsing E-mail
Date: Mon, 14 Apr 2025 17:36:56 +0200	[thread overview]
Message-ID: <20250414153656.98610-1-h.duerr@proxmox.com> (raw)

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.

Signed-off-by: Hannes Duerr <h.duerr@proxmox.com>
---

Notes:
    I'm not 100% sure whether we can simply trim the newline without any
    problems. I have searched through the code a bit, but I have not come
    across any problematic areas. We use the msgid for the log messages, but
    it is in the last position there and a newline is set. This means that
    the log message does not change
    If anyone has any objections or other ideas on how to tackle the
    problem, I'd be interested to hear them

 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..2af95bd 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


             reply	other threads:[~2025-04-14 15:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-14 15:36 Hannes Duerr [this message]
2025-04-17 14:31 ` Stoiko Ivanov
2025-04-23  8:47   ` Hannes Duerr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250414153656.98610-1-h.duerr@proxmox.com \
    --to=h.duerr@proxmox.com \
    --cc=pmg-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal