summaryrefslogtreecommitdiff
path: root/ext/ldap
diff options
context:
space:
mode:
authorXinchen Hui <laruence@gmail.com>2017-01-19 12:23:56 +0800
committerXinchen Hui <laruence@gmail.com>2017-01-19 12:23:56 +0800
commit5e090311446819d9396b756ac33529c52220a8aa (patch)
tree1d55fbe0da98347bc0f58328878298fb2e6e1095 /ext/ldap
parent2efb63bf00f40faac6e11f71df5ad52d439d5197 (diff)
parentcad2598fcb80a2b3594568ced0f9a5823e98768e (diff)
downloadphp-git-5e090311446819d9396b756ac33529c52220a8aa.tar.gz
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0: Fixed another part in ldap (bug #73933)
Diffstat (limited to 'ext/ldap')
-rw-r--r--ext/ldap/ldap.c4
-rw-r--r--ext/ldap/tests/bug73933.phpt10
2 files changed, 13 insertions, 1 deletions
diff --git a/ext/ldap/ldap.c b/ext/ldap/ldap.c
index 4ee95be7f4..1a2168f979 100644
--- a/ext/ldap/ldap.c
+++ b/ext/ldap/ldap.c
@@ -1730,7 +1730,7 @@ PHP_FUNCTION(ldap_modify_batch)
);
*/
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "rsa", &link, &dn, &dn_len, &mods) != SUCCESS) {
+ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rsa/", &link, &dn, &dn_len, &mods) != SUCCESS) {
return;
}
@@ -1775,6 +1775,7 @@ PHP_FUNCTION(ldap_modify_batch)
RETURN_FALSE;
}
+ SEPARATE_ARRAY(mod);
/* for the modification hashtable... */
zend_hash_internal_pointer_reset(Z_ARRVAL_P(mod));
num_modprops = zend_hash_num_elements(Z_ARRVAL_P(mod));
@@ -1849,6 +1850,7 @@ PHP_FUNCTION(ldap_modify_batch)
RETURN_FALSE;
}
+ SEPARATE_ARRAY(modinfo);
/* is the array not empty? */
zend_hash_internal_pointer_reset(Z_ARRVAL_P(modinfo));
num_modvals = zend_hash_num_elements(Z_ARRVAL_P(modinfo));
diff --git a/ext/ldap/tests/bug73933.phpt b/ext/ldap/tests/bug73933.phpt
index 6bf4c078e3..ac934a8dd8 100644
--- a/ext/ldap/tests/bug73933.phpt
+++ b/ext/ldap/tests/bug73933.phpt
@@ -13,8 +13,18 @@ ldap_mod_replace($ldap, null, array(
'lockoutTime' => array(0),
));
+ldap_modify_batch($ldap, null, array( [
+ "attrib" => "mail",
+ "modtype" => LDAP_MODIFY_BATCH_ADD,
+ "values" => [
+ "test@example.com",
+ "test-2@example.com", ]]));
+
+
ldap_close($ldap);
?>
--EXPECTF--
Warning: ldap_mod_replace(): Modify: Can't contact LDAP server in %sbug73933.php on line %d
+
+Warning: ldap_modify_batch(): Batch Modify: Can't contact LDAP server in %sbug73933.php on line %d