Handle hostnames with upper-case letters
[webmin.git] / sendmail / delete_generics.cgi
1 #!/usr/local/bin/perl
2 # Delete several generics
3
4 require './sendmail-lib.pl';
5 require './generics-lib.pl';
6 &ReadParse();
7 &error_setup($text{'gdelete_err'});
8 $conf = &get_sendmailcf();
9 $vfile = &generics_file($conf);
10 ($vdbm, $vdbmtype) = &generics_dbm($conf);
11
12 # Find and validate
13 @d = split(/\0/, $in{'d'});
14 @d || &error($text{'adelete_enone'});
15 @virts = &list_generics($vfile);
16 foreach $d (@d) {
17         ($virt) = grep { $_->{'from'} eq $d } @virts;
18         if ($virt) {
19                 &can_edit_generic($virt) ||
20                         &error(&text('gdelete_ecannot', $d));
21                 push(@delvirts, $virt);
22                 }
23         }
24
25 # Delete the aliases
26 &lock_file($vfile);
27 foreach $virt (@delvirts) {
28         &delete_generic($virt, $vfile, $vdbm, $vdbmtype);
29         }
30 &unlock_file($vfile);
31
32 &webmin_log("delete", "generics", scalar(@delvirts));
33 &redirect("list_generics.cgi");
34