Fix: Move HELO/EHLO hostname setting to the correct position in SMTP client creation (#558)

This commit is contained in:
Ralph Slooten
2025-08-26 12:17:01 +12:00
parent fb1a06bc86
commit 7d74516270
2 changed files with 14 additions and 14 deletions

View File

@@ -51,6 +51,13 @@ func createForwardingSMTPClient(config config.SMTPForwardConfigStruct, addr stri
return nil, fmt.Errorf("error connecting to %s: %v", addr, err)
}
// Set the hostname for HELO/EHLO
if hostname, err := os.Hostname(); err == nil {
if err := client.Hello(hostname); err != nil {
return nil, fmt.Errorf("error saying HELO/EHLO to %s: %v", addr, err)
}
}
if config.STARTTLS {
tlsConf := &tls.Config{ServerName: config.Host} // #nosec
tlsConf.InsecureSkipVerify = config.AllowInsecure
@@ -61,13 +68,6 @@ func createForwardingSMTPClient(config config.SMTPForwardConfigStruct, addr stri
}
}
// Set the hostname for HELO/EHLO
if hostname, err := os.Hostname(); err == nil {
if err := client.Hello(hostname); err != nil {
return nil, fmt.Errorf("error saying HELO/EHLO to %s: %v", addr, err)
}
}
// Note: The caller is responsible for closing the client
return client, nil
}

View File

@@ -85,6 +85,13 @@ func createRelaySMTPClient(config config.SMTPRelayConfigStruct, addr string) (*s
return nil, fmt.Errorf("error connecting to %s: %v", addr, err)
}
// Set the hostname for HELO/EHLO
if hostname, err := os.Hostname(); err == nil {
if err := client.Hello(hostname); err != nil {
return nil, fmt.Errorf("error saying HELO/EHLO to %s: %v", addr, err)
}
}
if config.STARTTLS {
tlsConf := &tls.Config{ServerName: config.Host} // #nosec
tlsConf.InsecureSkipVerify = config.AllowInsecure
@@ -95,13 +102,6 @@ func createRelaySMTPClient(config config.SMTPRelayConfigStruct, addr string) (*s
}
}
// Set the hostname for HELO/EHLO
if hostname, err := os.Hostname(); err == nil {
if err := client.Hello(hostname); err != nil {
return nil, fmt.Errorf("error saying HELO/EHLO to %s: %v", addr, err)
}
}
// Note: The caller is responsible for closing the client
return client, nil
}