+++ /dev/null
---TEST--
-Bug #48696 (ldap_read() segfaults with invalid parameters)
---SKIPIF--
-<?php
-require_once('skipif.inc');
-require_once('skipifbindfailure.inc');
-?>
---FILE--
-<?php
-
-ldap_read(1,1,1);
-
-?>
---EXPECTF--
-Warning: ldap_read(): supplied argument is not a valid ldap link resource in %s on line %d
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_add());
-var_dump(ldap_add($link));
-var_dump(ldap_add($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_add($link, "$base", array(), [], "Additional data"));
-
var_dump(ldap_add($link, "$base", array()));
// Invalid DN
ldap_delete($link, "dc=my-domain,$base");
?>
--EXPECTF--
-Warning: ldap_add() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_add() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_add() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_add() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_add(): Add: Protocol error in %s on line %d
bool(false)
$link = ldap_connect($host, $port);
ldap_set_option($link, LDAP_OPT_PROTOCOL_VERSION, $protocol_version);
-// Invalid parameter count
-var_dump(ldap_bind($link, $user, $passwd, null));
-
// Invalid password
var_dump(ldap_bind($link, $user, "ThisIsNotCorrect$passwd"));
?>
===DONE===
--EXPECTF--
-Warning: ldap_bind() expects at most 3 parameters, 4 given in %s on line %d
-bool(false)
-
Warning: ldap_bind(): Unable to bind to server: Invalid credentials in %s on line %d
bool(false)
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
insert_dummy_data($link, $base);
-// Too few parameters
-var_dump(ldap_compare($link));
-var_dump(ldap_compare($link, $link));
-var_dump(ldap_compare($link, $link, $link));
-
-// Too many parameters
-var_dump(ldap_compare($link, $link, $link, $link, [], "Additional data"));
-
var_dump(
ldap_compare($link, "cn=userNotAvailable,$base", "sn", "testSN1"),
ldap_error($link),
remove_dummy_data($link, $base);
?>
--EXPECTF--
-Warning: ldap_compare() expects at least 4 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_compare() expects at least 4 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_compare() expects at least 4 parameters, 3 given in %s on line %d
-NULL
-
-Warning: ldap_compare() expects at most 5 parameters, 6 given in %s on line %d
-NULL
-
Warning: ldap_compare(): Compare: No such object in %s on line %d
int(-1)
string(14) "No such object"
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_delete());
-var_dump(ldap_delete($link));
-
-// Too many parameters
-var_dump(ldap_delete($link, "$base", [], "Additional data"));
-
// Invalid DN
var_dump(
ldap_delete($link, "weirdAttribute=val"),
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
?>
--EXPECTF--
-Warning: ldap_delete() expects at least 2 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_delete() expects at least 2 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_delete() expects at most 3 parameters, 4 given in %s on line %d
-NULL
-
Warning: ldap_delete(): Delete: Invalid DN syntax in %s on line %d
bool(false)
string(17) "Invalid DN syntax"
$result = ldap_search($link, "$base", "(objectclass=organization)");
$entry = ldap_first_entry($link, $result);
-// Too few parameters
-var_dump(ldap_get_values_len($link));
-var_dump(ldap_get_values_len($link, $entry));
-var_dump(ldap_get_values_len($link, $entry, "weirdAttribute", "Additional data"));
-
var_dump(ldap_get_values_len($link, $entry, "inexistentAttribute"));
?>
===DONE===
remove_dummy_data($link, $base);
?>
--EXPECTF--
-Warning: ldap_get_values_len() expects exactly 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_get_values_len() expects exactly 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_get_values_len() expects exactly 3 parameters, 4 given in %s on line %d
-NULL
-
Warning: ldap_get_values_len(): Cannot get the value(s) of attribute %s in %s on line %d
bool(false)
===DONE===
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_mod_add());
-var_dump(ldap_mod_add($link));
-var_dump(ldap_mod_add($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_mod_add($link, "$base", array(), [], "Additional data"));
-
// DN not found
var_dump(ldap_mod_add($link, "dc=my-domain,$base", array()));
ldap_delete($link, "dc=my-domain,$base");
?>
--EXPECTF--
-Warning: ldap_mod_add() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_mod_add() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_mod_add() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_mod_add() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_mod_add(): Modify: No such object in %s on line %d
bool(false)
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_mod_del());
-var_dump(ldap_mod_del($link));
-var_dump(ldap_mod_del($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_mod_del($link, "$base", array(), [], "Additional data"));
-
// DN not found
var_dump(ldap_mod_del($link, "dc=my-domain,$base", array()));
ldap_delete($link, "dc=my-domain,$base");
?>
--EXPECTF--
-Warning: ldap_mod_del() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_mod_del() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_mod_del() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_mod_del() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_mod_del(): Modify: No such object in %s on line %d
bool(false)
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_mod_replace());
-var_dump(ldap_mod_replace($link));
-var_dump(ldap_mod_replace($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_mod_replace($link, "$base", array(), [], "Additional data"));
-
// DN not found
var_dump(ldap_mod_replace($link, "dc=my-domain,$base", array()));
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
?>
--EXPECTF--
-Warning: ldap_mod_replace() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_mod_replace() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_mod_replace() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_mod_replace() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_mod_replace(): Modify: No such object in %s on line %d
bool(false)
)
);
-// Too few parameters
-var_dump(ldap_modify_batch());
-var_dump(ldap_modify_batch($link));
-var_dump(ldap_modify_batch($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_modify_batch($link, "$base", $addGivenName, [], "Invalid additional parameter"));
-
// DN not found
var_dump(ldap_modify_batch($link, "cn=not-found,$base", $addGivenName));
ldap_delete($link, "dc=my-domain,$base");
?>
--EXPECTF--
-Warning: ldap_modify_batch() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_modify_batch() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_modify_batch() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_modify_batch() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_modify_batch(): Batch Modify: No such object in %s on line %d
bool(false)
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-// Too few parameters
-var_dump(ldap_modify());
-var_dump(ldap_modify($link));
-var_dump(ldap_modify($link, "$base"));
-
-// Too many parameters
-var_dump(ldap_modify($link, "$base", array(), [], "Additional data"));
-
// DN not found
var_dump(ldap_modify($link, "cn=not-found,$base", array()));
ldap_delete($link, "dc=my-domain,$base");
?>
--EXPECTF--
-Warning: ldap_modify() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
-Warning: ldap_modify() expects at least 3 parameters, 1 given in %s on line %d
-NULL
-
-Warning: ldap_modify() expects at least 3 parameters, 2 given in %s on line %d
-NULL
-
-Warning: ldap_modify() expects at most 4 parameters, 5 given in %s on line %d
-NULL
-
Warning: ldap_modify(): Modify: No such object in %s on line %d
bool(false)
$result = ldap_search($link, "$base", "(objectclass=organization)");
$entry = ldap_first_entry($link, $result);
var_dump(
- ldap_next_attribute($link),
- ldap_next_attribute($link, $link),
ldap_next_attribute($link, $entry)
);
?>
remove_dummy_data($link, $base);
?>
--EXPECTF--
-Warning: ldap_next_attribute() expects %s 2 parameters, 1 given in %s on line %d
-
-Warning: ldap_next_attribute(): supplied resource is not a valid ldap result entry resource in %s on line %d
-
Warning: ldap_next_attribute(): called before calling ldap_first_attribute() or no attributes found in result entry in %s on line %d
-NULL
-bool(false)
bool(false)
===DONE===
$link = ldap_connect($host, $port);
ldap_set_option($link, LDAP_OPT_PROTOCOL_VERSION, $protocol_version);
-// Invalid parameter count
-var_dump(ldap_sasl_bind());
-
// Invalid DN
var_dump(ldap_sasl_bind($link, "Invalid DN", $passwd, 'DIGEST-MD5', 'realm', $sasl_user));
?>
===DONE===
--EXPECTF--
-Warning: ldap_sasl_bind() expects at least 1 parameter, 0 given in %s on line %d
-bool(false)
-
Warning: ldap_sasl_bind(): Unable to bind to server: Invalid DN syntax in %s on line %d
bool(false)
$dn = "dc=not-found,$base";
$filter = "(dc=*)";
-$result = ldap_search();
-var_dump($result);
-
$result = ldap_search($link, $dn, $filter);
var_dump($result);
-$result = ldap_search($link, $dn, $filter, NULL);
-var_dump($result);
-
$result = ldap_search($link, $dn, $filter, array(1 => 'top'));
var_dump($result);
?>
===DONE===
--EXPECTF--
-Warning: ldap_search() expects at least 3 parameters, 0 given in %s on line %d
-NULL
-
Warning: ldap_search(): Search: No such object in %s on line %d
bool(false)
-Warning: ldap_search() expects parameter 4 to be array, null given in %s on line %d
-NULL
-
Warning: ldap_search(): Array initialization wrong in %s on line %d
bool(false)
}
$link = ldap_connect($host, $port);
-var_dump(ldap_set_rebind_proc($link));
-var_dump(ldap_set_rebind_proc($link, "rebind_proc", "Additional data"));
var_dump(ldap_set_rebind_proc($link, "rebind_proc_inexistent"));
?>
===DONE===
--EXPECTF--
-Warning: ldap_set_rebind_proc() expects exactly 2 parameters, 1 given in %s on line %d
-bool(false)
-
-Warning: ldap_set_rebind_proc() expects exactly 2 parameters, 3 given in %s on line %d
-bool(false)
-
Warning: ldap_set_rebind_proc(): Two arguments expected for 'rebind_proc_inexistent' to be a valid callback in %s on line %d
bool(false)
===DONE===
+++ /dev/null
---TEST--
-ldap_start_tls() - Binding that should fail
---CREDITS--
-Patrick Allaert <patrickallaert@php.net>
-# Belgian PHP Testfest 2009
---SKIPIF--
-<?php require_once('skipif.inc'); ?>
-<?php require_once('skipifbindfailure.inc'); ?>
---FILE--
-<?php
-require "connect.inc";
-
-$link = ldap_connect($host, $port);
-ldap_set_option($link, LDAP_OPT_PROTOCOL_VERSION, $protocol_version);
-
-// Invalid parameter count
-var_dump(ldap_start_tls());
-var_dump(ldap_start_tls($link, $link));
-?>
-===DONE===
---EXPECTF--
-Warning: ldap_start_tls() expects exactly 1 parameter, 0 given in %s on line %d
-NULL
-
-Warning: ldap_start_tls() expects exactly 1 parameter, 2 given in %s on line %d
-NULL
-===DONE===
+++ /dev/null
---TEST--
-ldap_unbind() - ldap_unbind() operations that should fail
---CREDITS--
-Patrick Allaert <patrickallaert@php.net>
-# Belgian PHP Testfest 2009
---SKIPIF--
-<?php require_once('skipif.inc'); ?>
-<?php require_once('skipifbindfailure.inc'); ?>
---FILE--
-<?php
-require "connect.inc";
-
-$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
-
-// Too few parameters
-var_dump(ldap_unbind());
-
-// Too many parameters
-var_dump(ldap_unbind($link, "Additional data"));
-
-// Bad parameter
-var_dump(ldap_unbind("string"));
-
-// unbind twice
-var_dump(ldap_unbind($link));
-var_dump(ldap_unbind($link));
-?>
-===DONE===
---EXPECTF--
-Warning: ldap_unbind() expects exactly 1 parameter, 0 given in %s on line %d
-bool(false)
-
-Warning: ldap_unbind() expects exactly 1 parameter, 2 given in %s on line %d
-bool(false)
-
-Warning: ldap_unbind() expects parameter 1 to be resource, string given in %s on line %d
-bool(false)
-bool(true)
-
-Warning: ldap_unbind(): supplied resource is not a valid ldap link resource in %s on line %d
-bool(false)
-===DONE===