Handle hostnames with upper-case letters
[webmin.git] / pam / pam_listfile.so.pl
1 # display args for pam_listfile.so
2
3 # display_args(&service, &module, &args)
4 sub display_module_args
5 {
6 print &ui_table_row($text{'listfile_item'},
7         &ui_select("item", $_[2]->{'item'},
8                 [ map { [ $_, $text{'listfile_item_'.$_} ] }
9                       ('user', 'tty', 'rhost', 'ruser', 'group', 'shell') ]));
10
11 print &ui_table_row($text{'listfile_sense'},
12         &ui_radio("sense", $_[2]->{'sense'} || "deny",
13                 [ [ "allow", $text{'listfile_succeed'} ],
14                   [ "deny", $text{'listfile_fail'} ] ]));
15
16 print &ui_table_row($text{'listfile_file'},
17         &ui_textbox("file", $_[2]->{'file'}, 50)." ".
18         &file_chooser_button("file"), 3);
19
20 print &ui_table_row($text{'listfile_onerr'},
21         &ui_radio("onerr", $_[2]->{'onerr'} || "succeed",
22                   [ [ "fail", $text{'listfile_fail'} ],
23                     [ "success", $text{'listfile_succeed'} ] ]));
24
25 local $mode = $_[2]->{'apply'} =~ /^\@/ ? 2 :
26               $_[2]->{'apply'} ? 1 : 0;
27 print &ui_table_row($text{'listfile_apply'},
28     &ui_radio("apply_mode", $mode,
29         [ [ 0, $text{'listfile_all'} ],
30           [ 1, $text{'listfile_user'}." ".
31             &unix_user_input("apply_user", $mode == 1 ? $_[2]->{'apply'} : "")],
32           [ 2, $text{'listfile_group'}." ".
33             &unix_group_input("apply_group", $mode == 2 ?
34                         substr($_[2]->{'apply'}, 1) : "") ] ]), 3);
35 }
36
37 # parse_module_args(&service, &module, &args)
38 sub parse_module_args
39 {
40 $_[2]->{'item'} = $in{'item'};
41 $_[2]->{'sense'} = $in{'sense'};
42 $_[2]->{'file'} = $in{'file'};
43 $_[2]->{'onerr'} = $in{'onerr'};
44 if ($in{'apply_mode'} == 0) {
45         delete($_[2]->{'apply'});
46         }
47 elsif ($in{'apply_mode'} == 1) {
48         $_[2]->{'apply'} = $in{'apply_user'};
49         }
50 else {
51         $_[2]->{'apply'} = '@'.$in{'apply_group'};
52         }
53 }