From b12411cc2466639e7684c8414e65e19b8d170cc7 Mon Sep 17 00:00:00 2001 From: Pavel Rochnyack Date: Wed, 3 Aug 2016 09:57:27 +0100 Subject: [PATCH 1/3] Fix header in User Properties editor Signed-off-by: Pavel Rochnyack --- libraries/server_privileges.lib.php | 19 ++++++++++++------- test/libraries/PMA_server_privileges_test.php | 2 +- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/libraries/server_privileges.lib.php b/libraries/server_privileges.lib.php index 2a00fc9967..b671a1b148 100644 --- a/libraries/server_privileges.lib.php +++ b/libraries/server_privileges.lib.php @@ -974,7 +974,9 @@ function PMA_getHtmlForRoutineSpecificPrivilges( $username, $hostname, $db, $routine, $url_dbname ) { $header = PMA_getHtmlHeaderForUserProperties( - false, $url_dbname, $db, $username, $hostname, $routine + false, $url_dbname, $db, $username, $hostname, + '', /* Tablename */ + $routine ); $sql = "SELECT `Proc_priv`" @@ -1094,7 +1096,7 @@ function PMA_getHtmlForTableSpecificPrivileges( . '' . "\n" . '
' . "\n" - . '' . __('Table-specific privileges') + . '' . __('Table-specific privileges') . '' . '

' . __('Note: MySQL privilege names are expressed in English.') @@ -4573,7 +4575,8 @@ function PMA_getAddUserHtmlFieldset($db = '', $table = '') * @return string $html_output */ function PMA_getHtmlHeaderForUserProperties( - $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, $tablename + $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, $tablename, + $routinename ) { $html_output = '

' . "\n" . Util::getIcon('b_usredit.png') @@ -4599,7 +4602,7 @@ function PMA_getHtmlHeaderForUserProperties( $html_output .= ($dbname_is_wildcard || is_array($dbname) && count($dbname) > 1) ? __('Databases') : __('Database'); - if (! empty($_REQUEST['tablename'])) { + if (! empty($tablename)) { $html_output .= ' '; $html_output .= ' - ' . __('Routine') - . ' ' . htmlspecialchars($tablename) . ''; + . ' ' . htmlspecialchars($routinename) . ''; } else { if (! is_array($dbname)) { $dbname = array($dbname); @@ -4840,7 +4843,9 @@ function PMA_getHtmlForUserProperties($dbname_is_wildcard,$url_dbname, ) { $html_output = '
'; $html_output .= PMA_getHtmlHeaderForUserProperties( - $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, $tablename + $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, + $tablename, + '' /* Routinename */ ); $sql = "SELECT '1' FROM `mysql`.`user`" diff --git a/test/libraries/PMA_server_privileges_test.php b/test/libraries/PMA_server_privileges_test.php index 62c9030cd1..c3de28b983 100644 --- a/test/libraries/PMA_server_privileges_test.php +++ b/test/libraries/PMA_server_privileges_test.php @@ -1962,7 +1962,7 @@ class PMA_ServerPrivileges_Test extends PHPUnit_Framework_TestCase $html = PMA_getHtmlHeaderForUserProperties( $dbname_is_wildcard, $url_dbname, $dbname, - $username, $hostname, $tablename + $username, $hostname, $tablename, '' /* Routinename */ ); //title From f80140c46e7e3df31dd5450b60136518b8ac1f0a Mon Sep 17 00:00:00 2001 From: Deven Bansod Date: Fri, 11 Nov 2016 19:06:37 +0530 Subject: [PATCH 2/3] Fix function parameters in b12411cc2466639e7684c8414e65e19b8d170cc7 Fix #12542 Signed-off-by: Deven Bansod --- libraries/server_privileges.lib.php | 21 +++++++++---------- test/libraries/PMA_server_privileges_test.php | 4 +++- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/libraries/server_privileges.lib.php b/libraries/server_privileges.lib.php index 074982f33b..9988186900 100644 --- a/libraries/server_privileges.lib.php +++ b/libraries/server_privileges.lib.php @@ -975,8 +975,7 @@ function PMA_getHtmlForRoutineSpecificPrivilges( ) { $header = PMA_getHtmlHeaderForUserProperties( false, $url_dbname, $db, $username, $hostname, - '', /* Tablename */ - $routine + $routine, 'routine' ); $sql = "SELECT `Proc_priv`" @@ -4570,13 +4569,14 @@ function PMA_getAddUserHtmlFieldset($db = '', $table = '') * @param string $dbname database name * @param string $username username * @param string $hostname host name - * @param string $tablename table name + * @param string $entity_name entity (table or routine) name + * @param string $entity_type optional, type of entity ('table' or 'routine') * * @return string $html_output */ function PMA_getHtmlHeaderForUserProperties( - $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, $tablename, - $routinename + $dbname_is_wildcard, $url_dbname, $dbname, + $username, $hostname, $entity_name, $entity_type='table' ) { $html_output = '

' . "\n" . Util::getIcon('b_usredit.png') @@ -4602,7 +4602,7 @@ function PMA_getHtmlHeaderForUserProperties( $html_output .= ($dbname_is_wildcard || is_array($dbname) && count($dbname) > 1) ? __('Databases') : __('Database'); - if (! empty($tablename)) { + if (! empty($entity_name) && $entity_type === 'table') { $html_output .= ' '; $html_output .= ' - ' . __('Routine') - . ' ' . htmlspecialchars($routinename) . ''; + . ' ' . htmlspecialchars($entity_name) . ''; } else { if (! is_array($dbname)) { $dbname = array($dbname); @@ -4844,8 +4844,7 @@ function PMA_getHtmlForUserProperties($dbname_is_wildcard,$url_dbname, $html_output = '
'; $html_output .= PMA_getHtmlHeaderForUserProperties( $dbname_is_wildcard, $url_dbname, $dbname, $username, $hostname, - $tablename, - '' /* Routinename */ + $tablename, 'table' ); $sql = "SELECT '1' FROM `mysql`.`user`" diff --git a/test/libraries/PMA_server_privileges_test.php b/test/libraries/PMA_server_privileges_test.php index c3de28b983..7f27175567 100644 --- a/test/libraries/PMA_server_privileges_test.php +++ b/test/libraries/PMA_server_privileges_test.php @@ -84,6 +84,8 @@ class PMA_ServerPrivileges_Test extends PHPUnit_Framework_TestCase $GLOBALS['username'] = "username"; $GLOBALS['collation_connection'] = "collation_connection"; $GLOBALS['text_dir'] = "text_dir"; + $GLOBALS['is_reload_priv'] = true; + //$_POST $_POST['pred_password'] = 'none'; //$_SESSION @@ -1962,7 +1964,7 @@ class PMA_ServerPrivileges_Test extends PHPUnit_Framework_TestCase $html = PMA_getHtmlHeaderForUserProperties( $dbname_is_wildcard, $url_dbname, $dbname, - $username, $hostname, $tablename, '' /* Routinename */ + $username, $hostname, $tablename, 'table' ); //title From d580bb3b51543b626eacc29f862364683ba5c779 Mon Sep 17 00:00:00 2001 From: Deven Bansod Date: Fri, 11 Nov 2016 19:09:44 +0530 Subject: [PATCH 3/3] ChangeLog for #12542 Signed-off-by: Deven Bansod --- ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/ChangeLog b/ChangeLog index 6c7461e8f1..a1260c4054 100644 --- a/ChangeLog +++ b/ChangeLog @@ -86,6 +86,7 @@ phpMyAdmin - ChangeLog - issue #12257 Improved search page performance - issue #12322 Avoid selecting default function for foreign keys - issue #12453 Fixed escaping of SQL parts in some corner cases +- issue #12542 Missing table name in account privileges editor 4.6.4 (2016-08-16) - issue [security] Weaknesses with cookie encryption, see PMASA-2016-29