mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
check_scramble_323 shuold ensure that the scramble has the correct length
This commit is contained in:
@@ -218,6 +218,8 @@ check_scramble_323(const char *scrambled, const char *message,
|
|||||||
to=buff;
|
to=buff;
|
||||||
for (pos=scrambled ; *pos ; pos++)
|
for (pos=scrambled ; *pos ; pos++)
|
||||||
*to++=(char) (floor(my_rnd(&rand_st)*31)+64);
|
*to++=(char) (floor(my_rnd(&rand_st)*31)+64);
|
||||||
|
if (pos-scrambled != SCRAMBLE_LENGTH_323)
|
||||||
|
return 1;
|
||||||
extra=(char) (floor(my_rnd(&rand_st)*31));
|
extra=(char) (floor(my_rnd(&rand_st)*31));
|
||||||
to=buff;
|
to=buff;
|
||||||
while (*scrambled)
|
while (*scrambled)
|
||||||
|
@@ -629,8 +629,8 @@ int acl_getroot(THD *thd, USER_RESOURCES *mqh,
|
|||||||
if (passwd_len == acl_user_tmp->salt_len)
|
if (passwd_len == acl_user_tmp->salt_len)
|
||||||
{
|
{
|
||||||
if (acl_user_tmp->salt_len == 0 ||
|
if (acl_user_tmp->salt_len == 0 ||
|
||||||
acl_user_tmp->salt_len == SCRAMBLE_LENGTH &&
|
(acl_user_tmp->salt_len == SCRAMBLE_LENGTH &&
|
||||||
check_scramble(passwd, thd->scramble, acl_user_tmp->salt) == 0 ||
|
check_scramble(passwd, thd->scramble, acl_user_tmp->salt) == 0) ||
|
||||||
check_scramble_323(passwd, thd->scramble,
|
check_scramble_323(passwd, thd->scramble,
|
||||||
(ulong *) acl_user_tmp->salt) == 0)
|
(ulong *) acl_user_tmp->salt) == 0)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user