From 70a247137538231628d4865de7fa962ba766fd19 Mon Sep 17 00:00:00 2001 From: zijiren233 Date: Mon, 15 Apr 2024 12:39:52 +0800 Subject: [PATCH] Fix: smtp impl ssl protocol --- internal/email/smtp.go | 1 + utils/smtp/smtpool.go | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/email/smtp.go b/internal/email/smtp.go index d66a7f7..607415c 100644 --- a/internal/email/smtp.go +++ b/internal/email/smtp.go @@ -27,6 +27,7 @@ var ( configChanged = true }), ) + // Generally speaking, TLS uses port 587 and SSL uses port 465. smtpPort = settings.NewInt64Setting( "smtp_port", 587, diff --git a/utils/smtp/smtpool.go b/utils/smtp/smtpool.go index 8dd7698..c46763b 100644 --- a/utils/smtp/smtpool.go +++ b/utils/smtp/smtpool.go @@ -48,8 +48,10 @@ func newSmtpClient(c *SmtpConfig) (*smtp.Client, error) { ) switch strings.ToUpper(c.Protocol) { - case "TLS", "SSL": + case "TLS": // 587 cli, err = smtp.DialStartTLS(fmt.Sprintf("%s:%d", c.Host, c.Port), nil) + case "SSL": // 465 + cli, err = smtp.DialTLS(fmt.Sprintf("%s:%d", c.Host, c.Port), nil) default: cli, err = smtp.Dial(fmt.Sprintf("%s:%d", c.Host, c.Port)) }