Server IP : 195.201.23.43 / Your IP : 3.148.109.137 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/virtual-server/ |
Upload File : |
#!/usr/bin/perl # Switch the login to a domain's admin require './virtual-server-lib.pl'; &ReadParse(); $d = &get_domain($in{'dom'}); &can_edit_domain($d) || &error($text{'edit_ecannot'}); &can_switch_user($d, $in{'admin'}) || &error($text{'switch_ecannot'}); if ($in{'admin'}) { # Switch is to an extra admin .. make sure he exists &can_edit_admins($d) || &error($text{'admins_ecannot'}); @admins = &list_extra_admins($d); ($admin) = grep { $_->{'name'} eq $in{'admin'} } @admins; $admin || &error($text{'switch_eadmin'}); $user = $admin->{'name'}; } else { # To domain owner $user = $d->{'user'}; } &require_acl(); &get_miniserv_config(\%miniserv); &acl::open_session_db(\%miniserv); $skey = defined(&acl::session_db_key) ? &acl::session_db_key($main::session_id) : $main::session_id; ($olduser, $oldtime) = split(/\s+/, $acl::sessiondb{$skey}); $olduser || &error($acl::text{'switch_eold'}); $acl::sessiondb{$skey} = "$user $oldtime $ENV{'REMOTE_ADDR'}"; dbmclose(%acl::sessiondb); &reload_miniserv(); &run_post_actions_silently(); if ($in{'admin'}) { &webmin_log("switch", "admin", $user); } else { &webmin_log("switch", "domain", $d->{'dom'}, $d); } &redirect("/");Private