diff options
author | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-04-27 21:01:24 +0200 |
---|---|---|
committer | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-04-27 21:01:24 +0200 |
commit | 68af4d3c22ce1cb25793af5fb9f422bbb6ebe80e (patch) | |
tree | 1283a8a34de7cdbf7675aa05514e3289602c34d7 /Bugzilla/DB/Mysql.pm | |
parent | b7fbcf61cf1267564edaf343833fa15f1a806430 (diff) | |
download | bugzilla-68af4d3c22ce1cb25793af5fb9f422bbb6ebe80e.tar.gz bugzilla-68af4d3c22ce1cb25793af5fb9f422bbb6ebe80e.tar.xz |
Bug 561322: Make Bugzilla::DB::_connect and related functions take their
parameters as a hashref, to improve the API and to avoid exposing the
database password on error.
r=mkanat, a=mkanat (module owner)
Diffstat (limited to 'Bugzilla/DB/Mysql.pm')
-rw-r--r-- | Bugzilla/DB/Mysql.pm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Bugzilla/DB/Mysql.pm b/Bugzilla/DB/Mysql.pm index 297cf5758..13069a78a 100644 --- a/Bugzilla/DB/Mysql.pm +++ b/Bugzilla/DB/Mysql.pm @@ -61,7 +61,9 @@ use constant MAX_COMMENTS => 50; use base qw(Bugzilla::DB); sub new { - my ($class, $user, $pass, $host, $dbname, $port, $sock) = @_; + my ($class, $params) = @_; + my ($user, $pass, $host, $dbname, $port, $sock) = + @$params{qw(db_user db_pass db_host db_name db_port db_sock)}; # construct the DSN from the parameters we got my $dsn = "dbi:mysql:host=$host;database=$dbname"; @@ -74,7 +76,8 @@ sub new { mysql_auto_reconnect => 1, ); - my $self = $class->db_new($dsn, $user, $pass, \%attrs); + my $self = $class->db_new({ dsn => $dsn, user => $user, + pass => $pass, attrs => \%attrs }); # This makes sure that if the tables are encoded as UTF-8, we # return their data correctly. |