diff --git a/mozilla/webtools/bugzilla/Bugzilla/Config.pm b/mozilla/webtools/bugzilla/Bugzilla/Config.pm
index 6bc149be920..c1c317d5760 100644
--- a/mozilla/webtools/bugzilla/Bugzilla/Config.pm
+++ b/mozilla/webtools/bugzilla/Bugzilla/Config.pm
@@ -251,6 +251,18 @@ sub UpdateParams {
delete $param{'enablequips'};
}
+ # Update e-mail text to use new mailfrom param (Bug 135812)
+ if (!exists $param{'mailfrom'}) {
+ $param{'passwordmail'} =~ s/^From: bugzilla-daemon$/From: %mailfrom%/mi;
+ $param{'passwordmail'} =~ s/\n\n/\nX-Bugzilla-Type: admin\n\n/;
+ $param{'newchangedmail'} =~ s/^From: bugzilla-daemon$/From: %mailfrom%/mi;
+ $param{'newchangedmail'} =~ s/\n\n/\nX-Bugzilla-Type: newchanged\n\n/;
+ $param{'voteremovedmail'} =~ s/^From: bugzilla-daemon$/From: %mailfrom%/mi;
+ $param{'voteremovedmail'} =~ s/\n\n/\nX-Bugzilla-Type: voteremoved\n\n/;
+ $param{'whinemail'} =~ s/^From: %maintainer%$/From: %mailfrom%/mi;
+ $param{'whinemail'} =~ s/\n\n/\nX-Bugzilla-Type: whine\n\n/;
+ }
+
# --- DEFAULTS FOR NEW PARAMS ---
foreach my $item (@param_list) {
diff --git a/mozilla/webtools/bugzilla/defparams.pl b/mozilla/webtools/bugzilla/defparams.pl
index 5e2110d6143..30e7ed72abc 100644
--- a/mozilla/webtools/bugzilla/defparams.pl
+++ b/mozilla/webtools/bugzilla/defparams.pl
@@ -307,6 +307,14 @@ sub find_languages {
default => 'THE MAINTAINER HAS NOT YET BEEN SET'
},
+ {
+ name => 'mailfrom',
+ desc => 'The email address of the Bugzilla mail daemon. Some email systems ' .
+ 'require this to be a valid email address.',
+ type => 't',
+ default => 'bugzilla-daemon'
+ },
+
{
name => 'urlbase',
desc => 'The URL that is the common initial leading part of all Bugzilla ' .
@@ -718,9 +726,10 @@ sub find_languages {
'password. %anythingelse% gets replaced by the ' .
'definition of that parameter (as defined on this page).',
type => 'l',
- default => 'From: bugzilla-daemon
+ default => 'From: %mailfrom%
To: %mailaddress%
Subject: Your Bugzilla password.
+X-Bugzilla-Type: admin
To use the wonders of Bugzilla, you can use the following:
@@ -753,11 +762,12 @@ To use the wonders of Bugzilla, you can use the following:
'replaced by the definition of that parameter (as defined on ' .
'this page).',
type => 'l',
- default => 'From: bugzilla-daemon
+ default => 'From: %mailfrom%
To: %to%
Subject: [Bug %bugid%] %neworchanged%%summary%
%threadingmarker%
X-Bugzilla-Reason: %reasonsheader%
+X-Bugzilla-Type: newchanged
%urlbase%show_bug.cgi?id=%bugid%
@@ -789,9 +799,10 @@ Configure bugmail: %urlbase%userprefs.cgi?tab=email
'address, so that if the mail bounces, a real person can know '.
'that there are bugs assigned to an invalid address.',
type => 'l',
- default => 'From: %maintainer%
+ default => 'From: %mailfrom%
To: %email%
Subject: Your Bugzilla buglist needs attention.
+X-Bugzilla-Type: whine
[This e-mail has been automatically generated.]
@@ -1032,9 +1043,10 @@ You will get this message once a day until you\'ve dealt with these bugs!
'compatibility. %anythingelse% gets replaced by the ' .
'definition of that parameter (as defined on this page).',
type => 'l',
- default => 'From: bugzilla-daemon
+ default => 'From: %mailfrom%
To: %to%
Subject: [Bug %bugid%] Some or all of your votes have been removed.
+X-Bugzilla-Type: voteremoved
Some or all of your votes have been removed from bug %bugid%.
diff --git a/mozilla/webtools/bugzilla/template/en/default/account/cancel-token.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/account/cancel-token.txt.tmpl
index de227841940..38ad37bef41 100644
--- a/mozilla/webtools/bugzilla/template/en/default/account/cancel-token.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/account/cancel-token.txt.tmpl
@@ -22,9 +22,10 @@
[% PROCESS global/variables.none.tmpl %]
-From: bugzilla-admin-daemon
+From: [% Param('mailfrom') %]
To: [% emailaddress %]
Subject: [% PROCESS subject %]
+X-B[%#%]ugzilla-Type: admin
A request was cancelled from [% remoteaddress %].
diff --git a/mozilla/webtools/bugzilla/template/en/default/account/email/change-new.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/account/email/change-new.txt.tmpl
index 7113504d8a1..cbc0af1e72e 100644
--- a/mozilla/webtools/bugzilla/template/en/default/account/email/change-new.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/account/email/change-new.txt.tmpl
@@ -22,9 +22,10 @@
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
-From: bugzilla-admin-daemon
+From: [% Param('mailfrom') %]
To: [% emailaddress %]
Subject: [% terms.Bugzilla %] Change Email Address Request
+X-B[%#%]ugzilla-Type: admin
[%+ terms.Bugzilla %] has received a request to change the email address
for the account [% oldemailaddress %] to your address.
diff --git a/mozilla/webtools/bugzilla/template/en/default/account/email/change-old.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/account/email/change-old.txt.tmpl
index 272f6d4e525..12de7530d42 100644
--- a/mozilla/webtools/bugzilla/template/en/default/account/email/change-old.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/account/email/change-old.txt.tmpl
@@ -27,12 +27,13 @@
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
-From: bugzilla-admin-daemon
+From: [% Param('mailfrom') %]
To: [% emailaddress %]
Subject: [% terms.Bugzilla %] Change Email Address Request
Importance: High
X-MSMail-Priority: High
X-Priority: 1
+X-B[%#%]ugzilla-Type: admin
[%+ terms.Bugzilla %] has received a request to change the email address
for your account to [%+ newemailaddress %].
diff --git a/mozilla/webtools/bugzilla/template/en/default/account/password/forgotten-password.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/account/password/forgotten-password.txt.tmpl
index 5ac3ed75c9f..b56e930fdc4 100644
--- a/mozilla/webtools/bugzilla/template/en/default/account/password/forgotten-password.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/account/password/forgotten-password.txt.tmpl
@@ -22,9 +22,10 @@
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
-From: bugzilla-admin-daemon
+From: [% Param('mailfrom') %]
To: [% emailaddress %]
Subject: [% terms.Bugzilla %] Change Password Request
+X-B[%#%]ugzilla-Type: admin
You have (or someone impersonating you has) requested to change your
[%+ terms.Bugzilla %] password. To complete the change, visit the following link:
diff --git a/mozilla/webtools/bugzilla/template/en/default/request/email.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/request/email.txt.tmpl
index 719f9d8696c..f34227a5655 100644
--- a/mozilla/webtools/bugzilla/template/en/default/request/email.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/request/email.txt.tmpl
@@ -36,10 +36,11 @@
[% to_identity = flag.setter.identity _ "'s request" %]
[% subject_status = statuses.${flag.status} %]
[% END %]
-From: bugzilla-request-daemon
+From: [% Param('mailfrom') %]
To: [% to_email %]
CC: [% flag.type.cc_list %]
Subject: [% flag.type.name %] [%+ subject_status %]: [[% terms.Bug %] [%+ flag.target.bug.id %]] [% flag.target.bug.summary %]
+X-B[%#%]ugzilla-Type: request
[%- IF flag.target.attachment.exists %] :
[Attachment [% flag.target.attachment.id %]] [% flag.target.attachment.summary %][% END %]
diff --git a/mozilla/webtools/bugzilla/template/en/default/whine/multipart-mime.txt.tmpl b/mozilla/webtools/bugzilla/template/en/default/whine/multipart-mime.txt.tmpl
index 5e597d8990e..855cbd06632 100644
--- a/mozilla/webtools/bugzilla/template/en/default/whine/multipart-mime.txt.tmpl
+++ b/mozilla/webtools/bugzilla/template/en/default/whine/multipart-mime.txt.tmpl
@@ -34,6 +34,7 @@
From: [% from %]
To: [% recipient.email %]
Subject: [[% terms.Bugzilla %]] [% subject %]
+X-B[%#%]ugzilla-Type: whine
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="[% boundary %]"
diff --git a/mozilla/webtools/bugzilla/whine.pl b/mozilla/webtools/bugzilla/whine.pl
index a13a129b4a5..0642ec5ab67 100755
--- a/mozilla/webtools/bugzilla/whine.pl
+++ b/mozilla/webtools/bugzilla/whine.pl
@@ -99,14 +99,13 @@ if (Param('shutdownhtml')) {
}
-# Send whines from the maintainer address. It's not a good idea to use
-# the whine creator address because the admin can make more use of bounces and
-# other replies.
-my $fromaddress = Param('maintainer');
+# Send whines from the address in the 'mailfrom' Parameter so that all
+# Bugzilla-originated mail appears to come from a single address.
+my $fromaddress = Param('mailfrom');
if ($fromaddress !~ Param('emailregexp')) {
die "Cannot run. " .
- "The maintainer email address has not been properly set!\n";
+ "The Bugzilla email address has not been properly set!\n";
}
# Check the nomail file for users who should not receive mail