The preconfig previously used a single 'host' field for both IMAP and SMTP, making it impossible to configure different servers/schemes/ports (e.g. IMAPS on 993 + SMTP STARTTLS on 587). Also, ssl:// scheme was silently lost during parse_url() since only tls:// was recognized. Add imap_host and smtp_host as separate config keys with full scheme support (ssl://, tls://). The legacy 'host' key is still supported as fallback for backward compatibility.
48 lines
1.3 KiB
Plaintext
48 lines
1.3 KiB
Plaintext
<?php
|
|
/**
|
|
* ident_switch - Configuration file.
|
|
*
|
|
* Copyright (C) 2016 Boris Gulay
|
|
* Copyright (C) 2026 Gecka
|
|
*
|
|
* Original code licensed under GPL-3.0+.
|
|
* New contributions licensed under AGPL-3.0+.
|
|
*
|
|
* @url https://github.com/Gecka-apps/ident_switch
|
|
*/
|
|
|
|
/*
|
|
* Preconfigured settings for different mail domains.
|
|
* Appropriate set of values is searched by mapping domain of email (from identity) to array key.
|
|
*/
|
|
$config['ident_switch.preconfig'] = [
|
|
|
|
// Domain part of email address
|
|
'domain.tld' => [
|
|
|
|
// IMAP connection: scheme://host:port
|
|
// Schemes: ssl:// for IMAPS (port 993), tls:// for STARTTLS (port 143).
|
|
// Required.
|
|
'imap_host' => 'ssl://mail.domain.tld:993',
|
|
|
|
// SMTP connection: scheme://host:port
|
|
// Schemes: tls:// for STARTTLS (port 587), ssl:// for SMTPS (port 465).
|
|
// Falls back to imap_host if not specified.
|
|
'smtp_host' => 'tls://mail.domain.tld:587',
|
|
|
|
// Login name, can be 'email' (full address from identity), 'mbox' (only mailbox part).
|
|
// Any other value is treated as 'not specified' (default).
|
|
'user' => 'email',
|
|
|
|
// Are specified settings locked in interface or not.
|
|
// Default - false.
|
|
'readonly' => true,
|
|
],
|
|
|
|
'another.tld' => [
|
|
'imap_host' => 'tls://mail.another.tld:143',
|
|
'smtp_host' => 'tls://mail.another.tld:587',
|
|
'user' => 'mbox',
|
|
],
|
|
];
|