[pmg-devel] [PATCH pmg-api v2] trim Message-ID when parsing E-mail
Hannes Duerr
h.duerr at proxmox.com
Wed Apr 23 10:45:49 CEST 2025
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 at 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
More information about the pmg-devel
mailing list