Refactor check_user_privileges to static methods

Refactor check_user_privileges.lib.php functions to static methods and move logic to check_user_privileges.inc.php.

Signed-off-by: Maurício Meneghini Fauth <mauriciofauth@gmail.com>
This commit is contained in:
Maurício Meneghini Fauth 2017-09-11 16:27:39 -03:00
parent 9f6fcf04b4
commit a2b08bae7b
26 changed files with 381 additions and 365 deletions

View File

@ -28,7 +28,7 @@ require_once 'libraries/common.inc.php';
/**
* functions implementation for this script
*/
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
// add a javascript file for jQuery functions to handle Ajax actions
$response = Response::getInstance();

View File

@ -14,7 +14,7 @@ require_once 'libraries/common.inc.php';
/**
* Include all other files
*/
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
/**
* Do the magic

View File

@ -192,7 +192,7 @@ if ($server > 0 || count($cfg['Servers']) > 1
* Displays the mysql server related links
*/
if ($server > 0) {
include_once 'libraries/check_user_privileges.lib.php';
include_once 'libraries/check_user_privileges.inc.php';
// Logout for advanced authentication
if ($cfg['Server']['auth_type'] != 'config') {

View File

@ -0,0 +1,29 @@
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Get user's global privileges and some db-specific privileges
*
* @package PhpMyAdmin
*/
if (! defined('PHPMYADMIN')) {
exit;
}
use PhpMyAdmin\CheckUserPrivileges;
$GLOBALS['is_superuser'] = $GLOBALS['dbi']->isSuperuser();
list($username, $hostname) = $GLOBALS['dbi']->getCurrentUserAndHost();
if ($username === '') { // MySQL is started with --skip-grant-tables
$GLOBALS['is_create_db_priv'] = true;
$GLOBALS['is_reload_priv'] = true;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'] = array('*');
$GLOBALS['dbs_to_test'] = false;
$GLOBALS['db_priv'] = true;
$GLOBALS['col_priv'] = true;
$GLOBALS['table_priv'] = true;
$GLOBALS['proc_priv'] = true;
} else {
CheckUserPrivileges::analyseShowGrant();
}

View File

@ -1,322 +0,0 @@
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Get user's global privileges and some db-specific privileges
*
* @package PhpMyAdmin
*/
if (! defined('PHPMYADMIN')) {
exit;
}
/**
*
*/
$GLOBALS['is_superuser'] = $GLOBALS['dbi']->isSuperuser();
/**
* Extracts details from a result row of a SHOW GRANT query
*
* @param string $row grant row
*
* @return array
*/
function PMA_getItemsFromShowGrantsRow($row)
{
$db_name_offset = mb_strpos($row, ' ON ') + 4;
$show_grants_dbname = mb_substr(
$row, $db_name_offset,
mb_strpos($row, '.', $db_name_offset) - $db_name_offset
);
$show_grants_dbname = PhpMyAdmin\Util::unQuote($show_grants_dbname, '`');
$show_grants_str = mb_substr(
$row,
6,
(mb_strpos($row, ' ON ') - 6)
);
// extrac table from GRANT sytax
$tblname_start_offset = mb_strpos($row, '.') + 1;
$tblname_end_offset = mb_strpos($row, ' TO ');
$show_grants_tblname = mb_substr(
$row, $tblname_start_offset,
$tblname_end_offset - $tblname_start_offset
);
$show_grants_tblname = PhpMyAdmin\Util::unQuote($show_grants_tblname, '`');
return array(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
);
}
/**
* Check if user has required privileges for
* performing 'Adjust privileges' operations
*
* @param string $show_grants_str string containing grants for user
* @param string $show_grants_dbname name of db extracted from grant string
* @param string $show_grants_tblname name of table extracted from grant string
*
* @return void
*/
function PMA_checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) {
// '... ALL PRIVILEGES ON *.* ...' OR '... ALL PRIVILEGES ON `mysql`.* ..'
// OR
// SELECT, INSERT, UPDATE, DELETE .... ON *.* OR `mysql`.*
if ($show_grants_str == 'ALL'
|| $show_grants_str == 'ALL PRIVILEGES'
|| (mb_strpos(
$show_grants_str, 'SELECT, INSERT, UPDATE, DELETE'
) !== false)
) {
if ($show_grants_dbname == '*'
&& $show_grants_tblname == '*'
) {
$GLOBALS['col_priv'] = true;
$GLOBALS['db_priv'] = true;
$GLOBALS['proc_priv'] = true;
$GLOBALS['table_priv'] = true;
if ($show_grants_str == 'ALL PRIVILEGES'
|| $show_grants_str == 'ALL'
) {
$GLOBALS['is_reload_priv'] = true;
}
}
// check for specific tables in `mysql` db
// Ex. '... ALL PRIVILEGES on `mysql`.`columns_priv` .. '
if ($show_grants_dbname == 'mysql') {
switch ($show_grants_tblname) {
case "columns_priv":
$GLOBALS['col_priv'] = true;
break;
case "db":
$GLOBALS['db_priv'] = true;
break;
case "procs_priv":
$GLOBALS['proc_priv'] = true;
break;
case "tables_priv":
$GLOBALS['table_priv'] = true;
break;
case "*":
$GLOBALS['col_priv'] = true;
$GLOBALS['db_priv'] = true;
$GLOBALS['proc_priv'] = true;
$GLOBALS['table_priv'] = true;
break;
default:
}
}
}
}
/**
* sets privilege information extracted from SHOW GRANTS result
*
* Detection for some CREATE privilege.
*
* Since MySQL 4.1.2, we can easily detect current user's grants using $userlink
* (no control user needed) and we don't have to try any other method for
* detection
*
* @todo fix to get really all privileges, not only explicitly defined for this user
* from MySQL manual: (https://dev.mysql.com/doc/refman/5.0/en/show-grants.html)
* SHOW GRANTS displays only the privileges granted explicitly to the named
* account. Other privileges might be available to the account, but they are not
* displayed. For example, if an anonymous account exists, the named account
* might be able to use its privileges, but SHOW GRANTS will not display them.
*
* @return void
*/
function PMA_analyseShowGrant()
{
if (PhpMyAdmin\Util::cacheExists('is_create_db_priv')) {
$GLOBALS['is_create_db_priv'] = PhpMyAdmin\Util::cacheGet(
'is_create_db_priv'
);
$GLOBALS['is_reload_priv'] = PhpMyAdmin\Util::cacheGet(
'is_reload_priv'
);
$GLOBALS['db_to_create'] = PhpMyAdmin\Util::cacheGet(
'db_to_create'
);
$GLOBALS['dbs_where_create_table_allowed'] = PhpMyAdmin\Util::cacheGet(
'dbs_where_create_table_allowed'
);
$GLOBALS['dbs_to_test'] = PhpMyAdmin\Util::cacheGet(
'dbs_to_test'
);
$GLOBALS['db_priv'] = PhpMyAdmin\Util::cacheGet(
'db_priv'
);
$GLOBALS['col_priv'] = PhpMyAdmin\Util::cacheGet(
'col_priv'
);
$GLOBALS['table_priv'] = PhpMyAdmin\Util::cacheGet(
'table_priv'
);
$GLOBALS['proc_priv'] = PhpMyAdmin\Util::cacheGet(
'proc_priv'
);
return;
}
// defaults
$GLOBALS['is_create_db_priv'] = false;
$GLOBALS['is_reload_priv'] = false;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'] = array();
$GLOBALS['dbs_to_test'] = $GLOBALS['dbi']->getSystemSchemas();
$GLOBALS['proc_priv'] = false;
$GLOBALS['db_priv'] = false;
$GLOBALS['col_priv'] = false;
$GLOBALS['table_priv'] = false;
$rs_usr = $GLOBALS['dbi']->tryQuery('SHOW GRANTS');
if (! $rs_usr) {
return;
}
$re0 = '(^|(\\\\\\\\)+|[^\\\\])'; // non-escaped wildcards
$re1 = '(^|[^\\\\])(\\\)+'; // escaped wildcards
while ($row = $GLOBALS['dbi']->fetchRow($rs_usr)) {
list(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow($row[0]);
if ($show_grants_dbname == '*') {
if ($show_grants_str != 'USAGE') {
$GLOBALS['dbs_to_test'] = false;
}
} elseif ($GLOBALS['dbs_to_test'] !== false) {
$GLOBALS['dbs_to_test'][] = $show_grants_dbname;
}
if (
mb_strpos($show_grants_str,'RELOAD') !== false
) {
$GLOBALS['is_reload_priv'] = true;
}
// check for the required privileges for adjust
PMA_checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
);
/**
* @todo if we find CREATE VIEW but not CREATE, do not offer
* the create database dialog box
*/
if ($show_grants_str == 'ALL'
|| $show_grants_str == 'ALL PRIVILEGES'
|| $show_grants_str == 'CREATE'
|| strpos($show_grants_str, 'CREATE,') !== false
) {
if ($show_grants_dbname == '*') {
// a global CREATE privilege
$GLOBALS['is_create_db_priv'] = true;
$GLOBALS['is_reload_priv'] = true;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'][] = '*';
// @todo we should not break here, cause GRANT ALL *.*
// could be revoked by a later rule like GRANT SELECT ON db.*
break;
} else {
// this array may contain wildcards
$GLOBALS['dbs_where_create_table_allowed'][] = $show_grants_dbname;
$dbname_to_test = PhpMyAdmin\Util::backquote($show_grants_dbname);
if ($GLOBALS['is_create_db_priv']) {
// no need for any more tests if we already know this
continue;
}
// does this db exist?
if ((preg_match('/' . $re0 . '%|_/', $show_grants_dbname)
&& ! preg_match('/\\\\%|\\\\_/', $show_grants_dbname))
|| (! $GLOBALS['dbi']->tryQuery(
'USE ' . preg_replace(
'/' . $re1 . '(%|_)/', '\\1\\3', $dbname_to_test
)
)
&& mb_substr($GLOBALS['dbi']->getError(), 1, 4) != 1044)
) {
/**
* Do not handle the underscore wildcard
* (this case must be rare anyway)
*/
$GLOBALS['db_to_create'] = preg_replace(
'/' . $re0 . '%/', '\\1',
$show_grants_dbname
);
$GLOBALS['db_to_create'] = preg_replace(
'/' . $re1 . '(%|_)/', '\\1\\3',
$GLOBALS['db_to_create']
);
$GLOBALS['is_create_db_priv'] = true;
/**
* @todo collect $GLOBALS['db_to_create'] into an array,
* to display a drop-down in the "Create database" dialog
*/
// we don't break, we want all possible databases
//break;
} // end if
} // end elseif
} // end if
} // end while
$GLOBALS['dbi']->freeResult($rs_usr);
// must also cacheUnset() them in
// PhpMyAdmin\Plugins\Auth\AuthenticationCookie
PhpMyAdmin\Util::cacheSet('is_create_db_priv', $GLOBALS['is_create_db_priv']);
PhpMyAdmin\Util::cacheSet('is_reload_priv', $GLOBALS['is_reload_priv']);
PhpMyAdmin\Util::cacheSet('db_to_create', $GLOBALS['db_to_create']);
PhpMyAdmin\Util::cacheSet(
'dbs_where_create_table_allowed',
$GLOBALS['dbs_where_create_table_allowed']
);
PhpMyAdmin\Util::cacheSet('dbs_to_test', $GLOBALS['dbs_to_test']);
PhpMyAdmin\Util::cacheSet('proc_priv', $GLOBALS['proc_priv']);
PhpMyAdmin\Util::cacheSet('table_priv', $GLOBALS['table_priv']);
PhpMyAdmin\Util::cacheSet('col_priv', $GLOBALS['col_priv']);
PhpMyAdmin\Util::cacheSet('db_priv', $GLOBALS['db_priv']);
} // end function
list($username, $hostname) = $GLOBALS['dbi']->getCurrentUserAndHost();
if ($username === '') { // MySQL is started with --skip-grant-tables
$GLOBALS['is_create_db_priv'] = true;
$GLOBALS['is_reload_priv'] = true;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'] = array('*');
$GLOBALS['dbs_to_test'] = false;
$GLOBALS['db_priv'] = true;
$GLOBALS['col_priv'] = true;
$GLOBALS['table_priv'] = true;
$GLOBALS['proc_priv'] = true;
} else {
PMA_analyseShowGrant();
}

View File

@ -0,0 +1,310 @@
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Get user's global privileges and some db-specific privileges
*
* @package PhpMyAdmin
*/
namespace PhpMyAdmin;
use PhpMyAdmin\Util;
/**
* PhpMyAdmin\CheckUserPrivileges class
*
* @package PhpMyAdmin
*/
class CheckUserPrivileges
{
/**
* Extracts details from a result row of a SHOW GRANT query
*
* @param string $row grant row
*
* @return array
*/
public static function getItemsFromShowGrantsRow($row)
{
$db_name_offset = mb_strpos($row, ' ON ') + 4;
$show_grants_dbname = mb_substr(
$row, $db_name_offset,
mb_strpos($row, '.', $db_name_offset) - $db_name_offset
);
$show_grants_dbname = Util::unQuote($show_grants_dbname, '`');
$show_grants_str = mb_substr(
$row,
6,
(mb_strpos($row, ' ON ') - 6)
);
// extrac table from GRANT sytax
$tblname_start_offset = mb_strpos($row, '.') + 1;
$tblname_end_offset = mb_strpos($row, ' TO ');
$show_grants_tblname = mb_substr(
$row, $tblname_start_offset,
$tblname_end_offset - $tblname_start_offset
);
$show_grants_tblname = Util::unQuote($show_grants_tblname, '`');
return array(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
);
}
/**
* Check if user has required privileges for
* performing 'Adjust privileges' operations
*
* @param string $show_grants_str string containing grants for user
* @param string $show_grants_dbname name of db extracted from grant string
* @param string $show_grants_tblname name of table extracted from grant string
*
* @return void
*/
public static function checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) {
// '... ALL PRIVILEGES ON *.* ...' OR '... ALL PRIVILEGES ON `mysql`.* ..'
// OR
// SELECT, INSERT, UPDATE, DELETE .... ON *.* OR `mysql`.*
if ($show_grants_str == 'ALL'
|| $show_grants_str == 'ALL PRIVILEGES'
|| (mb_strpos(
$show_grants_str, 'SELECT, INSERT, UPDATE, DELETE'
) !== false)
) {
if ($show_grants_dbname == '*'
&& $show_grants_tblname == '*'
) {
$GLOBALS['col_priv'] = true;
$GLOBALS['db_priv'] = true;
$GLOBALS['proc_priv'] = true;
$GLOBALS['table_priv'] = true;
if ($show_grants_str == 'ALL PRIVILEGES'
|| $show_grants_str == 'ALL'
) {
$GLOBALS['is_reload_priv'] = true;
}
}
// check for specific tables in `mysql` db
// Ex. '... ALL PRIVILEGES on `mysql`.`columns_priv` .. '
if ($show_grants_dbname == 'mysql') {
switch ($show_grants_tblname) {
case "columns_priv":
$GLOBALS['col_priv'] = true;
break;
case "db":
$GLOBALS['db_priv'] = true;
break;
case "procs_priv":
$GLOBALS['proc_priv'] = true;
break;
case "tables_priv":
$GLOBALS['table_priv'] = true;
break;
case "*":
$GLOBALS['col_priv'] = true;
$GLOBALS['db_priv'] = true;
$GLOBALS['proc_priv'] = true;
$GLOBALS['table_priv'] = true;
break;
default:
}
}
}
}
/**
* sets privilege information extracted from SHOW GRANTS result
*
* Detection for some CREATE privilege.
*
* Since MySQL 4.1.2, we can easily detect current user's grants using $userlink
* (no control user needed) and we don't have to try any other method for
* detection
*
* @todo fix to get really all privileges, not only explicitly defined for this user
* from MySQL manual: (https://dev.mysql.com/doc/refman/5.0/en/show-grants.html)
* SHOW GRANTS displays only the privileges granted explicitly to the named
* account. Other privileges might be available to the account, but they are not
* displayed. For example, if an anonymous account exists, the named account
* might be able to use its privileges, but SHOW GRANTS will not display them.
*
* @return void
*/
public static function analyseShowGrant()
{
if (Util::cacheExists('is_create_db_priv')) {
$GLOBALS['is_create_db_priv'] = Util::cacheGet(
'is_create_db_priv'
);
$GLOBALS['is_reload_priv'] = Util::cacheGet(
'is_reload_priv'
);
$GLOBALS['db_to_create'] = Util::cacheGet(
'db_to_create'
);
$GLOBALS['dbs_where_create_table_allowed'] = Util::cacheGet(
'dbs_where_create_table_allowed'
);
$GLOBALS['dbs_to_test'] = Util::cacheGet(
'dbs_to_test'
);
$GLOBALS['db_priv'] = Util::cacheGet(
'db_priv'
);
$GLOBALS['col_priv'] = Util::cacheGet(
'col_priv'
);
$GLOBALS['table_priv'] = Util::cacheGet(
'table_priv'
);
$GLOBALS['proc_priv'] = Util::cacheGet(
'proc_priv'
);
return;
}
// defaults
$GLOBALS['is_create_db_priv'] = false;
$GLOBALS['is_reload_priv'] = false;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'] = array();
$GLOBALS['dbs_to_test'] = $GLOBALS['dbi']->getSystemSchemas();
$GLOBALS['proc_priv'] = false;
$GLOBALS['db_priv'] = false;
$GLOBALS['col_priv'] = false;
$GLOBALS['table_priv'] = false;
$rs_usr = $GLOBALS['dbi']->tryQuery('SHOW GRANTS');
if (! $rs_usr) {
return;
}
$re0 = '(^|(\\\\\\\\)+|[^\\\\])'; // non-escaped wildcards
$re1 = '(^|[^\\\\])(\\\)+'; // escaped wildcards
while ($row = $GLOBALS['dbi']->fetchRow($rs_usr)) {
list(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = self::getItemsFromShowGrantsRow($row[0]);
if ($show_grants_dbname == '*') {
if ($show_grants_str != 'USAGE') {
$GLOBALS['dbs_to_test'] = false;
}
} elseif ($GLOBALS['dbs_to_test'] !== false) {
$GLOBALS['dbs_to_test'][] = $show_grants_dbname;
}
if (
mb_strpos($show_grants_str,'RELOAD') !== false
) {
$GLOBALS['is_reload_priv'] = true;
}
// check for the required privileges for adjust
self::checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
);
/**
* @todo if we find CREATE VIEW but not CREATE, do not offer
* the create database dialog box
*/
if ($show_grants_str == 'ALL'
|| $show_grants_str == 'ALL PRIVILEGES'
|| $show_grants_str == 'CREATE'
|| strpos($show_grants_str, 'CREATE,') !== false
) {
if ($show_grants_dbname == '*') {
// a global CREATE privilege
$GLOBALS['is_create_db_priv'] = true;
$GLOBALS['is_reload_priv'] = true;
$GLOBALS['db_to_create'] = '';
$GLOBALS['dbs_where_create_table_allowed'][] = '*';
// @todo we should not break here, cause GRANT ALL *.*
// could be revoked by a later rule like GRANT SELECT ON db.*
break;
} else {
// this array may contain wildcards
$GLOBALS['dbs_where_create_table_allowed'][] = $show_grants_dbname;
$dbname_to_test = Util::backquote($show_grants_dbname);
if ($GLOBALS['is_create_db_priv']) {
// no need for any more tests if we already know this
continue;
}
// does this db exist?
if ((preg_match('/' . $re0 . '%|_/', $show_grants_dbname)
&& ! preg_match('/\\\\%|\\\\_/', $show_grants_dbname))
|| (! $GLOBALS['dbi']->tryQuery(
'USE ' . preg_replace(
'/' . $re1 . '(%|_)/', '\\1\\3', $dbname_to_test
)
)
&& mb_substr($GLOBALS['dbi']->getError(), 1, 4) != 1044)
) {
/**
* Do not handle the underscore wildcard
* (this case must be rare anyway)
*/
$GLOBALS['db_to_create'] = preg_replace(
'/' . $re0 . '%/', '\\1',
$show_grants_dbname
);
$GLOBALS['db_to_create'] = preg_replace(
'/' . $re1 . '(%|_)/', '\\1\\3',
$GLOBALS['db_to_create']
);
$GLOBALS['is_create_db_priv'] = true;
/**
* @todo collect $GLOBALS['db_to_create'] into an array,
* to display a drop-down in the "Create database" dialog
*/
// we don't break, we want all possible databases
//break;
} // end if
} // end elseif
} // end if
} // end while
$GLOBALS['dbi']->freeResult($rs_usr);
// must also cacheUnset() them in
// PhpMyAdmin\Plugins\Auth\AuthenticationCookie
Util::cacheSet('is_create_db_priv', $GLOBALS['is_create_db_priv']);
Util::cacheSet('is_reload_priv', $GLOBALS['is_reload_priv']);
Util::cacheSet('db_to_create', $GLOBALS['db_to_create']);
Util::cacheSet(
'dbs_where_create_table_allowed',
$GLOBALS['dbs_where_create_table_allowed']
);
Util::cacheSet('dbs_to_test', $GLOBALS['dbs_to_test']);
Util::cacheSet('proc_priv', $GLOBALS['proc_priv']);
Util::cacheSet('table_priv', $GLOBALS['table_priv']);
Util::cacheSet('col_priv', $GLOBALS['col_priv']);
Util::cacheSet('db_priv', $GLOBALS['db_priv']);
} // end function
}

