struct berval lnewpasswd;
int rc, myargcount = ZEND_NUM_ARGS();
- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrz", &link, &result, &newpasswd) != SUCCESS) {
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrz/", &link, &result, &newpasswd) != SUCCESS) {
WRONG_PARAM_COUNT;
}
ZEND_END_ARG_INFO()
#endif
+#ifdef HAVE_LDAP_PARSE_EXTENDED_RESULT
+ZEND_BEGIN_ARG_INFO_EX(arginfo_ldap_parse_exop, 0, 0, 4)
+ ZEND_ARG_INFO(0, link)
+ ZEND_ARG_INFO(0, result)
+ ZEND_ARG_INFO(1, retoid)
+ ZEND_ARG_INFO(1, retdata)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_ldap_parse_exop_passwd, 0, 0, 3)
+ ZEND_ARG_INFO(0, link)
+ ZEND_ARG_INFO(0, result)
+ ZEND_ARG_INFO(1, newpasswd)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_ldap_parse_exop_whoami, 0, 0, 3)
+ ZEND_ARG_INFO(0, link)
+ ZEND_ARG_INFO(0, result)
+ ZEND_ARG_INFO(1, authzid)
+ZEND_END_ARG_INFO()
+#endif
+
#ifdef HAVE_LDAP_REFRESH
ZEND_BEGIN_ARG_INFO_EX(arginfo_ldap_refresh, 0, 0, 4)
ZEND_ARG_INFO(0, link)
PHP_FE(ldap_start_tls, arginfo_ldap_resource)
#endif
#ifdef HAVE_LDAP_EXTENDED_OPERATION_S
- PHP_FE(ldap_exop,
- arginfo_ldap_exop)
- PHP_FE(ldap_exop_passwd,
- arginfo_ldap_exop_passwd)
- PHP_FE(ldap_exop_whoami,
- arginfo_ldap_exop_whoami)
+ PHP_FE(ldap_exop, arginfo_ldap_exop)
+ PHP_FE(ldap_exop_passwd, arginfo_ldap_exop_passwd)
+ PHP_FE(ldap_exop_whoami, arginfo_ldap_exop_whoami)
+#endif
+#ifdef HAVE_LDAP_PARSE_EXTENDED_RESULT
+ PHP_FE(ldap_parse_exop, arginfo_ldap_parse_exop)
+ PHP_FE(ldap_parse_exop_passwd, arginfo_ldap_parse_exop_passwd)
+ PHP_FE(ldap_parse_exop_whoami, arginfo_ldap_parse_exop_whoami)
#endif
#ifdef HAVE_LDAP_REFRESH
PHP_FE(ldap_refresh,
$genpw,
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)
+ test_bind($host, $port, "cn=userA,$base", "newPassword", $protocol_version),
+ $r = ldap_exop_passwd($link, "cn=userA,$base", "newPassword", ""),
+ ldap_parse_exop_passwd($link, $r, $result),
+ $result
);
?>
===DONE===
bool(true)
bool(true)
bool(true)
+resource(%d) of type (ldap result)
+bool(true)
+string(%d) "%s"
===DONE===
--- /dev/null
+--TEST--
+ldap_exop_whoami() - EXOP whoami operation
+--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_whoami(resource link [, string authzid])
+var_dump(
+ ldap_exop_whoami($link, $authzid),
+ $authzid,
+ $r = ldap_exop_whoami($link),
+ ldap_parse_exop_whoami($link, $r, $result),
+ $result
+);
+?>
+===DONE===
+--CLEAN--
+<?php
+require "connect.inc";
+
+$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
+
+remove_dummy_data($link, $base);
+?>
+--EXPECTF--
+bool(true)
+string(%d) "dn:%s"
+resource(%d) of type (ldap result)
+bool(true)
+string(%d) "dn:%s"
+===DONE===