From: Jakub Vrana Date: Tue, 9 Feb 2021 09:42:05 +0000 (+0100) Subject: MongoDB: Display Authentication failed instead of exception X-Git-Tag: v4.8.0~22 X-Git-Url: https://git.joonet.de/?a=commitdiff_plain;h=1e4fb073b5c65730b110f65e4c2ae3cefbb5d872;p=adminer.git MongoDB: Display Authentication failed instead of exception --- diff --git a/adminer/drivers/mongo.inc.php b/adminer/drivers/mongo.inc.php index f2c0d7ed..ad06af5e 100644 --- a/adminer/drivers/mongo.inc.php +++ b/adminer/drivers/mongo.inc.php @@ -13,7 +13,10 @@ if (isset($_GET["mongo"])) { function connect($uri, $options) { $class = 'MongoDB\Driver\Manager'; - return new $class($uri, $options); + $return = new $class($uri, $options); + $class = 'MongoDB\Driver\Command'; + $return->executeCommand('admin', new $class(array('ping' => 1))); + return $return; } function query($query) { @@ -28,11 +31,6 @@ if (isset($_GET["mongo"])) { function quote($string) { return $string; } - - function ping($link) { - $class = 'MongoDB\Driver\Command'; - $link->executeCommand('admin', new $class(array('ping' => 1))); - } } class Min_Result { @@ -397,9 +395,6 @@ if (isset($_GET["mongo"])) { function quote($string) { return $string; } - - function ping($link) { - } } class Min_Result { @@ -631,7 +626,7 @@ if (isset($_GET["mongo"])) { if ($password != "") { $options["password"] = ""; try { - $connection->ping($connection->connect("mongodb://$server", $options)); + $connection->connect("mongodb://$server", $options); return lang('Database does not support password.'); } catch (Exception $ex) { // this is what we want