summaryrefslogtreecommitdiff
path: root/ext/ldap/tests/ldap_bind_ext.phpt
diff options
context:
space:
mode:
authorCôme Chilliet <mcmic@php.net>2017-09-11 15:38:32 +0200
committerCôme Chilliet <mcmic@php.net>2017-09-21 10:05:41 +0200
commitb36342453beb119ee134b21c3ded6313b0236516 (patch)
treed3ef370bc51cd777d877b8100e51470a902b467e /ext/ldap/tests/ldap_bind_ext.phpt
parent9275e05d8efc8672073adba472ef528be6708130 (diff)
downloadphp-git-b36342453beb119ee134b21c3ded6313b0236516.tar.gz
Added ldap_bind_ext to pass controls and get result object
ldap_bind_ext allows to pass controls and get result object from bind operation Also added a test for it, pretty basic as tests cannot depend upon ppolicy overlay
Diffstat (limited to 'ext/ldap/tests/ldap_bind_ext.phpt')
-rw-r--r--ext/ldap/tests/ldap_bind_ext.phpt68
1 files changed, 68 insertions, 0 deletions
diff --git a/ext/ldap/tests/ldap_bind_ext.phpt b/ext/ldap/tests/ldap_bind_ext.phpt
new file mode 100644
index 0000000000..04134bf348
--- /dev/null
+++ b/ext/ldap/tests/ldap_bind_ext.phpt
@@ -0,0 +1,68 @@
+--TEST--
+ldap_bind_ext() - Basic binding
+--CREDITS--
+Côme Chilliet <mcmic@php.net>
+--SKIPIF--
+<?php require_once dirname(__FILE__) .'/skipif.inc'; ?>
+<?php require_once dirname(__FILE__) .'/skipifbindfailure.inc'; ?>
+--FILE--
+<?php
+require "connect.inc";
+
+$link = ldap_connect($host, $port);
+ldap_set_option($link, LDAP_OPT_PROTOCOL_VERSION, $protocol_version);
+
+var_dump(
+ $result = ldap_bind_ext($link, $user, $passwd),
+ ldap_parse_result($link, $result, $errcode, $matcheddn, $errmsg, $referrals, $ctrls),
+ $errcode,
+ $errmsg,
+ $ctrls,
+ $result = ldap_bind_ext($link, $user, $passwd, [['oid' => LDAP_CONTROL_PASSWORDPOLICYREQUEST]]),
+ ldap_parse_result($link, $result, $errcode, $matcheddn, $errmsg, $referrals, $ctrls),
+ $errcode,
+ $errmsg,
+ $ctrls
+);
+
+/* Failures */
+var_dump(
+ $result = ldap_bind_ext($link, $user, "wrongPassword", [['oid' => LDAP_CONTROL_PASSWORDPOLICYREQUEST]]),
+ ldap_parse_result($link, $result, $errcode, $matcheddn, $errmsg, $referrals, $ctrls),
+ $errcode,
+ $errmsg,
+ $ctrls,
+ $result = ldap_bind_ext($link, "unexistingProperty=weirdValue,$user", $passwd, [['oid' => LDAP_CONTROL_PASSWORDPOLICYREQUEST]]),
+ ldap_parse_result($link, $result, $errcode, $matcheddn, $errmsg, $referrals, $ctrls),
+ $errcode,
+ $errmsg,
+ $ctrls
+);
+?>
+===DONE===
+--EXPECTF--
+resource(%d) of type (ldap result)
+bool(true)
+int(0)
+string(0) ""
+array(0) {
+}
+resource(%d) of type (ldap result)
+bool(true)
+int(0)
+string(0) ""
+array(0) {
+}
+resource(%d) of type (ldap result)
+bool(true)
+int(49)
+string(0) ""
+array(0) {
+}
+resource(%d) of type (ldap result)
+bool(true)
+int(34)
+string(10) "invalid DN"
+array(0) {
+}
+===DONE===