diff options
author | alecpl <alec@alec.pl> | 2011-04-17 09:22:03 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2011-04-17 09:22:03 +0000 |
commit | 462de2d2028617c8464f174987785a92583313be (patch) | |
tree | c5555f71ca9cb9361061490b7cced96713bab5a3 /program/include/rcube_smtp.php | |
parent | f62468d3ec5ab1c751207ee1c04011278522589e (diff) |
- PEAR::Net_SMTP 1.5.2, fixed timeout issue (#1487843)
Diffstat (limited to 'program/include/rcube_smtp.php')
-rw-r--r-- | program/include/rcube_smtp.php | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/program/include/rcube_smtp.php b/program/include/rcube_smtp.php index 654c7ef86..120336c49 100644 --- a/program/include/rcube_smtp.php +++ b/program/include/rcube_smtp.php @@ -105,7 +105,7 @@ class rcube_smtp $this->conn = new Net_SMTP($smtp_host, $smtp_port, $helo_host); - if($RCMAIL->config->get('smtp_debug')) + if ($RCMAIL->config->get('smtp_debug')) $this->conn->setDebug(true, array($this, 'debug_handler')); // try to connect to server and exit on failure @@ -118,6 +118,13 @@ class rcube_smtp return false; } + // workaround for timeout bug in Net_SMTP 1.5.[0-1] (#1487843) + if (method_exists($this->conn, 'setTimeout') + && ($timeout = ini_get('default_socket_timeout')) + ) { + $this->conn->setTimeout($timeout); + } + $smtp_user = str_replace('%u', $_SESSION['username'], $CONFIG['smtp_user']); $smtp_pass = str_replace('%p', $RCMAIL->decrypt($_SESSION['password']), $CONFIG['smtp_pass']); $smtp_auth_type = empty($CONFIG['smtp_auth_type']) ? NULL : $CONFIG['smtp_auth_type']; |