📄 save_user.cgi
字号:
#!/usr/local/bin/perl# save_user.cgi# Modify or create a webmin user$| = 1;require './acl-lib.pl';&ReadParse();&error_setup($text{'save_err'});@ulist = &list_users();$in{'name'} =~ /^[A-z0-9\-\_\.]+$/ || &error(&text('save_ename', $in{'name'}));if (!$in{'old'} || $in{'old'} ne $in{'name'}) { foreach $u (@ulist) { if ($u->{'name'} eq $in{'name'}) { &error(&text('save_edup', $in{'name'})); } } }@mods = split(/\0/, $in{'mod'});if ($ENV{'REMOTE_USER'} eq $in{'old'} && &indexof("acl", @mods) == -1) { &error($text{'save_edeny'}); }$salt = chr(int(rand(26))+65).chr(int(rand(26))+65);$user{'name'} = $in{'name'};$user{'modules'} = \@mods;$user{'lang'} = $in{'lang_def'} ? undef : $in{'lang'};if ($in{'pass_def'} == 0) { $salt = chr(int(rand(26))+65).chr(int(rand(26))+65); $user{'pass'} = crypt($in{'pass'}, $salt); $user{'sync'} = 0; }elsif ($in{'pass_def'} == 1) { $user{'pass'} = $in{'oldpass'}; $user{'sync'} = 0; }else { &foreign_require("useradmin", "user-lib.pl"); foreach $uu (&foreign_call("useradmin", "list_users")) { $user{'pass'} = $uu->{'pass'} if ($uu->{'user'} eq $in{'name'}); } defined($user{'pass'}) || &error(&text('save_eunix', $in{'name'})); $user{'sync'} = 1; }if ($in{'old'}) { &modify_user($in{'old'}, \%user); }else { &create_user(\%user, $in{'clone'}); }&restart_miniserv();&redirect("");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -