| Server IP : 127.0.0.1 / Your IP : 216.73.216.109 Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10 System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64 User : SERVERWEB ( 0) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/cygwin64/home/SERVERWEB/webmin-2.105/at/ |
Upload File : |
#!/usr/bin/perl
# Delete or run an at job
use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
our (%text, %in);
require './at-lib.pl';
&ReadParse();
&foreign_require("proc", "proc-lib.pl");
my @jobs = &list_atjobs();
my ($job) = grep { $_->{'id'} eq $in{'id'} } @jobs;
$job || &error($text{'delete_egone'});
if ($in{'run'}) {
# Run the command and show output
&ui_print_header(undef, $text{'run_title'}, "");
# Create temp script for job
my $temp = &transname();
my $TEMP;
&open_tempfile($TEMP, ">$temp");
&print_tempfile($TEMP, $job->{'cmd'});
&close_tempfile($TEMP);
chmod(0755, $temp);
print "<p>\n";
print &text('run_output'),"<p>\n";
my @uinfo = getpwnam($job->{'user'});
print "<pre>";
&additional_log('exec', undef, $job->{'cmd'});
my $got = &proc::safe_process_exec($temp, $uinfo[2], $uinfo[3],
*STDOUT, undef, 1);
if (!$got) { print "<i>$text{'run_none'}</i>\n"; }
unlink($temp);
print "</pre>\n";
&webmin_log("exec", "job", $job->{'user'}, $job);
&ui_print_footer("", $text{'index_return'});
}
else {
# Just delete the at job
&error_setup($text{'delete_err'});
my %access = &get_module_acl();
&can_edit_user(\%access, $job->{'user'}) || &error($text{'edit_ecannot'});
&delete_atjob($in{'id'});
&webmin_log("delete", "job", $job->{'user'}, $job);
&redirect("");
}