diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2015-09-29 17:25:34 -0400 |
---|---|---|
committer | Harrison Healey <harrisonmhealey@gmail.com> | 2015-09-29 17:25:34 -0400 |
commit | 5596dbf27fc2117caa986d6bf123b976148bdf1e (patch) | |
tree | bb8dd75322d9aa7abb47e2dcb77bac7c93f47188 /utils/mail.go | |
parent | 9aef3836b316bfc3701aab3e5dec072a070ef2df (diff) | |
parent | 0969e1bc714d887776eacb86ffdddfe8e6c12961 (diff) | |
download | chat-5596dbf27fc2117caa986d6bf123b976148bdf1e.tar.gz chat-5596dbf27fc2117caa986d6bf123b976148bdf1e.tar.bz2 chat-5596dbf27fc2117caa986d6bf123b976148bdf1e.zip |
Merge pull request #860 from mattermost/PLT-470
PLT-470 Adding STMP server connection check
Diffstat (limited to 'utils/mail.go')
-rw-r--r-- | utils/mail.go | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/utils/mail.go b/utils/mail.go index dd975155d..f6fe1ce00 100644 --- a/utils/mail.go +++ b/utils/mail.go @@ -65,13 +65,34 @@ func newSMTPClient(conn net.Conn, config *model.Config) (*smtp.Client, *model.Ap return c, nil } +func TestConnection(config *model.Config) { + if !config.EmailSettings.SendEmailNotifications { + return + } + + conn, err1 := connectToSMTPServer(config) + if err1 != nil { + l4g.Error("SMTP server settings do not appear to be configured properly err=%v details=%v", err1.Message, err1.DetailedError) + return + } + defer conn.Close() + + c, err2 := newSMTPClient(conn, config) + if err2 != nil { + l4g.Error("SMTP connection settings do not appear to be configured properly err=%v details=%v", err2.Message, err2.DetailedError) + return + } + defer c.Quit() + defer c.Close() +} + func SendMail(to, subject, body string) *model.AppError { return SendMailUsingConfig(to, subject, body, Cfg) } func SendMailUsingConfig(to, subject, body string, config *model.Config) *model.AppError { - if !config.EmailSettings.SendEmailNotifications { + if !config.EmailSettings.SendEmailNotifications || len(config.EmailSettings.SMTPServer) == 0 { return nil } |