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