Merge pull request #8420 from hregis/7.0_bug3

Fix: better compatibility with all hostname syntax
This commit is contained in:
Laurent Destailleur 2018-03-20 17:32:14 +01:00 committed by GitHub
commit 11d33c8dcc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -177,20 +177,10 @@ class Ldap
if ($connected) break;
if (empty($host)) continue;
if (preg_match('/^ldap/',$host))
{
if ($this->serverPing($host) === true) {
$this->connection = ldap_connect($host);
}
else continue;
}
else
{
if ($this->serverPing($host, $this->serverPort) === true) {
$this->connection = ldap_connect($host,$this->serverPort);
}
else continue;
if ($this->serverPing($host, $this->serverPort) === true) {
$this->connection = ldap_connect($host, $this->serverPort);
}
else continue;
if (is_resource($this->connection))
{
@ -742,6 +732,10 @@ class Ldap
if (preg_match('/^ldaps:\/\/([^\/]+)\/?$/',$host, $regs)) {
$host = 'ssl://'.$regs[1];
}
// Remove ldap://
if (preg_match('/^ldap:\/\/([^\/]+)\/?$/',$host, $regs)) {
$host = $regs[1];
}
$op = @fsockopen($host, $port, $errno, $errstr, $timeout);
if (!$op) return false; //DC is N/A
else {