Handle hostnames with upper-case letters
[webmin.git] / htpasswd-file / useradmin_update.pl
1
2 do 'htpasswd-file-lib.pl';
3
4 sub useradmin_create_user
5 {
6 return if (!$config{'file'});
7 local $users = &list_users();
8 local ($clash) = grep { $_->{'user'} eq $_[0]->{'user'} } @$users;
9 return if ($clash);
10 local $user = { 'user' => $_[0]->{'user'},
11                 'enabled' => 1 };
12 if ($_[0]->{'passmode'} == 0) {
13         $user->{'pass'} = "";
14         }
15 elsif ($_[0]->{'passmode'} == 1) {
16         $user->{'pass'} = "*LK*";
17         }
18 elsif ($_[0]->{'passmode'} == 2) {
19         $user->{'pass'} = $_[0]->{'pass'};
20         }
21 else {
22         $user->{'pass'} = &encrypt_password($_[0]->{'plainpass'},
23                                             undef, $config{'md5'});
24         }
25 &create_user($user);
26 }
27
28 sub useradmin_modify_user
29 {
30 return if (!$config{'file'});
31 local $users = &list_users();
32 local ($user) = grep { $_->{'user'} eq $_[0]->{'olduser'} } @$users;
33 return if (!$user);
34 $user->{'user'} = $_[0]->{'user'};
35 if ($_[0]->{'passmode'} == 0) {
36         $user->{'pass'} = "";
37         }
38 elsif ($_[0]->{'passmode'} == 1) {
39         $user->{'pass'} = "*LK*";
40         }
41 elsif ($_[0]->{'passmode'} == 2) {
42         $user->{'pass'} = $_[0]->{'pass'};
43         }
44 elsif ($_[0]->{'passmode'} == 3) {
45         $user->{'pass'} = &encrypt_password($_[0]->{'plainpass'},
46                                             undef, $config{'md5'});
47         }
48 &modify_user($user);
49 }
50
51 sub useradmin_delete_user
52 {
53 return if (!$config{'file'});
54 local $users = &list_users();
55 local ($user) = grep { $_->{'user'} eq $_[0]->{'user'} } @$users;
56 return if (!$user);
57 &delete_user($user);
58 }
59