Handle hostnames with upper-case letters
[webmin.git] / pam / save_inc.cgi
1 #!/usr/local/bin/perl
2 # Update an include for a service
3
4 require './pam-lib.pl';
5 &ReadParse();
6 &error_setup($text{'inc_err'});
7 @pam = &get_pam_config();
8 $pam = $pam[$in{'idx'}];
9
10 &lock_file($pam->{'file'});
11 if ($in{'delete'}) {
12         # Deleting an include
13         $mod = $pam->{'mods'}->[$in{'midx'}];
14         &delete_module($pam->{'name'}, $mod);
15         }
16 else {
17         if ($in{'_type'}) {
18                 # Adding a new include
19                 $mod = { 'type' => $in{'_type'},
20                          'control' => 'include',
21                          'module' => $in{'inc'} };
22                 }
23         else {
24                 # Existing module entry
25                 $mod = $pam->{'mods'}->[$in{'midx'}];
26                 $mod->{'module'} = $in{'inc'};
27                 }
28
29         if ($in{'_type'}) {
30                 # Add the PAM include entry
31                 &create_module($pam->{'name'}, $mod);
32                 }
33         else {
34                 # Update the existing include
35                 &modify_module($pam->{'name'}, $mod);
36                 }
37         }
38 &unlock_file($pam->{'file'});
39 &webmin_log($in{'delete'} ? "delete" : $in{'_type'} ? "create" : "modify",
40             "inc", $pam->{'name'}, $mod);
41 &redirect("edit_pam.cgi?idx=$in{'idx'}");
42
43