diff --git a/config/postal.defaults.yml b/config/postal.defaults.yml index 1a09f7f..ffccd81 100644 --- a/config/postal.defaults.yml +++ b/config/postal.defaults.yml @@ -68,6 +68,7 @@ dns: return_path: rp.postal.example.com route_domain: routes.postal.example.com track_domain: track.postal.example.com + helo_hostname: # By default, this will be the same as the `smtp_server_hostname` dkim_identifier: postal domain_verify_prefix: postal-verification custom_return_path_prefix: psrp diff --git a/lib/postal/smtp_sender.rb b/lib/postal/smtp_sender.rb index a0d1d82..242fde9 100644 --- a/lib/postal/smtp_sender.rb +++ b/lib/postal/smtp_sender.rb @@ -57,7 +57,7 @@ module Postal else # Nothing end - smtp_client.start(@source_ip_address ? @source_ip_address.hostname : "localhost") + smtp_client.start(@source_ip_address ? @source_ip_address.hostname : self.class.default_helo_hostname) log "Connected to #{@remote_ip}:#{port} (#{hostname})" rescue => e log "Cannot connect to #{@remote_ip}:#{port} (#{hostname}) (#{e.class}: #{e.message})" @@ -244,5 +244,9 @@ module Postal end end + def self.default_helo_hostname + Postal.config.dns.helo_hostname || Postal.config.dns.smtp_server_hostname || "localhost" + end + end end