From af03d00780a6ee70c58e135c6679542cde4f8d50 Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Wed, 7 Sep 2016 11:19:44 +0200 Subject: [PATCH] Fix sender of issue notifications It is the FROM field in mailer configuration that needs be used, not the USER field, which is for authentication. Closes https://github.com/gogits/gogs/issues/3615 --- models/mail.go | 2 +- modules/setting/setting.go | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/models/mail.go b/models/mail.go index 0db21355a8a..85f1560b449 100644 --- a/models/mail.go +++ b/models/mail.go @@ -160,7 +160,7 @@ func composeIssueMessage(issue *Issue, doer *User, tplName base.TplName, tos []s if err != nil { log.Error(3, "HTMLString (%s): %v", tplName, err) } - msg := mailer.NewMessageFrom(tos, fmt.Sprintf(`"%s" <%s>`, doer.DisplayName(), setting.MailService.User), subject, content) + msg := mailer.NewMessageFrom(tos, fmt.Sprintf(`"%s" <%s>`, doer.DisplayName(), setting.MailService.FromEmail), subject, content) msg.Info = fmt.Sprintf("Subject: %s, %s", subject, info) return msg } diff --git a/modules/setting/setting.go b/modules/setting/setting.go index b3a932e91ca..7696c09127d 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -6,6 +6,7 @@ package setting import ( "fmt" + "net/mail" "net/url" "os" "os/exec" @@ -714,6 +715,7 @@ type Mailer struct { Name string Host string From string + FromEmail string User, Passwd string DisableHelo bool HeloHostname string @@ -749,6 +751,13 @@ func newMailService() { EnableHTMLAlternative: sec.Key("ENABLE_HTML_ALTERNATIVE").MustBool(), } MailService.From = sec.Key("FROM").MustString(MailService.User) + + parsed, err := mail.ParseAddress(MailService.From) + if err != nil { + log.Fatal(4, "Invalid mailer.FROM (%s): %v", MailService.From, err) + } + MailService.FromEmail = parsed.Address + log.Info("Mail Service Enabled") }