CluPilotCloud/app/Services/Mail
nexxo c55a5d2b49 Make ssl, tls, and none mean what they say on the wire
EsmtpTransport's autoTls (default true) and requireTls (default false)
are independent of the implicit-TLS constructor argument: 'tls' left
these at their defaults, so a server that omitted STARTTLS sent
mailbox credentials in the clear while reporting success, and 'none'
would silently upgrade the moment a server offered STARTTLS. Both
MailboxTransport and MailboxTester already duplicated the "ssl, or
port 465 ⇒ implicit" half of this decision independently; MailTlsPolicy
is now the one place both read, for both dimensions.

MailboxTester still builds through Mail::build() rather than a hand-built
transport: MailManager::createSmtpTransport() forwards the whole config
array to EsmtpTransportFactory as DSN options, which already reads
auto_tls/require_tls itself, so the same policy reaches this path
through keys the config array already supports.
2026-07-28 04:35:03 +02:00
..
MailPurpose.php Say which kind of mail leaves from which mailbox 2026-07-27 22:00:16 +02:00
MailTlsPolicy.php Make ssl, tls, and none mean what they say on the wire 2026-07-28 04:35:03 +02:00
MailboxResolver.php Make a deactivated mailbox fall back like a deleted one 2026-07-27 22:57:22 +02:00
MailboxTester.php Make ssl, tls, and none mean what they say on the wire 2026-07-28 04:35:03 +02:00