View File

@ -57,7 +57,7 @@ class ServerDatabasesController extends Controller
*/
public function indexAction()
{
include_once 'libraries/check_user_privileges.lib.php';
include_once 'libraries/check_user_privileges.inc.php';
$response = Response::getInstance();

View File

@ -112,7 +112,7 @@ class TableStructureController extends TableController
/**
* Function implementations for this script
*/
include_once 'libraries/check_user_privileges.lib.php';
include_once 'libraries/check_user_privileges.inc.php';
$this->response->getHeader()->getScripts()->addFiles(
array(
@ -512,7 +512,7 @@ class TableStructureController extends TableController
/**
* Form for changing properties.
*/
include_once 'libraries/check_user_privileges.lib.php';
include_once 'libraries/check_user_privileges.inc.php';
include 'libraries/tbl_columns_definition_form.inc.php';
}

View File

@ -28,7 +28,7 @@ namespace PhpMyAdmin\Display;
use PhpMyAdmin\Template;
require_once './libraries/check_user_privileges.lib.php';
require_once './libraries/check_user_privileges.inc.php';
/**
* PhpMyAdmin\Display\CreateTable class

View File

@ -24,7 +24,7 @@ use PhpMyAdmin\Util;
* We need to know something about user
*/
$GLOBALS['cfg']['Server']['DisableIS'] = false;
require_once './libraries/check_user_privileges.lib.php';
require_once './libraries/check_user_privileges.inc.php';
/**
* PhpMyAdmin\Import class

View File

@ -10,7 +10,7 @@ namespace PhpMyAdmin;
use PhpMyAdmin\ListAbstract;
use PhpMyAdmin\Util;
require_once './libraries/check_user_privileges.lib.php';
require_once './libraries/check_user_privileges.inc.php';
/**
* handles database lists

View File

@ -17,7 +17,7 @@ use PhpMyAdmin\Response;
use PhpMyAdmin\Util;
use PhpMyAdmin\Url;
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
/**
* Displays a collapsible of database objects in the navigation frame

View File

@ -10,7 +10,7 @@ namespace PhpMyAdmin\Navigation\Nodes;
use PhpMyAdmin\Navigation\NodeFactory;
use PhpMyAdmin\Util;
require_once './libraries/check_user_privileges.lib.php';
require_once './libraries/check_user_privileges.inc.php';
/**
* Represents a container for database nodes in the navigation tree

View File

@ -22,7 +22,7 @@ require_once 'libraries/common.inc.php';
/**
* functions implementation for this script
*/
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
$cfgRelation = Relation::getRelationsParam();

View File

@ -17,7 +17,7 @@ use PhpMyAdmin\Util;
* Gets some core libraries
*/
require_once 'libraries/common.inc.php';
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
PageSettings::showGroup('Browse');

View File

@ -22,7 +22,7 @@ require_once 'libraries/common.inc.php';
/**
* functions implementation for this script
*/
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
$pma_table = new Table($GLOBALS['table'], $GLOBALS['db']);

View File

@ -1,27 +1,27 @@
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* tests for check_user_privileges.lib.php
* tests for PhpMyAdmin\CheckUserPrivileges
*
* @package PhpMyAdmin-test
*/
namespace PhpMyAdmin\Tests;
use PhpMyAdmin\CheckUserPrivileges;
/*
* Include to test.
*/
$GLOBALS['server'] = 1;
$GLOBALS['cfg']['Server']['DisableIS'] = false;
require_once 'libraries/check_user_privileges.lib.php';
/**
* tests for check_user_privileges.lib.php
* tests for PhpMyAdmin\CheckUserPrivileges
*
* @package PhpMyAdmin-test
*/
class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
class CheckUserPrivilegesTest extends \PHPUnit_Framework_TestCase
{
/**
* prepares environment for tests
*
@ -29,7 +29,6 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
*/
public function setUp()
{
$GLOBALS['col_priv'] = false;
$GLOBALS['db_priv'] = false;
$GLOBALS['proc_priv'] = false;
@ -48,7 +47,7 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
@ -75,7 +74,7 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
@ -102,7 +101,7 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
@ -125,7 +124,7 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
/**
* Test for PMA_checkRequiredPrivilegesForAdjust
* Test for CheckUserPrivileges::checkRequiredPrivilegesForAdjust
*
* @return void
*/
@ -138,12 +137,12 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
// call the to-be-tested function
PMA_checkRequiredPrivilegesForAdjust(
CheckUserPrivileges::checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
@ -179,12 +178,12 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
// call the to-be-tested function
PMA_checkRequiredPrivilegesForAdjust(
CheckUserPrivileges::checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
@ -220,12 +219,12 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
// call the to-be-tested function
PMA_checkRequiredPrivilegesForAdjust(
CheckUserPrivileges::checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
@ -261,12 +260,12 @@ class PMA_CheckUserPrivileges_Test extends PHPUnit_Framework_TestCase
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname
) = PMA_getItemsFromShowGrantsRow(
) = CheckUserPrivileges::getItemsFromShowGrantsRow(
$show_grants_full_row
);
// call the to-be-tested function
PMA_checkRequiredPrivilegesForAdjust(
CheckUserPrivileges::checkRequiredPrivilegesForAdjust(
$show_grants_str,
$show_grants_dbname,
$show_grants_tblname

View File

@ -14,7 +14,7 @@ use PhpMyAdmin\Util;
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
$GLOBALS['server'] = 0;

View File

@ -8,7 +8,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Navigation\NavigationTree;
use PhpMyAdmin\Theme;
@ -16,7 +16,7 @@ use PhpMyAdmin\Theme;
$GLOBALS['server'] = 0;
$GLOBALS['cfg']['Server']['DisableIS'] = false;
require_once 'libraries/check_user_privileges.lib.php';
require_once 'libraries/check_user_privileges.inc.php';
require_once 'test/PMATestCase.php';
/**

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportCsv;
use PhpMyAdmin\Theme;

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportLdi;
use PhpMyAdmin\File;

View File

@ -6,7 +6,7 @@
*/
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportMediawiki;
use PhpMyAdmin\File;

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportOds;
use PhpMyAdmin\File;

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportShp;
use PhpMyAdmin\File;

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportSql;
use PhpMyAdmin\File;

View File

@ -7,7 +7,7 @@
/*
* we must set $GLOBALS['server'] here
* since 'check_user_privileges.lib.php' will use it globally
* since 'check_user_privileges.inc.php' will use it globally
*/
use PhpMyAdmin\Plugins\Import\ImportXml;
use PhpMyAdmin\File;