diff --git a/htdocs/sql/libraries/auth/http.auth.lib.php b/htdocs/sql/libraries/auth/http.auth.lib.php new file mode 100755 --- /dev/null +++ b/htdocs/sql/libraries/auth/http.auth.lib.php @@ -0,0 +1,227 @@ + + + + + +

+
+

+
+
+
+ + + + + + ensure the new username is not the same + if (!empty($old_usr) + && (isset($PHP_AUTH_USER) && $old_usr == $PHP_AUTH_USER)) { + $PHP_AUTH_USER = ''; + // -> delete user's choices that were stored in session + session_destroy(); + } + + // Returns whether we get authentication settings or not + if (empty($PHP_AUTH_USER)) { + return false; + } else { + return true; + } +} // end of the 'PMA_auth_check()' function + + +/** + * Set the user and password after last checkings if required + * + * @global array the valid servers settings + * @global integer the id of the current server + * @global array the current server settings + * @global string the current username + * @global string the current password + * + * @return boolean always true + * + * @access public + */ +function PMA_auth_set_user() +{ + global $cfg, $server; + global $PHP_AUTH_USER, $PHP_AUTH_PW; + + // Ensures valid authentication mode, 'only_db', bookmark database and + // table names and relation table name are used + if ($cfg['Server']['user'] != $PHP_AUTH_USER) { + $servers_cnt = count($cfg['Servers']); + for ($i = 1; $i <= $servers_cnt; $i++) { + if (isset($cfg['Servers'][$i]) + && ($cfg['Servers'][$i]['host'] == $cfg['Server']['host'] && $cfg['Servers'][$i]['user'] == $PHP_AUTH_USER)) { + $server = $i; + $cfg['Server'] = $cfg['Servers'][$i]; + break; + } + } // end for + } // end if + + $cfg['Server']['user'] = $PHP_AUTH_USER; + $cfg['Server']['password'] = $PHP_AUTH_PW; + + return true; +} // end of the 'PMA_auth_set_user()' function + + +/** + * User is not allowed to login to MySQL -> authentication failed + * + * @return boolean always true (no return indeed) + * + * @access public + */ +function PMA_auth_fails() +{ + $error = PMA_DBI_getError(); + if ($error && $GLOBALS['errno'] != 1045) { + PMA_fatalError($error); + } else { + PMA_auth(); + return true; + } + +} // end of the 'PMA_auth_fails()' function + +?>