- Add support for IMAP proxy authentication (#1486690)
| | |
| | | - Add SASL-IR support in IMAP (RFC 4959) |
| | | - Add LOGINDISABLED support (RFC 2595) |
| | | - Add support for AUTH=PLAIN in IMAP authentication |
| | | - Re-implemented SMTP proxy authorization support |
| | | - Re-implemented SMTP proxy authentication support |
| | | - Add support for IMAP proxy authentication (#1486690) |
| | | |
| | | RELEASE 0.4.2 |
| | | ------------- |
| | |
| | | // IMAP connection timeout, in seconds. Default: 0 (no limit) |
| | | $rcmail_config['imap_timeout'] = 0; |
| | | |
| | | // Optional IMAP authentication identifier to be used as authorization proxy |
| | | $rcmail_config['imap_auth_cid'] = null; |
| | | |
| | | // Optional IMAP authentication password to be used for imap_auth_cid |
| | | $rcmail_config['imap_auth_pw'] = null; |
| | | |
| | | // ---------------------------------- |
| | | // SMTP |
| | | // ---------------------------------- |
| | |
| | | // Optional SMTP authentication identifier to be used as authorization proxy |
| | | $rcmail_config['smtp_auth_cid'] = null; |
| | | |
| | | // Optional SMTP authorization password to be used for smtp_auth_cid |
| | | // Optional SMTP authentication password to be used for smtp_auth_cid |
| | | $rcmail_config['smtp_auth_pw'] = null; |
| | | |
| | | // SMTP HELO host |
| | |
| | | // can save time detecting them using NAMESPACE and LIST |
| | | $options = array( |
| | | 'auth_method' => $this->config->get('imap_auth_type', 'check'), |
| | | 'auth_cid' => $this->config->get('imap_auth_cid'), |
| | | 'auth_pw' => $this->config->get('imap_auth_pw'), |
| | | 'delimiter' => isset($_SESSION['imap_delimiter']) ? $_SESSION['imap_delimiter'] : $this->config->get('imap_delimiter'), |
| | | 'rootdir' => isset($_SESSION['imap_root']) ? $_SESSION['imap_root'] : $this->config->get('imap_root'), |
| | | 'debug_mode' => (bool) $this->config->get('imap_debug', 0), |
| | |
| | | } |
| | | } |
| | | else { // PLAIN |
| | | $reply = base64_encode($user . chr(0) . $user . chr(0) . $pass); |
| | | // proxy authentication |
| | | if (!empty($this->prefs['auth_cid'])) { |
| | | $authc = $this->prefs['auth_cid']; |
| | | $pass = $this->prefs['auth_pw']; |
| | | } |
| | | else { |
| | | $authc = $user; |
| | | } |
| | | |
| | | $reply = base64_encode($user . chr(0) . $authc . chr(0) . $pass); |
| | | |
| | | // RFC 4959 (SASL-IR): save one round trip |
| | | if ($this->getCapability('SASL-IR')) { |