extauth_01.phpt 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. --TEST--
  2. Test External Authentication errors with oci_connect
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded('oci8')) die ("skip no oci8 extension");
  6. if (substr(PHP_OS, 0, 3) == 'WIN') die("skip feature not available on Windows platforms");
  7. require(dirname(__FILE__).'/details.inc');
  8. if (getenv('SKIP_SLOW_TESTS')) die('skip slow tests excluded by request');
  9. ?>
  10. --INI--
  11. oci8.privileged_connect=1
  12. --FILE--
  13. <?php
  14. // Run Test
  15. echo "Test 1\n";
  16. $c = oci_connect('/', 'notemtpy', 'anything', null, OCI_CRED_EXT);
  17. if (!$c) {
  18. $m = oci_error();
  19. var_dump($m);
  20. }
  21. var_dump($c);
  22. echo "Test 2\n";
  23. $c = oci_connect('notemtpy', 'notemtpy', 'anything', null, OCI_CRED_EXT);
  24. if (!$c) {
  25. $m = oci_error();
  26. var_dump($m);
  27. }
  28. var_dump($c);
  29. echo "Test 3\n";
  30. $c = oci_connect('notemtpy', '', 'anything', null, OCI_CRED_EXT);
  31. if (!$c) {
  32. $m = oci_error();
  33. var_dump($m);
  34. }
  35. var_dump($c);
  36. echo "Test 4\n";
  37. $c = oci_connect('a', 'b', 'c', null, OCI_SYSDBA+OCI_SYSOPER);
  38. if (!$c) {
  39. $m = oci_error();
  40. var_dump($m);
  41. }
  42. var_dump($c);
  43. echo "Test 5\n";
  44. $c = oci_connect('a', 'b', 'c', null, OCI_SYSDBA+OCI_SYSOPER+OCI_CRED_EXT);
  45. if (!$c) {
  46. $m = oci_error();
  47. var_dump($m);
  48. }
  49. var_dump($c);
  50. echo "Test 6\n";
  51. $c = oci_connect('', '', 'anything', null, OCI_CRED_EXT);
  52. if (!$c) {
  53. $m = oci_error();
  54. var_dump($m);
  55. }
  56. var_dump($c);
  57. echo "Test 7\n";
  58. $c = oci_connect('/', '', 'anything', null, OCI_CRED_EXT);
  59. if (!$c) {
  60. $m = oci_error();
  61. var_dump($m);
  62. }
  63. var_dump($c);
  64. echo "Test 8\n";
  65. $c = oci_connect('/', null, 'anything', null, OCI_CRED_EXT);
  66. if (!$c) {
  67. $m = oci_error();
  68. var_dump($m);
  69. }
  70. var_dump($c);
  71. echo "Test 9\n";
  72. $c = oci_connect('/', '', 'c', null, OCI_SYSDBA+OCI_CRED_EXT);
  73. if (!$c) {
  74. $m = oci_error();
  75. var_dump($m);
  76. }
  77. var_dump($c);
  78. echo "Test 10\n";
  79. $c = oci_connect('/', '', 'c', null, OCI_SYSOPER+OCI_CRED_EXT);
  80. if (!$c) {
  81. $m = oci_error();
  82. var_dump($m);
  83. }
  84. var_dump($c);
  85. ?>
  86. ===DONE===
  87. <?php exit(0); ?>
  88. --EXPECTF--
  89. Test 1
  90. Warning: oci_connect(): OCI_CRED_EXT can only be used with a username of "/" and a NULL password in %s on line %d
  91. bool(false)
  92. bool(false)
  93. Test 2
  94. Warning: oci_connect(): OCI_CRED_EXT can only be used with a username of "/" and a NULL password in %s on line %d
  95. bool(false)
  96. bool(false)
  97. Test 3
  98. Warning: oci_connect(): OCI_CRED_EXT can only be used with a username of "/" and a NULL password in %s on line %d
  99. bool(false)
  100. bool(false)
  101. Test 4
  102. Warning: oci_connect(): OCI_SYSDBA and OCI_SYSOPER cannot be used together in %s on line %d
  103. bool(false)
  104. bool(false)
  105. Test 5
  106. Warning: oci_connect(): OCI_SYSDBA and OCI_SYSOPER cannot be used together in %s on line %d
  107. bool(false)
  108. bool(false)
  109. Test 6
  110. Warning: oci_connect(): OCI_CRED_EXT can only be used with a username of "/" and a NULL password in %s on line %d
  111. bool(false)
  112. bool(false)
  113. Test 7
  114. Warning: oci_connect(): ORA-12154: %s in %s on line %d
  115. array(4) {
  116. ["code"]=>
  117. int(12154)
  118. ["message"]=>
  119. string(%d) "ORA-12154: %s"
  120. ["offset"]=>
  121. int(0)
  122. ["sqltext"]=>
  123. string(0) ""
  124. }
  125. bool(false)
  126. Test 8
  127. Warning: oci_connect(): ORA-12154: %s in %s on line %d
  128. array(4) {
  129. ["code"]=>
  130. int(12154)
  131. ["message"]=>
  132. string(%d) "ORA-12154: %s"
  133. ["offset"]=>
  134. int(0)
  135. ["sqltext"]=>
  136. string(0) ""
  137. }
  138. bool(false)
  139. Test 9
  140. Warning: oci_connect(): ORA-%d: TNS:%s in %s on line %d
  141. array(4) {
  142. ["code"]=>
  143. int(%d)
  144. ["message"]=>
  145. string(%d) "ORA-%d: %s"
  146. ["offset"]=>
  147. int(0)
  148. ["sqltext"]=>
  149. string(0) ""
  150. }
  151. bool(false)
  152. Test 10
  153. Warning: oci_connect(): ORA-%d: TNS:%s in %s on line %d
  154. array(4) {
  155. ["code"]=>
  156. int(%d)
  157. ["message"]=>
  158. string(%d) "ORA-%d: %s"
  159. ["offset"]=>
  160. int(0)
  161. ["sqltext"]=>
  162. string(0) ""
  163. }
  164. bool(false)
  165. ===DONE===