/usr/share/usermin
NameSizeModeActions
at/-0755rm
authentic-theme/-0755rm
blue-theme/-0755rm
changepass/-0755rm
chfn/-0755rm
commands/-0755rm
cron/-0755rm
cshrc/-0755rm
fetchmail/-0755rm
filemin/-0755rm
filter/-0755rm
forward/-0755rm
gnupg/-0755rm
gray-theme/-0755rm
htaccess/-0755rm
htaccess-htpasswd/-0755rm
images/-0755rm
lang/-0755rm
language/-0755rm
mailbox/-0755rm
mailcap/-0755rm
man/-0755rm
mysql/-0755rm
plan/-0755rm
postgresql/-0755rm
proc/-0755rm
procmail/-0755rm
quota/-0755rm
schedule/-0755rm
shell/-0755rm
spam/-0755rm
ssh/-0755rm
theme/-0755rm
tunnel/-0755rm
twofactor/-0755rm
ulang/-0755rm
unauthenticated/-0755rm
updown/-0755rm
usermount/-0755rm
vendor_perl/-0755rm
xterm/-0755rm
acl_security.pl29590755editdlrm
chooser.cgi73870755editdlrm
config-aix2270644editdlrm
config-cobalt-linux2640644editdlrm
config-coherent-linux2640644editdlrm
config-corel-linux2640644editdlrm
config-debian-linux2640644editdlrm
config-freebsd2560644editdlrm
config-generic-linux2640644editdlrm
config-gentoo-linux2640644editdlrm
config-hpux2430644editdlrm
config-irix2840644editdlrm
config-lib.pl121200755editdlrm
config-macos2600644editdlrm
config-mandrake-linux2780644editdlrm
config-msc-linux2640644editdlrm
config-netbsd2830644editdlrm
config-open-linux2640644editdlrm
config-openbsd2410644editdlrm
config-openmamba-linux2640644editdlrm
config-openserver2360644editdlrm
config-osf12660644editdlrm
config-redhat-linux2640644editdlrm
config-slackware-linux2800644editdlrm
config-sol-linux2640644editdlrm
config-solaris4170644editdlrm
config-suse-linux2640644editdlrm
config-trustix-linux2640644editdlrm
config-turbo-linux2640644editdlrm
config-united-linux2640644editdlrm
config-unixware2860644editdlrm
copyconfig.pl44360755editdlrm
date_chooser.cgi22410755editdlrm
deb-name80644editdlrm
defaultacl980644editdlrm
defaulttheme160644editdlrm
entities_map.txt15010644editdlrm
favicon.ico150860644editdlrm
feedback.cgi65190755editdlrm
feedback_form.cgi35330755editdlrm
group_chooser.cgi76900755editdlrm
help.cgi23130755editdlrm
html-editor-lib.pl181470644editdlrm
index.cgi57810755editdlrm
install-module.pl13040755editdlrm
install-type40644editdlrm
javascript-lib.pl150420755editdlrm
lang_list.txt25700644editdlrm
LICENCE15160644editdlrm
LICENCE.ja16540644editdlrm
maketemp.pl4240755editdlrm
mime.types127130644editdlrm
miniserv.pem29690644editdlrm
miniserv.pl1894390755editdlrm
newmods.pl12800755editdlrm
oschooser.pl46550755editdlrm
os_list.txt358250644editdlrm
pam_login.cgi44290755editdlrm
password_change.cgi71920755editdlrm
password_form.cgi13270755editdlrm
perlpath.pl5710755editdlrm
README19720644editdlrm
robots.txt260644editdlrm
session_login.cgi52300755editdlrm
setup.sh268100755editdlrm
switch_user.cgi4040755editdlrm
thirdparty.pl17740755editdlrm
uconfig.cgi14280755editdlrm
uconfig_save.cgi14900755editdlrm
ui-lib.pl1159450755editdlrm
update-from-repo.sh151240755editdlrm
updateboot.pl24290755editdlrm
uptracker.cgi29560755editdlrm
usermin-init19270755editdlrm
usermin-pam1010644editdlrm
usermin-pam-osx2430644editdlrm
usermin-systemd4430644editdlrm
user_chooser.cgi75710755editdlrm
version60644editdlrm
web-lib-funcs.pl4051600755editdlrm
web-lib.pl9070755editdlrm
webmin-search-lib.pl96970755editdlrm
WebminCore.pm88730644editdlrm
webmin_search.cgi26970755editdlrm
Edit: /usr/share/usermin/group_chooser.cgi (7690B)
#!/usr/bin/perl # group_chooser.cgi # This CGI generated the HTML for choosing a group or list of groups. BEGIN { push(@INC, "."); }; use WebminCore; &init_config(); if (&get_product_name() eq 'usermin') { &switch_to_remote_user(); } &ReadParse(undef, undef, 2); %access = &get_module_acl(); # Build list of primary groups setpwent(); while(@uinfo = getpwent()) { push(@{$members{$uinfo[3]}}, $uinfo[0]); } endpwent() if ($gconfig{'os_type'} ne 'hpux'); if ($in{'multi'}) { # selecting multiple groups. if ($in{'frame'} == 0) { # base frame &PrintHeader(); print "\n"; print "$text{'groups_title1'}\n"; print "\n"; print "\n"; print "\n"; print " \n"; print " \n"; print "\n"; print "\n"; } elsif ($in{'frame'} == 1) { # list of all groups to choose from &popup_header(); print "\n"; print ""; print "$text{'groups_all'}\n"; print "\n"; my $cnt = 0; foreach $u (&get_groups_list()) { if ($in{'group'} eq $u->[0]) { print "\n"; } else { print "\n"; } $u->[0] =~ s/\\/\\\\/g; print "\n"; print "\n"; $cnt++; } print "
[3], \"'\")]}\")'>@{[&html_escape($u->[0])]}@{[&html_escape($u->[3])]}
\n"; if ( $cnt >= 10 ) { print ""; print ""; } &popup_footer(); } elsif ($in{'frame'} == 2) { # show chosen groups &popup_header(); print "$text{'groups_sel'}\n"; print <<'EOF';
EOF &popup_footer(); } elsif ($in{'frame'} == 3) { # output OK and Cancel buttons &popup_header(); print "\n"; print "
\n"; print "\n"; print "\n"; print "  \n"; print "
\n"; &popup_footer(); } } else { # selecting just one group .. display a list of all groups to # choose from &popup_header($text{'groups_title2'}); print "\n"; print "";; print "\n"; my $cnt = 0; foreach $u (&get_groups_list()) { if ($in{'group'} eq $u->[0]) { print "\n"; } else { print "\n"; } print "\n"; print "\n"; $cnt++; } print "
@{[&html_escape($u->[0])]}@{[&html_escape($u->[3])]}
\n"; if ( $cnt >= 10 ) { print ""; print ""; } &popup_footer(); } sub get_groups_list { local(@ginfo, @groups, %gcan, %found); if ($access{'gedit_mode'} == 2 || $access{'gedit_mode'} == 3) { map { $gcan{$_}++ } split(/\s+/, $access{'gedit'}); } setgrent(); local %doneg; while(@ginfo = getgrent()) { next if ($doneg{$ginfo[0]}++); @mems = &unique( split(/ /, $ginfo[3]), @{$members{$ginfo[2]}} ); if (@mems > 3) { @mems = (@mems[0..1], "..."); } $ginfo[3] = join(' ', @mems); if ($access{'gedit_mode'} == 0 || $access{'gedit_mode'} == 2 && $gcan{$ginfo[0]} || $access{'gedit_mode'} == 3 && !$gcan{$ginfo[0]} || $access{'gedit_mode'} == 4 && (!$access{'gedit'} || $ginfo[2] >= $access{'gedit'}) && (!$access{'gedit2'} || $ginfo[2] <= $access{'gedit2'})) { push(@groups, [ @ginfo ]) if (!$found{$ginfo[0]}++); } } endgrent() if ($gconfig{'os_type'} ne 'hpux'); return sort { $a->[0] cmp $b->[0] } @groups; }