community/rt4: fix email patch for v4.4.2

Fixes #8712
This commit is contained in:
Kory Prince 2018-03-22 13:52:31 -05:00 committed by Leonardo Arena
parent b9f20e63a6
commit 8a968286ba
2 changed files with 49 additions and 13 deletions

View File

@ -1,29 +1,65 @@
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
From 0fa9baf1004fb02a370cc78c1586f3207b1712b8 Mon Sep 17 00:00:00 2001
From: Kory Prince <korylprince@gmail.com>
Date: Thu, 22 Mar 2018 13:00:02 -0500
Subject: [PATCH] email: allow envelope from overriding from templates
Add X-RT-Envelope-From header that will override the envelope
from if using sendmailpipe mail sending.
---
lib/RT/Interface/Email.pm | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff -ru rt-4.2.9.orig/lib/RT/Interface/Email.pm rt-4.2.9/lib/RT/Interface/Email.pm
--- rt-4.2.9.orig/lib/RT/Interface/Email.pm 2014-10-23 18:49:38.000000000 -0300
+++ rt-4.2.9/lib/RT/Interface/Email.pm 2014-10-31 08:14:48.557121324 -0200
@@ -754,7 +754,8 @@
diff --git a/lib/RT/Interface/Email.pm b/lib/RT/Interface/Email.pm
index 7466c0f78..b90bc1a73 100644
--- a/lib/RT/Interface/Email.pm
+++ b/lib/RT/Interface/Email.pm
@@ -740,7 +740,14 @@ sub MailError {
}
sub _OutgoingMailFrom {
- my $TicketObj = shift;
+ my (%args) = (
+ Ticket => undef,
+ envelope_from => undef,
+ @_,
+ );
+
+ my $TicketObj = $args{'Ticket'};
+ my $envelope_from = $args{'envelope_from'};
my $MailFrom = RT->Config->Get('SetOutgoingMailFrom');
my $OutgoingMailAddress = $MailFrom =~ /\@/ ? $MailFrom : undef;
@@ -754,8 +761,9 @@ sub _OutgoingMailFrom {
if ($QueueAddressOverride) {
$OutgoingMailAddress = $QueueAddressOverride;
} else {
- $OutgoingMailAddress ||= $Queue->CorrespondAddress
- || RT->Config->Get('CorrespondAddress');
+ $OutgoingMailAddress ||= $envelope_from
+ || $Queue->CorrespondAddress
|| RT->Config->Get('CorrespondAddress');
+ || $Queue->CorrespondAddress
+ || RT->Config->Get('CorrespondAddress');
}
}
@@ -824,6 +825,9 @@
elsif ($Overrides->{'Default'}) {
@@ -823,6 +831,9 @@ sub SendEmail {
my $msgid = Encode::decode( "UTF-8", $args{'Entity'}->head->get('Message-ID') || '' );
chomp $msgid;
+
+ my $envelope_from = $args{'Entity'}->head->get('X-RT-Envelope-From');
+ chomp $envelope_from;
+
# If we don't have any recipients to send to, don't send a message;
unless ( $args{'Entity'}->head->get('To')
|| $args{'Entity'}->head->get('Cc')
@@ -901,7 +912,7 @@ sub SendEmail {
if ( $args{'Bounce'} ) {
push @args, shellwords(RT->Config->Get('SendmailBounceArguments'));
} elsif ( RT->Config->Get('SetOutgoingMailFrom') ) {
- my $OutgoingMailAddress = _OutgoingMailFrom($TicketObj);
+ my $OutgoingMailAddress = _OutgoingMailFrom( $TicketObj, $envelope_from );
push @args, "-f", $OutgoingMailAddress
if $OutgoingMailAddress;
--
2.15.1

View File

@ -3,7 +3,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=rt4
pkgver=4.4.2
pkgrel=0
pkgrel=1
pkgdesc="Request Tracker - issue and bug tracker"
pkgusers="rt4"
pkggroups="rt4"
@ -175,6 +175,6 @@ package() {
}
sha512sums="23e318d10c49d39c1542664efa2b9f98d1dcd613c279dc8ceca0ad9aed89a5d989316e833492ed3281543ec85f6e0f5141a86f70852776bf0d54166aa126431e rt-4.4.2.tar.gz
010bcdaab295086e69ecbf066becd718d9c33507cc9685bdb2a8c251d21bbfbc0f5b21b476d38df1b06a093678d550c1542c775dd6fc61295ea267a419a9867e 0001-email-allow-envelope-from-overriding-from-templates.patch
5782bc2732002d93fa66a87b86a25266e227ed90946a425f1f7b1aa09d028fa9562d9cf532ffa1f7e7c4b28f85b1f982c7629ac37621abe47b60e8d2e0d467b0 0001-email-allow-envelope-from-overriding-from-templates.patch
62308220d00e11059491533e87fb7378226609fcef332c31b2db75ba32bbbf3343cd0eb7fd53288f62700ee456669f216bd78550fb1cd7e5d4fe85ef41976c0c rt-varpath.patch
cac79f231e1b1915962de8e4a86812fcaa0f1f64384a34557fac860c0fb0ae33d5dfd2371c30c07310391735e7348022e62bd5d453674a41ac7e77865d79dab9 rt-autoconf-version.patch"