From 06b8fddc51b21135305050d61b026ac4c885615e Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Tue, 22 Dec 2020 19:44:51 +0100 Subject: [PATCH] LSldapObject::validateAttrData(): check return type of LSldap::getNumberResult() --- src/includes/class/class.LSldapObject.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/includes/class/class.LSldapObject.php b/src/includes/class/class.LSldapObject.php index 74191b59..10986707 100644 --- a/src/includes/class/class.LSldapObject.php +++ b/src/includes/class/class.LSldapObject.php @@ -524,7 +524,12 @@ class LSldapObject extends LSlog_staticLoggerClass { } else { // Otherwise, just retreive number of matching objets - $ret=LSldap :: getNumberResult($sfilter, $sbasedn, $sparams); + $ret = LSldap :: getNumberResult($sfilter, $sbasedn, $sparams); + if (!is_int($ret)) { + // An error occured + $retval = false; + continue; + } } // Check result @@ -542,6 +547,12 @@ class LSldapObject extends LSlog_staticLoggerClass { $retval = false; } } + + self :: log_trace( + "validateAttrData(".$LSform->idForm.", ".$attr->name."): ". + "validation with LDAP search on base DN='$sbasedn' and ". + "filter='".$sfilter->as_string()."' success ($ret object(s) found)" + ); } // Validation using external function else if(isset($test['function'])) {