You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

169 lines
2.9 KiB

  1. --TEST--
  2. ldap_search() bug 48441 - options persists after specifying them in ldap_search
  3. --CREDITS--
  4. Patrick Allaert <patrickallaert@php.net>
  5. --SKIPIF--
  6. <?php
  7. require_once('skipif.inc');
  8. require_once('skipifbindfailure.inc');
  9. ?>
  10. --FILE--
  11. <?php
  12. include "connect.inc";
  13. $link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
  14. insert_dummy_data($link);
  15. $dn = "dc=my-domain,dc=com";
  16. $filter = "(objectclass=person)";
  17. var_dump(
  18. $result = ldap_search($link, $dn, $filter, array('sn')),
  19. ldap_get_entries($link, $result)
  20. );
  21. var_dump(
  22. $result = ldap_search($link, $dn, $filter, array('sn'), 1, 1, 1, LDAP_DEREF_ALWAYS),
  23. ldap_get_entries($link, $result)
  24. );
  25. var_dump(
  26. $result = ldap_search($link, $dn, $filter, array('sn')),
  27. ldap_get_entries($link, $result)
  28. );
  29. ?>
  30. ===DONE===
  31. --CLEAN--
  32. <?php
  33. include "connect.inc";
  34. $link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
  35. remove_dummy_data($link);
  36. ?>
  37. --EXPECTF--
  38. resource(%d) of type (ldap result)
  39. array(4) {
  40. ["count"]=>
  41. int(3)
  42. [0]=>
  43. array(4) {
  44. ["sn"]=>
  45. array(2) {
  46. ["count"]=>
  47. int(1)
  48. [0]=>
  49. string(7) "testSN1"
  50. }
  51. [0]=>
  52. string(2) "sn"
  53. ["count"]=>
  54. int(1)
  55. ["dn"]=>
  56. string(28) "cn=userA,dc=my-domain,dc=com"
  57. }
  58. [1]=>
  59. array(4) {
  60. ["sn"]=>
  61. array(2) {
  62. ["count"]=>
  63. int(1)
  64. [0]=>
  65. string(7) "testSN2"
  66. }
  67. [0]=>
  68. string(2) "sn"
  69. ["count"]=>
  70. int(1)
  71. ["dn"]=>
  72. string(28) "cn=userB,dc=my-domain,dc=com"
  73. }
  74. [2]=>
  75. array(4) {
  76. ["sn"]=>
  77. array(2) {
  78. ["count"]=>
  79. int(1)
  80. [0]=>
  81. string(7) "testSN3"
  82. }
  83. [0]=>
  84. string(2) "sn"
  85. ["count"]=>
  86. int(1)
  87. ["dn"]=>
  88. string(37) "cn=userC,cn=userB,dc=my-domain,dc=com"
  89. }
  90. }
  91. Warning: ldap_search(): Partial search results returned: Sizelimit exceeded in %s on line %d
  92. resource(%d) of type (ldap result)
  93. array(2) {
  94. ["count"]=>
  95. int(1)
  96. [0]=>
  97. array(4) {
  98. ["sn"]=>
  99. array(1) {
  100. ["count"]=>
  101. int(0)
  102. }
  103. [0]=>
  104. string(2) "sn"
  105. ["count"]=>
  106. int(1)
  107. ["dn"]=>
  108. string(28) "cn=userA,dc=my-domain,dc=com"
  109. }
  110. }
  111. resource(%d) of type (ldap result)
  112. array(4) {
  113. ["count"]=>
  114. int(3)
  115. [0]=>
  116. array(4) {
  117. ["sn"]=>
  118. array(2) {
  119. ["count"]=>
  120. int(1)
  121. [0]=>
  122. string(7) "testSN1"
  123. }
  124. [0]=>
  125. string(2) "sn"
  126. ["count"]=>
  127. int(1)
  128. ["dn"]=>
  129. string(28) "cn=userA,dc=my-domain,dc=com"
  130. }
  131. [1]=>
  132. array(4) {
  133. ["sn"]=>
  134. array(2) {
  135. ["count"]=>
  136. int(1)
  137. [0]=>
  138. string(7) "testSN2"
  139. }
  140. [0]=>
  141. string(2) "sn"
  142. ["count"]=>
  143. int(1)
  144. ["dn"]=>
  145. string(28) "cn=userB,dc=my-domain,dc=com"
  146. }
  147. [2]=>
  148. array(4) {
  149. ["sn"]=>
  150. array(2) {
  151. ["count"]=>
  152. int(1)
  153. [0]=>
  154. string(7) "testSN3"
  155. }
  156. [0]=>
  157. string(2) "sn"
  158. ["count"]=>
  159. int(1)
  160. ["dn"]=>
  161. string(37) "cn=userC,cn=userB,dc=my-domain,dc=com"
  162. }
  163. }
  164. ===DONE===