From 6db78a06b84bd3e5e29cca88d766fd6523d9831d Mon Sep 17 00:00:00 2001 From: Ilia Ross Date: Thu, 22 Aug 2024 01:11:04 +0300 Subject: [PATCH] Fix to implement a fix that allows the root user to lock itself out https://github.com/webmin/webmin/commit/125cc7b418e0fbe63e0a6162bd52dca0f23c8ac9#r145623195 --- mysql/edit_user.cgi | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/mysql/edit_user.cgi b/mysql/edit_user.cgi index 78c331be0..afed73cd5 100755 --- a/mysql/edit_user.cgi +++ b/mysql/edit_user.cgi @@ -57,8 +57,6 @@ print &ui_table_row($text{'user_user'}, $text{'user_all'})); # Password field -my $master_login_local = (($u->[1] eq ($config{'login'} || "root")) && - $u->[0] eq 'localhost'); my $epassfield1 = $fieldmap{'Password'}; my $epassfield2 = $fieldmap{'authentication_string'}; my $plugin = $fieldmap{'plugin'}; @@ -67,13 +65,12 @@ my $nopass = ((!defined($epassfield1) || !$u->[$epassfield1]) && (!defined($epassfield2) || !$u->[$epassfield2])); my $lock_supported = exists($fieldmap{'account_locked'}) && defined($u->[$fieldmap{'account_locked'}]); -$lock_supported = 0 if ($master_login_local); my $locked = $u->[$fieldmap{'account_locked'}] eq 'Y'; print &ui_table_row($text{'user_pass'}, &ui_radio("mysqlpass_mode", $in{'new'} ? 0 : $lock_supported && $locked ? 4 : $nopass && !$unixsocket ? 2 : 1, - [ (($lock_supported && $locked) || $master_login_local) ? () : [ 2, $text{'user_none'} ], + [ ($lock_supported && $locked) ? () : [ 2, $text{'user_none'} ], $in{'new'} ? ( ) : ($lock_supported && $locked) || $nopass && !$unixsocket ? () : ( [ 1, $text{'user_leave'} ] ), ($in{'new'} || !$lock_supported) ? ( ) : ( [ 4, $text{'user_locked'} ] ), [ 0, $text{'user_set'} ] ])." ".