Fix sending of forgot password link to non-root users
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled

https://github.com/webmin/webmin/issues/2826
This commit is contained in:
Jamie Cameron
2026-08-29 20:17:23 -07:00
parent 19206d485a
commit 5a536022ea
3 changed files with 11 additions and 4 deletions

View File

@@ -21,10 +21,15 @@ print &ui_form_start("forgot_send.cgi", "post");
print &ui_hidden("user_acc", $u->{'name'});
print &ui_table_start($text{'forgot_header'}, undef, 2);
print &ui_table_row($text{'forgot_user'},
$u->{'name'} eq "root"
? &ui_textbox("user", $u->{'name'}, 12)
: "<tt>".$u->{'name'}."</tt>");
if ($u->{'name'} eq "root") {
print &ui_table_row($text{'forgot_sudouser'},
&ui_textbox("user", $u->{'name'}, 12));
}
else {
print &ui_table_row($text{'forgot_user'},
"<tt>".$u->{'name'}."</tt>");
print &ui_hidden("user", $u->{'name'});
}
print &ui_table_row($text{'forgot_email'},
&ui_opt_textbox("email", $u->{'email'}, 60,

View File

@@ -19,6 +19,7 @@ $in{'email_def'} || $in{'email'} =~ /^\S+\@\S+$/ ||
&error($text{'forgot_eemail'});
my $unixuser;
if ($in{'user'} ne $in{'user_acc'}) {
# Find the sudo-capable user whose password is being reset
&foreign_require("useradmin");
my ($uinfo) = grep { $_->{'user'} eq $in{'user'} }
&useradmin::list_users();

View File

@@ -532,5 +532,6 @@ forgot_link=The link below can be used to reset the Webmin password for $1 for t
forgot_enosudo=Sudo is not available on this system!
forgot_ecansudo=The user entered does not have sudo permissions
forgot_eunix=The sudo-capable user entered does not exist!
forgot_sudouser=Reset password for sudo-capable user
__norefs=1