uw              Wed May 27 17:54:30 2009 UTC

  Modified files:              (Branch: PHP_5_3)
    /php-src/ext/mysqli/tests   mysqli_pconn_max_links.phpt 
  Log:
  Crappy anonymous MySQL user account... trying to make the test more portable.
  
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u
Index: php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt
diff -u php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt:1.1.2.1 
php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt:1.1.2.2
--- php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt:1.1.2.1        Wed Oct 
10 10:17:38 2007
+++ php-src/ext/mysqli/tests/mysqli_pconn_max_links.phpt        Wed May 27 
17:54:30 2009
@@ -15,20 +15,35 @@
                die(sprintf("skip Cannot connect [%d] %s", 
mysqli_connect_errno(), mysqli_connect_error()));
 
        mysqli_query($link, 'DROP USER pcontest');
-       if (!mysqli_query($link, 'CREATE USER pcontest IDENTIFIED BY 
"pcontest"')) {
+    mysqli_query($link, 'DROP USER pcont...@localhost');
+       if (!mysqli_query($link, 'CREATE USER pcontest@"%" IDENTIFIED BY 
"pcontest"') ||
+        !mysqli_query($link, 'CREATE USER pcont...@localhost IDENTIFIED BY 
"pcontest"')) {
                printf("skip Cannot create second DB user [%d] %s", 
mysqli_errno($link), mysqli_error($link));
                mysqli_close($link);
-               die();
+               die("skip CREATE USER failed");
        }
 
        // we might be able to specify the host using CURRENT_USER(), but...
-       if (!mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO 
pcontest@'%%'", $db))) {
+       if (!mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO 
pcontest@'%%'", $db)) ||
+        !mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO 
pcontest@'localhost'", $db))) {
                printf("skip Cannot GRANT SELECT to second DB user [%d] %s", 
mysqli_errno($link), mysqli_error($link));
                mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM 
pcontest');
+        mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM 
pcont...@localhost');
+        mysqli_query($link, 'DROP USER pcont...@localhost');
                mysqli_query($link, 'DROP USER pcontest');
                mysqli_close($link);
-               die();
+               die("skip GRANT failed");
        }
+
+    if (!($link_pcontest = @mysqli_connect($host, 'pcontest', 'pcontest', $db, 
$port, $socket))) {
+        die(":)");
+        mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM 
pcontest');
+        mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM 
pcont...@localhost');
+        mysqli_query($link, 'DROP USER pcont...@localhost');
+               mysqli_query($link, 'DROP USER pcontest');
+               mysqli_close($link);
+               die("skip CONNECT using new user failed");
+    }
        mysqli_close($link);
 ?>
 --INI--
@@ -68,15 +83,20 @@
                        !mysqli_query($link, 'FLUSH PRIVILEGES'))
                printf("[005] Cannot change PW of second DB user, [%d] %s\n", 
mysqli_errno($link), mysqli_error($link));
 
+        // change the password for the second DB user and kill the persistent 
connection
+       if (!mysqli_query($link, 'SET PASSWORD FOR pcont...@localhost = 
PASSWORD("newpass")') ||
+                       !mysqli_query($link, 'FLUSH PRIVILEGES'))
+               printf("[006] Cannot change PW of second DB user, [%d] %s\n", 
mysqli_errno($link), mysqli_error($link));
+
        // persistent connections cannot be closed but only be killed
        $pthread_id = mysqli_thread_id($plink);
        if (!mysqli_query($link, sprintf('KILL %d', $pthread_id)))
-               printf("[006] Cannot KILL persistent connection of second DB 
user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+               printf("[007] Cannot KILL persistent connection of second DB 
user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
        // give the server a second to really kill the thread
        sleep(1);
 
        if (!$res = mysqli_query($link, "SHOW FULL PROCESSLIST"))
-               printf("[007] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
+               printf("[008] [%d] %s\n", mysqli_errno($link), 
mysqli_error($link));
 
        $running_threads = array();
        while ($row = mysqli_fetch_assoc($res))
@@ -84,11 +104,11 @@
        mysqli_free_result($res);
 
        if (isset($running_threads[$pthread_id]))
-               printf("[008] Persistent connection has not been killed\n");
+               printf("[009] Persistent connection has not been killed\n");
 
        // this fails and we have 0 (<= $num_plinks) connections
        if ($plink = @mysqli_connect('p:' . $host, 'pcontest', 'pcontest', $db, 
$port, $socket))
-               printf("[009] Can connect using the old password, [%d] %s\n",
+               printf("[010] Can connect using the old password, [%d] %s\n",
                        mysqli_connect_errno($link), 
mysqli_connect_error($link));
 
        ob_start();



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to