diff options
author | thomascube <thomas@roundcube.net> | 2005-10-07 14:17:08 +0000 |
---|---|---|
committer | thomascube <thomas@roundcube.net> | 2005-10-07 14:17:08 +0000 |
commit | 42b11351497ce67e96a0465c76694632cdfb3ecb (patch) | |
tree | e70135646b2422dccab017cb9f6999ad50e91564 /program/include/rcube_imap.inc | |
parent | 597170feb25f5c2e5a90a9c0b1fd62001f169afb (diff) |
Several bugfixes and feature improvements
Diffstat (limited to 'program/include/rcube_imap.inc')
-rw-r--r-- | program/include/rcube_imap.inc | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc index 127409dc8..21434167b 100644 --- a/program/include/rcube_imap.inc +++ b/program/include/rcube_imap.inc @@ -24,9 +24,6 @@ require_once('lib/imap.inc'); require_once('lib/mime.inc'); -// check for Open-SSL support in PHP build -//$ICL_SSL = TRUE; -//$ICL_PORT = 993; class rcube_imap { @@ -75,15 +72,29 @@ class rcube_imap } - function connect($host, $user, $pass, $port=143) + function connect($host, $user, $pass, $port=143, $use_ssl=FALSE) { - global $ICL_PORT; + global $ICL_PORT, $CONFIG; + + // check for Open-SSL support in PHP build + if ($use_ssl && in_array('openssl', get_loaded_extensions())) + $ICL_SSL = TRUE; $ICL_PORT = $port; - $this->conn = iil_Connect($host, $user, $pass); + $this->conn = iil_Connect($host, $user, $pass, array('imap' => 'check')); $this->host = $host; $this->user = $user; $this->pass = $pass; + + if ($this->conn && ($CONFIG['debug_level'] & 8)) + print $this->conn->message; + + else if (!$this->conn && $GLOBALS['iil_error']) + { + raise_error(array('code' => 403, + 'type' => 'imap', + 'message' => $GLOBALS['iil_error']), TRUE, FALSE); + } return $this->conn ? TRUE : FALSE; } |