diff --git a/lib/adLDAP/adLDAP.php b/lib/adLDAP/adLDAP.php index f36c3aa..4f760d1 100644 --- a/lib/adLDAP/adLDAP.php +++ b/lib/adLDAP/adLDAP.php @@ -401,7 +401,10 @@ public function getDomainControllers() { * * @param int $adPort */ - public function setPort($adPort) { + public function setPort($adPort) { + if (!is_numeric($adPort)) { + throw new adLDAPException("[ad_port] must be a number; '$adPort' given"); + } $this->adPort = $adPort; } @@ -621,9 +624,9 @@ public function connect() { // Connect to the AD/LDAP server as the username/password $domainController = $this->randomController(); if ($this->useSSL) { - $this->ldapConnection = ldap_connect("ldaps://" . $domainController, $this->adPort); + $this->ldapConnection = ldap_connect("ldaps://" . $domainController, $this->getPort()); } else { - $this->ldapConnection = ldap_connect("ldap://" . $domainController, $this->adPort); + $this->ldapConnection = ldap_connect("ldap://" . $domainController, $this->getPort()); } // Set some ldap options for talking to AD @@ -971,7 +974,7 @@ protected function randomController() { * @return bool */ protected function pingController($host) { - $port = $this->adPort; + $port = $this->getPort(); fsockopen($host, $port, $errno, $errstr, 10); if ($errno > 0) { return false;