email: complain about invalid from address

This commit is contained in:
Harvey Tindall
2026-03-01 15:10:23 +00:00
parent 637cca0625
commit 60bf89bc02
2 changed files with 8 additions and 2 deletions

View File

@@ -88,6 +88,9 @@ func NewEmailer(config *Config, storage *Storage, logs LoggerSet) *Emailer {
config: config,
storage: storage,
}
if !strings.Contains(emailer.fromAddr, "@") {
emailer.err.Printf(lm.FailedInitMailer, "", fmt.Errorf(lm.InvalidFromAddress, emailer.fromAddr))
}
method := emailer.config.Section("email").Key("method").String()
if method == "smtp" {
enc := sMail.EncryptionSTARTTLS
@@ -107,7 +110,7 @@ func NewEmailer(config *Config, storage *Storage, logs LoggerSet) *Emailer {
authType := sMail.AuthType(emailer.config.Section("smtp").Key("auth_type").MustInt(4))
err := emailer.NewSMTP(emailer.config.Section("smtp").Key("server").String(), emailer.config.Section("smtp").Key("port").MustInt(465), username, password, enc, emailer.config.Section("smtp").Key("ssl_cert").MustString(""), emailer.config.Section("smtp").Key("hello_hostname").String(), emailer.config.Section("smtp").Key("cert_validation").MustBool(true), authType, emailer.config.proxyConfig)
if err != nil {
emailer.err.Printf(lm.FailedInitSMTP, err)
emailer.err.Printf(lm.FailedInitMailer, lm.SMTP, err)
}
} else if method == "mailgun" {
emailer.NewMailgun(emailer.config.Section("mailgun").Key("api_url").String(), emailer.config.Section("mailgun").Key("api_key").String(), emailer.config.proxyTransport)

View File

@@ -256,8 +256,11 @@ const (
FailedGenerateDiscordInvite = "Failed to generate " + Discord + " invite: %v"
// email.go
FailedInitSMTP = "Failed to initialize SMTP mailer: %v"
SMTP = "SMTP"
Mailgun = "Mailgun"
FailedInitMailer = "Failed to initalize %s mailer: %v"
FailedGeneratePWRLink = "Failed to generate PWR link: %v"
InvalidFromAddress = "invalid from address: \"%s\""
// housekeeping-d.go
hk = "Housekeeping: "