3 # Save miscellaneous options
5 require './wuftpd-lib.pl';
6 &error_setup($text{'misc_err'});
8 &lock_file($config{'ftpaccess'});
9 $conf = &get_ftpaccess();
12 foreach $l ('lslong', 'lsshort', 'lsplain') {
14 &save_directive($conf, $l, [ ]);
16 elsif ($in{$l} !~ /\S/) {
17 &error($text{"misc_e$l"});
20 &save_directive($conf, $l, [ { 'name' => $l,
21 'values' => [ $in{$l} ] } ] );
25 # Save shutdown command
26 if ($in{'shutdown_def'}) {
27 &save_directive($conf, 'shutdown', [ ]);
29 elsif ($in{'shutdown'} !~ /\S/) {
30 &error($text{'misc_eshutdown'});
33 &save_directive($conf, 'shutdown',
34 [ { 'name' => 'shutdown',
35 'values' => [ $in{'shutdown'} ] } ] );
39 for($i=0; defined($ndelta = $in{"ndelta_$i"}); $i++) {
40 next if ($ndelta eq '');
41 $ndelta =~ /^[\-0-9]+$/ || &error(&text('misc_edelta', $ndelta));
42 push(@nice, { 'name' => 'nice',
43 'values' => [ $ndelta, $in{"nclass_$i"} ] } );
45 &save_directive($conf, 'nice', \@nice);
47 # Save defumask options
48 for($i=0; defined($umask = $in{"umask_$i"}); $i++) {
49 next if ($umask eq '');
50 $umask =~ /^[0-9]+$/ || &error(&text('misc_eumask', $umask));
51 push(@umask, { 'name' => 'defumask',
52 'values' => [ $umask, $in{"uclass_$i"} ] } );
54 &save_directive($conf, 'defumask', \@umask);
57 &unlock_file($config{'ftpaccess'});
58 &webmin_log("misc", undef, undef, \%in);