Private
Server IP : 195.201.23.43  /  Your IP : 3.129.39.144
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/usermin/proc/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/usermin/proc/run.cgi
#!/usr/bin/perl
# run.cgi
# Run a command, and maybe display it's output

require './proc-lib.pl';
&ReadParse();
$access{'run'} || &error($text{'run_ecannot'});

# Force run as user from ACL. This is done instead of calling
# switch_acl_uid, so that commands can be run with su
if (!$module_info{'usermin'}) {
	if ($access{'uid'} < 0) {
		$in{'user'} = $remote_user;
		}
	elsif ($access{'uid'}) {
		$in{'user'} = getpwuid($access{'uid'});
		}
	}

$in{'input'} =~ s/\r//g;
$cmd = $in{'cmd'};
if (&supports_users()) {
	defined(getpwnam($in{'user'})) || &error($text{'run_euser'});
	&can_edit_process($in{'user'}) || &error($text{'run_euser2'});
	if ($in{'user'} ne getpwuid($<)) {
		$cmd = &command_as_user($in{'user'}, 0, $cmd);
		}
	}

if ($in{'mode'}) {
	# fork and run..
	if (!($pid = fork())) {
		close(STDIN); close(STDOUT); close(STDERR);
		&open_execute_command(PROC, "($cmd)", 0);
		print PROC $in{'input'};
		close(PROC);
		exit;
		}
	&redirect("index_tree.cgi");
	}
else {
	# run and display output..
	&ui_print_unbuffered_header(undef, $text{'run_title'}, "");
	print "<p>\n";
	print &text('run_output', "<tt>".&html_escape($in{'cmd'})."</tt>"),"<p>\n";
	print "<pre>";
	$got = &safe_process_exec_logged($cmd, 0, 0,
					 STDOUT, $in{'input'}, 1);
	if (!$got) { print "<i>$text{'run_none'}</i>\n"; }
	print "</pre>\n";
	&ui_print_footer("", $text{'index'});
	}
&webmin_log("run", undef, undef, \%in);

Private