#!/usr/local/bin/perl # edit_anon.cgi # Display anonymous FTP options require './wuftpd-lib.pl'; &ui_print_header(undef, $text{'anon_title'}, "", "anon"); $conf = &get_ftpaccess(); @class = &find_value("class", $conf); if (!getpwnam("ftp")) { print "$text{'anon_eftp'}

\n"; } print "

\n"; print "\n"; print "\n"; print "
$text{'anon_header'}
\n"; # Display anonymous-root options @root = ( &find_value('anonymous-root', $conf), [ ] ); print "\n"; print "\n"; # Display guest-root options @root = ( &find_value('guest-root', $conf), [ ] ); print "\n"; print "\n"; print "\n"; # Display autogroup options @auto = ( &find_value('autogroup', $conf), [ ] ); print "\n"; print "\n"; print "\n"; # Display passwd-check field $p = &find_value('passwd-check', $conf); print "\n"; print "\n"; printf "\n", join(" ", map { $_->[0] } &find_value('deny-email', $conf)); print "
$text{'anon_root'}\n"; print "\n", "\n"; $i = 0; foreach $r (@root) { print "\n"; printf "\n", $r->[0], &file_chooser_button("dir_$i", 1); print "\n"; $i++; } print "
$text{'anon_dir'}$text{'anon_class'}
%s
$text{'anon_groot'}\n"; print "\n", "\n"; $i = 0; foreach $r (@root) { print "\n"; printf "\n", $r->[0], &file_chooser_button("gdir_$i", 1); printf "\n", join(" ", @$r[1..@$r-1]), &user_chooser_button("uids_$i", 1); print "\n"; $i++; } print "
$text{'anon_dir'}$text{'anon_uids'}
%s %s

$text{'anon_auto'}\n"; print "\n", "\n"; $i = 0; foreach $a (@auto) { local %aclass; map { $aclass{$_}++ } @$a[1..@$a-1]; print "\n"; print "\n"; print "\n"; $i++; } print "
$text{'anon_group'}$text{'anon_classes'}
", &group_chooser_button("agroup_$i"),"\n"; foreach $c (@class) { printf " %s\n", $aclass{$c->[0]} ? 'checked' : '', $c->[0], $c->[0]; } print "

$text{'anon_passwd'} \n"; printf " %s\n", $p ? '' : 'checked', $text{'default'}; printf "\n", $p ? 'checked' : ''; print "
$text{'anon_email'}
\n"; print "
\n"; &ui_print_footer("", $text{'index_return'});