php-src/ext/ldap/tests/ldap_exop_passwd.phpt
Côme Chilliet 5ccb31e49e Added controls support to ldap_parse_result and ldap_exop_passwd
Known controls are parsed to and from associative arrays.
Only ppolicy and paged results are implemented for now.
2017-09-21 10:05:40 +02:00

45 lines
1.2 KiB
PHP

--TEST--
ldap_exop_passwd() - Changing password through EXOP
--CREDITS--
Côme Chilliet <mcmic@php.net>
--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);
insert_dummy_data($link, $base);
// ldap_exop_passwd() allows to pass the DN, OLD and NEW passwords,
// and optionally returns the NEW password if none was passed.
// ldap_exop_passwd(resource link [, string user [, string oldpw [, string newpw [, string newpasswd ]]]])
var_dump(
$genpw = ldap_exop_passwd($link, "cn=userA,$base", "oops", "", $ctrls),
$ctrls,
$genpw = ldap_exop_passwd($link, "cn=userA,$base"),
test_bind($host, $port, "cn=userA,$base", $genpw, $protocol_version),
ldap_exop_passwd($link, "cn=userA,$base", $genpw, "newPassword"),
test_bind($host, $port, "cn=userA,$base", "newPassword", $protocol_version)
);
?>
===DONE===
--CLEAN--
<?php
require "connect.inc";
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
remove_dummy_data($link, $base);
?>
--EXPECTF--
string(%d) "%s"
array(0) {
}
string(%d) "%s"
bool(true)
bool(true)
bool(true)
===DONE===