مراية لـ
https://github.com/postalserver/postal.git
تم المزامنة 2026-03-03 14:24:06 +00:00
support for smtp relay hosts
هذا الالتزام موجود في:
@@ -63,6 +63,12 @@ smtp_server:
|
|||||||
ports:
|
ports:
|
||||||
- 2525
|
- 2525
|
||||||
|
|
||||||
|
smtp_relays:
|
||||||
|
-
|
||||||
|
hostname:
|
||||||
|
port: 25
|
||||||
|
ssl_mode: Auto
|
||||||
|
|
||||||
dns:
|
dns:
|
||||||
mx_records:
|
mx_records:
|
||||||
- mx.postal.example.com
|
- mx.postal.example.com
|
||||||
|
|||||||
@@ -19,6 +19,10 @@ module Postal
|
|||||||
hostname = server.hostname
|
hostname = server.hostname
|
||||||
port = server.port || 25
|
port = server.port || 25
|
||||||
ssl_mode = server.ssl_mode
|
ssl_mode = server.ssl_mode
|
||||||
|
elsif server.is_a?(Hash)
|
||||||
|
hostname = server[:hostname]
|
||||||
|
port = server[:port] || 25
|
||||||
|
ssl_mode = server[:ssl_mode] || 'Auto'
|
||||||
else
|
else
|
||||||
hostname = server
|
hostname = server
|
||||||
port = 25
|
port = 25
|
||||||
@@ -193,7 +197,7 @@ module Postal
|
|||||||
private
|
private
|
||||||
|
|
||||||
def servers
|
def servers
|
||||||
@options[:servers] || @servers ||= begin
|
@options[:servers] || self.class.relay_hosts || @servers ||= begin
|
||||||
mx_servers = []
|
mx_servers = []
|
||||||
Resolv::DNS.open do |dns|
|
Resolv::DNS.open do |dns|
|
||||||
dns.timeouts = [10,5]
|
dns.timeouts = [10,5]
|
||||||
@@ -248,5 +252,20 @@ module Postal
|
|||||||
Postal.config.dns.helo_hostname || Postal.config.dns.smtp_server_hostname || "localhost"
|
Postal.config.dns.helo_hostname || Postal.config.dns.smtp_server_hostname || "localhost"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.relay_hosts
|
||||||
|
hosts = Postal.config.smtp_relays.map do |relay|
|
||||||
|
if relay['hostname'].present?
|
||||||
|
{
|
||||||
|
:hostname => relay['hostname'],
|
||||||
|
:port => relay['port'],
|
||||||
|
:ssl_mode => relay['ssl_mode']
|
||||||
|
}
|
||||||
|
else
|
||||||
|
nil
|
||||||
|
end
|
||||||
|
end.compact
|
||||||
|
hosts.empty? ? nil : hosts
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
المرجع في مشكلة جديدة
حظر مستخدم