]> granicus.if.org Git - php/commitdiff
Fixed another part in ldap (bug #73933)
authorXinchen Hui <laruence@gmail.com>
Thu, 19 Jan 2017 04:23:23 +0000 (12:23 +0800)
committerXinchen Hui <laruence@gmail.com>
Thu, 19 Jan 2017 04:23:23 +0000 (12:23 +0800)
ext/ldap/ldap.c
ext/ldap/tests/bug73933.phpt

index 0fb9c755aa82d0a45299c237bfb51397785b47f0..109508bbbecf73ca923b37138cbac56802f1231b 100644 (file)
@@ -1681,7 +1681,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;
        }
 
@@ -1726,6 +1726,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));
@@ -1800,6 +1801,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));
index 6bf4c078e301e7d526521909c65074d218b03de8..ac934a8dd813a4a44a72ff35c68e75473a1e76b0 100644 (file)
@@ -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