mirror of
https://github.com/webmin/webmin.git
synced 2026-03-11 13:22:01 +00:00
28 lines
868 B
Perl
Executable File
28 lines
868 B
Perl
Executable File
#!/usr/local/bin/perl
|
|
# save_afile.cgi
|
|
# Save a filter file
|
|
|
|
require './qmail-lib.pl';
|
|
&ReadParseMime();
|
|
&error_setup($text{'ffile_err'});
|
|
my %access = &get_module_acl();
|
|
my $base = &simplify_path($access{'apath'} || $qmail_alias_dir);
|
|
my $file = &simplify_path($in{'file'});
|
|
&is_under_directory($base, $file) || &error(&text('ffile_efile', $in{'file'}));
|
|
$in{'file'} = $file;
|
|
|
|
for($i=0; defined($in{"field_$i"}); $i++) {
|
|
next if (!$in{"field_$i"});
|
|
$in{"match_$i"} || &error($text{'ffile_ematch'});
|
|
$in{"action_$i"} || &error($text{'ffile_eaction'});
|
|
push(@filter, $in{"what_$i"}." ".$in{"action_$i"}." ".
|
|
$in{"field_$i"}." ".$in{"match_$i"}."\n");
|
|
}
|
|
push(@filter, "2 ".$in{'other'}."\n") if ($in{'other'});
|
|
|
|
&open_lock_tempfile(FILE, ">$in{'file'}");
|
|
&print_tempfile(FILE, @filter);
|
|
&close_tempfile(FILE);
|
|
&redirect("edit_alias.cgi?name=$in{'name'}");
|
|
|