php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /usr/libexec/webmin/virtual-server/ |
files >> //usr/libexec/webmin/virtual-server/admins-lib.pl |
# Functions for managing extra admins # list_extra_admins(&domain) # Returns a list of extra admins for some domain sub list_extra_admins { local ($d) = @_; local @rv; opendir(DIR, "$extra_admins_dir/$d->{'id'}"); foreach my $f (readdir(DIR)) { if ($f =~ /^(.*)\.admin$/) { local %admin; &read_file("$extra_admins_dir/$d->{'id'}/$f", \%admin); $admin{'file'} = "$extra_admins_dir/$d->{'id'}/$f"; push(@rv, \%admin); } } closedir(DIR); return @rv; } # create_extra_admin(&admin, &domain) # Create an extra admin account for a domain sub create_extra_admin { local ($admin, $d) = @_; mkdir($extra_admins_dir, 0700); mkdir("$extra_admins_dir/$d->{'id'}", 0700); $admin->{'file'} = "$extra_admins_dir/$d->{'id'}/$admin->{'name'}.admin"; &write_file($admin->{'file'}, $admin); &push_all_print(); &set_all_null_print(); &refresh_webmin_user($d); &run_post_actions(); &pop_all_print(); } # delete_extra_admin(&admin, &domain) # Remove an extra admin account sub delete_extra_admin { local ($admin, $d) = @_; unlink($admin->{'file'}); &push_all_print(); &set_all_null_print(); &refresh_webmin_user($d); &run_post_actions(); &pop_all_print(); } # modify_extra_admin(&admin, &old, &domain) # Update an extra admin sub modify_extra_admin { local ($admin, $old, $d) = @_; if ($old->{'name'} ne $admin->{'name'}) { unlink($old->{'file'}); $admin->{'file'} = "$extra_admins_dir/$d->{'id'}/$admin->{'name'}.admin"; } &write_file($admin->{'file'}, $admin); &push_all_print(); &set_all_null_print(); &refresh_webmin_user($d); &run_post_actions(); &pop_all_print(); } 1;y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`