Handle hostnames with upper-case letters
[webmin.git] / sendmail / save_rfile.cgi
1 #!/usr/local/bin/perl
2 # save_rfile.cgi
3 # Save an autoreply file
4
5 require (-r 'sendmail-lib.pl' ? './sendmail-lib.pl' :
6          -r 'qmail-lib.pl' ? './qmail-lib.pl' :
7                              './postfix-lib.pl');
8 &ReadParseMime();
9 if (substr($in{'file'}, 0, length($access{'apath'})) ne $access{'apath'}) {
10         &error(&text('rfile_efile', $in{'file'}));
11         }
12 $in{'replies_def'} || $in{'replies'} =~ /^\/\S+/ ||
13         &error($text{'rfile_ereplies'});
14 $in{'period_def'} || $in{'period'} =~ /^\d+$/ ||
15         &error($text{'rfile_eperiod'});
16 $in{'from_def'} || $in{'from'} =~ /\S/ ||
17         &error($text{'rfile_efrom'});
18
19 $in{'text'} =~ s/\r//g;
20 &open_lock_tempfile(FILE, ">$in{'file'}");
21 if (!$in{'replies_def'}) {
22         &print_tempfile(FILE, "Reply-Tracking: $in{'replies'}\n");
23         }
24 if (!$in{'period_def'}) {
25         &print_tempfile(FILE, "Reply-Period: $in{'period'}\n");
26         }
27 if ($in{'no_autoreply'}) {
28         &print_tempfile(FILE, "No-Autoreply: $in{'no_autoreply'}\n");
29         }
30 foreach $r (split(/\r?\n/, $in{'no_regexp'})) {
31         &print_tempfile(FILE, "No-Autoreply-Regexp: $r\n") if ($r =~ /\S/);
32         }
33 if (!$in{'from_def'}) {
34         &print_tempfile(FILE, "From: $in{'from'}\n");
35         }
36 &print_tempfile(FILE, $in{'text'});
37 &close_tempfile(FILE);
38 &system_logged("cp autoreply.pl $module_config_directory");
39 &redirect("edit_alias.cgi?name=$in{'name'}&num=$in{'num'}");
40