From 9668ff47055d37c8d1ee477c5fc9442c97cf0259 Mon Sep 17 00:00:00 2001 From: Daniel Friesen Date: Fri, 26 Aug 2011 00:01:55 +0000 Subject: [PATCH] Followup r93417; Don't use $wgServer in a way that makes invalid Message-IDs. Instead use IDHost if set, otherwise extract the host from $wgServer. Also instead of a static UserMailer prefix use the wiki's id. --- includes/UserMailer.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/includes/UserMailer.php b/includes/UserMailer.php index 11040b1e59..beac67fff4 100644 --- a/includes/UserMailer.php +++ b/includes/UserMailer.php @@ -127,10 +127,16 @@ class UserMailer { * @return String */ static function makeMsgId() { - global $wgServer; + global $wgSMTP, $wgServer; - $msgid = uniqid( "UserMailer", true ); /* true required for cygwin */ - return "<$msgid@$wgServer>"; + $msgid = uniqid( wfWikiID() . ".", true ); /* true required for cygwin */ + if ( is_array($wgSMTP) && $isset($wgSMTP['IDHost']) && $wgSMTP['IDHost'] ) { + $domain = $wgSMTP['IDHost']; + } else { + $url = wfParseUrl($wgServer); + $domain = $url['host']; + } + return "<$msgid@$domain>"; } /** -- 2.20.1