#43812 [Asn->Fbk]: 'password' parameter in my.cnf not honored even with mysqli_options()

From: Date: Mon, 14 Jul 2008 20:28:39 +0000
Subject: #43812 [Asn->Fbk]: 'password' parameter in my.cnf not honored even with mysqli_options()
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-126699@lists.php.net to get a copy of this message
 ID:               43812
 Updated by:       uw@php.net
 Reported By:      graced at wingsnw dot com
-Status:           Assigned
+Status:           Feedback
 Bug Type:         MySQLi related
 Operating System: Debian lenny/sid
 PHP Version:      5.2.5
 Assigned To:      andrey
 New Comment:

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."




Previous Comments:
------------------------------------------------------------------------

[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



Thread (25 messages)

« previous php.bugs (#126699) next »