summaryrefslogtreecommitdiff
path: root/program/lib
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-06-10 11:57:05 +0200
committerAleksander Machniak <alec@alec.pl>2014-06-10 11:58:53 +0200
commit0a5088758e4da6b80982f4fee16c48e7cc0e2fcc (patch)
tree0eaf6229bd39dca770f8bc050762ec138004f81c /program/lib
parent53df26f4473771e0d6eaaff8f27d05e884a31ff1 (diff)
Fix "PHP Fatal error: Cannot break/continue 1 level" when ldap_start_tls() fails
Diffstat (limited to 'program/lib')
-rw-r--r--program/lib/Roundcube/rcube_ldap_generic.php10
1 files changed, 6 insertions, 4 deletions
diff --git a/program/lib/Roundcube/rcube_ldap_generic.php b/program/lib/Roundcube/rcube_ldap_generic.php
index 16b7fdaca..1cd0b5a21 100644
--- a/program/lib/Roundcube/rcube_ldap_generic.php
+++ b/program/lib/Roundcube/rcube_ldap_generic.php
@@ -175,9 +175,11 @@ class rcube_ldap_generic
$this->_debug("C: Connect to $hostname [{$this->config['name']}]");
if ($lc = @ldap_connect($host, $this->config['port'])) {
- if ($this->config['use_tls'] === true)
- if (!ldap_start_tls($lc))
- continue;
+ if ($this->config['use_tls'] === true) {
+ if (!ldap_start_tls($lc)) {
+ return false;
+ }
+ }
$this->_debug("S: OK");
@@ -186,7 +188,7 @@ class rcube_ldap_generic
$this->conn = $lc;
if (!empty($this->config['network_timeout']))
- ldap_set_option($lc, LDAP_OPT_NETWORK_TIMEOUT, $this->config['network_timeout']);
+ ldap_set_option($lc, LDAP_OPT_NETWORK_TIMEOUT, $this->config['network_timeout']);
if (isset($this->config['referrals']))
ldap_set_option($lc, LDAP_OPT_REFERRALS, $this->config['referrals']);