summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2011-09-19 12:34:01 +0000
committeralecpl <alec@alec.pl>2011-09-19 12:34:01 +0000
commite7e79470e425c75495a846435b43350f0b793bb7 (patch)
treeeef7f69d0314c6a3cb9e94cc5f98961398a852b2
parent5d62d9af93eeac1088ccff505f04f80d3a57b36d (diff)
- Allow setting connection options in imap_connect hook
-rw-r--r--program/include/rcmail.php2
-rw-r--r--program/include/rcube_imap.php5
-rw-r--r--program/include/rcube_imap_generic.php4
3 files changed, 6 insertions, 5 deletions
diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index 3cc277450..ca62fa2bb 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -615,7 +615,7 @@ class rcmail
// Setting root and delimiter before establishing the connection
// can save time detecting them using NAMESPACE and LIST
$options = array(
- 'auth_method' => $this->config->get('imap_auth_type', 'check'),
+ 'auth_type' => $this->config->get('imap_auth_type', 'check'),
'auth_cid' => $this->config->get('imap_auth_cid'),
'auth_pw' => $this->config->get('imap_auth_pw'),
'debug' => (bool) $this->config->get('imap_debug', 0),
diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php
index e9dafbf9e..f95f7cef4 100644
--- a/program/include/rcube_imap.php
+++ b/program/include/rcube_imap.php
@@ -176,12 +176,13 @@ class rcube_imap
$attempt = 0;
do {
$data = rcmail::get_instance()->plugins->exec_hook('imap_connect',
- array('host' => $host, 'user' => $user, 'attempt' => ++$attempt));
+ array_merge($this->options, array('host' => $host, 'user' => $user,
+ 'attempt' => ++$attempt)));
if (!empty($data['pass']))
$pass = $data['pass'];
- $this->conn->connect($data['host'], $data['user'], $pass, $this->options);
+ $this->conn->connect($data['host'], $data['user'], $pass, $data);
} while(!$this->conn->connected() && $data['retry']);
$this->host = $data['host'];
diff --git a/program/include/rcube_imap_generic.php b/program/include/rcube_imap_generic.php
index 55eb8fa42..8b99da486 100644
--- a/program/include/rcube_imap_generic.php
+++ b/program/include/rcube_imap_generic.php
@@ -672,8 +672,8 @@ class rcube_imap_generic
$this->prefs = $options;
}
// set auth method
- if (!empty($this->prefs['auth_method'])) {
- $auth_method = strtoupper($this->prefs['auth_method']);
+ if (!empty($this->prefs['auth_type'])) {
+ $auth_method = strtoupper($this->prefs['auth_type']);
} else {
$auth_method = 'CHECK';
}