ID: 43812
Comment by: axz55 at case dot edu
Reported By: graced at wingsnw dot com
Status: No Feedback
Bug Type: MySQLi related
Operating System: Debian lenny/sid
PHP Version: 5.2.5
Assigned To: andrey
New Comment:
Also able to reproduce this using PHP 5.3.0
Verified that the username is being read from the file but the password
is not. The file permissions are 0400 and the mysql command line client
reads the file just fine.
Previous Comments:
------------------------------------------------------------------------
[2008-07-22 01:00:01] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2008-07-14 20:28:38] uw@php.net
I can't reproduce this with PHP 5.3 CVS nor with PHP 5.2.6, please
check the notes on
http://dev.mysql.com/doc/refman/5.1/en/option-files.html,
e.g. "On Unix
platforms, MySQL ignores configuration files that are world-writable.
This is intentional as a security measure."
------------------------------------------------------------------------
[2008-01-15 05:03:13] graced at wingsnw dot com
Clarification:
Warning: mysqli::real_connect(): (28000/1045): Access denied for user
'wadmin'@'localhost' (using password: NO) in /home/.../- on line 6
'wadmin' was the username I was connecting with (I missed it when
sanitizing my.cnf values), NOT my current login name (which is what PHP
and mysql both default to otherwise).
Just in case it matters.
------------------------------------------------------------------------
[2008-01-11 03:32:02] graced at wingsnw dot com
Description:
------------
my.cnf files allow the username/password/hostname and other connection
information to be stored for later use.
The Mysqli extension accepts a username from the file (overriding the
default of the current login username) but not a password, thus it
attempts to connect with no password even when a password is specified.
The mysql command line client, when pointed at the file using
--defaults-extra-file=path/to/file.cnf, successfully connects.
Reproduce code:
---------------
my.cnf contents:
[client]
host = localhost
user = "username"
password = "topsecret"
PHP script:
<?php
error_reporting(E_ALL);
$DB = mysqli_init();
$DB->options(MYSQLI_READ_DEFAULT_FILE, "my.cnf");
$DB->options(MYSQLI_READ_DEFAULT_GROUP, "client");
$DB->real_connect();
Expected result:
----------------
A successful database connection.
Actual result:
--------------
Warning: mysqli::real_connect(): (28000/1045): Access denied for user
'wadmin'@'localhost' (using password: NO) in /home/.../- on line 6
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=43812&edit=1