diff options
author | Ashish Agarwal <ashish.y.agarwal@oracle.com> | 2013-08-23 09:07:09 +0530 |
---|---|---|
committer | Ashish Agarwal <ashish.y.agarwal@oracle.com> | 2013-08-23 09:07:09 +0530 |
commit | 292aa926c15f31936ee14bf11dd791847fd7b74d (patch) | |
tree | 01a2e2f69168201021668f8d6144a6aa701c61ad /libmysqld | |
parent | 6613734b1abd5b6572963c14034bb64c6d923894 (diff) | |
parent | e879caf845f3f1209eb2065fc4463a293ad9518c (diff) | |
download | mariadb-git-292aa926c15f31936ee14bf11dd791847fd7b74d.tar.gz |
WL#7076: Backporting wl6715 to support both formats
in 5.5, 5.6, 5.7.
Diffstat (limited to 'libmysqld')
-rw-r--r-- | libmysqld/lib_sql.cc | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/libmysqld/lib_sql.cc b/libmysqld/lib_sql.cc index 2de7217f10b..70cbe6080d7 100644 --- a/libmysqld/lib_sql.cc +++ b/libmysqld/lib_sql.cc @@ -699,7 +699,8 @@ int check_embedded_connection(MYSQL *mysql, const char *db) thd_init_client_charset(thd, mysql->charset->number); thd->update_charset(); Security_context *sctx= thd->security_ctx; - sctx->host_or_ip= sctx->host= (char*) my_localhost; + sctx->set_host(my_localhost); + sctx->host_or_ip= sctx->get_host()->ptr(); strmake(sctx->priv_host, (char*) my_localhost, MAX_HOSTNAME-1); strmake(sctx->priv_user, mysql->user, USERNAME_LENGTH-1); sctx->user= my_strdup(mysql->user, MYF(0)); @@ -727,14 +728,14 @@ int check_embedded_connection(MYSQL *mysql, const char *db) if (mysql->options.client_ip) { - sctx->host= my_strdup(mysql->options.client_ip, MYF(0)); - sctx->ip= my_strdup(sctx->host, MYF(0)); + sctx->set_host(my_strdup(mysql->options.client_ip, MYF(0))); + sctx->set_ip(my_strdup(sctx->get_host()->ptr(), MYF(0))); } else - sctx->host= (char*)my_localhost; - sctx->host_or_ip= sctx->host; + sctx->set_host((char*)my_localhost); + sctx->host_or_ip= sctx->host->ptr(); - if (acl_check_host(sctx->host, sctx->ip)) + if (acl_check_host(sctx->get_host()->ptr(), sctx->get_ip()->ptr())) goto err; /* construct a COM_CHANGE_USER packet */ |