diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-03-06 19:34:22 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-03-10 18:21:27 +0100 |
commit | 0877eff4012ab1184112814a3492d23bf266f848 (patch) | |
tree | 1b34a6bbbd9c1e2d505a0806b85bdc521620083a /sql/sql_class.cc | |
parent | 6305533de2fd38d43c149d4d7c847f65d68205c7 (diff) | |
download | mariadb-git-0877eff4012ab1184112814a3492d23bf266f848.tar.gz |
thd_rnd service
Diffstat (limited to 'sql/sql_class.cc')
-rw-r--r-- | sql/sql_class.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc index fb58519b816..3a7e501c6c2 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -4475,6 +4475,28 @@ extern "C" int thd_is_connected(MYSQL_THD thd) } +extern "C" double thd_rnd(MYSQL_THD thd) +{ + return my_rnd(&thd->rand); +} + + +/** + Generate string of printable random characters of requested length. + + @param to[out] Buffer for generation; must be at least length+1 bytes + long; result string is always null-terminated + @param length[in] How many random characters to put in buffer +*/ +extern "C" void thd_create_random_password(MYSQL_THD thd, + char *to, size_t length) +{ + for (char *end= to + length; to < end; to++) + *to= (char) (my_rnd(&thd->rand)*94 + 33); + *to= '\0'; +} + + #ifdef INNODB_COMPATIBILITY_HOOKS extern "C" const struct charset_info_st *thd_charset(MYSQL_THD thd) { |