summaryrefslogtreecommitdiff
path: root/sql/sql_acl.cc
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-10-03 16:54:26 +0300
committerunknown <monty@mashka.mysql.fi>2002-10-03 16:54:26 +0300
commit8f7a2b2785cec83f3c00047b5d3fb76d85ecbe62 (patch)
treef4c99a6c2b4ed9003c893e7098a0c957d720e317 /sql/sql_acl.cc
parent95e772b65678b182bff5b52f3f5386d894419147 (diff)
downloadmariadb-git-8f7a2b2785cec83f3c00047b5d3fb76d85ecbe62.tar.gz
Update after last merge. Fixes some wrong test results.
libmysql/libmysql.c: Removed obsolete function (now in strings library) mysql-test/r/rpl_log.result: Updated results for 4.1 mysql-test/r/rpl_log_pos.result: Updated results for 4.1 sql/item_strfunc.cc: Added missing system_charset_info sql/log_event.cc: Portability fixes. More debugging. sql/net_pkg.cc: Added back setting of query_error as slave code is depeneding on this. sql/sql_acl.cc: Update after last merge sql/sql_lex.cc: Update after last merge sql/sql_parse.cc: Update after last merge sql/sql_prepare.cc: Update after last merge sql/time.cc: Update after last merge. More comments
Diffstat (limited to 'sql/sql_acl.cc')
-rw-r--r--sql/sql_acl.cc18
1 files changed, 9 insertions, 9 deletions
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index aab3e8899ce..5f8cf42c2bf 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -644,7 +644,7 @@ static void acl_update_user(const char *user, const char *host,
{
if (!acl_user->host.hostname && !host[0] ||
acl_user->host.hostname &&
- !my_strcasecmp(host,acl_user->host.hostname))
+ !my_strcasecmp(system_charset_info, host, acl_user->host.hostname))
{
acl_user->access=privileges;
if (mqh->bits & 1)
@@ -733,7 +733,8 @@ static void acl_update_db(const char *user, const char *host, const char *db,
!strcmp(user,acl_db->user))
{
if (!acl_db->host.hostname && !host[0] ||
- acl_db->host.hostname && !my_strcasecmp(host,acl_db->host.hostname))
+ acl_db->host.hostname &&
+ !my_strcasecmp(system_charset_info, host, acl_db->host.hostname))
{
if (!acl_db->db && !db[0] ||
acl_db->db && !strcmp(db,acl_db->db))
@@ -1010,7 +1011,7 @@ bool check_change_password(THD *thd, const char *host, const char *user)
}
if (!thd->slave_thread &&
(strcmp(thd->user,user) ||
- my_strcasecmp(system_charset_info, host,thd->host_or_ip)))
+ my_strcasecmp(system_charset_info, host, thd->host_or_ip)))
{
if (check_access(thd, UPDATE_ACL, "mysql",0,1))
return(1);
@@ -1662,7 +1663,6 @@ static GRANT_TABLE *table_hash_search(const char *host,const char* ip,
char helping [NAME_LEN*2+USERNAME_LENGTH+3];
uint len;
GRANT_TABLE *grant_table,*found=0;
- safe_mutex_assert_owner(&LOCK_grant);
len = (uint) (strmov(strmov(strmov(helping,user)+1,db)+1,tname)-helping)+ 1;
for (grant_table=(GRANT_TABLE*) hash_search(&hash_tables,(byte*) helping,
@@ -1672,7 +1672,8 @@ static GRANT_TABLE *table_hash_search(const char *host,const char* ip,
{
if (exact)
{
- if ((host && !my_strcasecmp(host,grant_table->host)) ||
+ if ((host &&
+ !my_strcasecmp(system_charset_info, host, grant_table->host)) ||
(ip && !strcmp(ip,grant_table->host)))
return grant_table;
}
@@ -1872,7 +1873,6 @@ static int replace_table_table(THD *thd, GRANT_TABLE *grant_table,
int error=0;
ulong store_table_rights, store_col_rights;
DBUG_ENTER("replace_table_table");
- safe_mutex_assert_owner(&LOCK_grant);
strxmov(grantor, thd->user, "@", thd->host_or_ip, NullS);
@@ -2734,7 +2734,7 @@ int mysql_show_grants(THD *thd,LEX_USER *lex_user)
if (!(host=acl_user->host.hostname))
host="%";
if (!strcmp(lex_user->user.str,user) &&
- !my_strcasecmp(lex_user->host.str,host))
+ !my_strcasecmp(system_charset_info, lex_user->host.str, host))
break;
}
if (counter == acl_users.elements)
@@ -2881,7 +2881,7 @@ int mysql_show_grants(THD *thd,LEX_USER *lex_user)
host="";
if (!strcmp(lex_user->user.str,user) &&
- !my_strcasecmp(lex_user->host.str,host))
+ !my_strcasecmp(system_charset_info, lex_user->host.str, host))
{
want_access=acl_db->access;
if (want_access)
@@ -2940,7 +2940,7 @@ int mysql_show_grants(THD *thd,LEX_USER *lex_user)
host="";
if (!strcmp(lex_user->user.str,user) &&
- !my_strcasecmp(lex_user->host.str,host))
+ !my_strcasecmp(system_charset_info, lex_user->host.str, host))
{
want_access=grant_table->privs;
if ((want_access | grant_table->cols) != 0)