X7ROOT File Manager
Current Path:
/usr/libexec/webmin/at
usr
/
libexec
/
webmin
/
at
/
📁
..
📄
CHANGELOG
(702 B)
📄
acl_security.pl
(1.17 KB)
📄
at-lib.pl
(2.89 KB)
📄
backup_config.pl
(892 B)
📄
bootup.cgi
(356 B)
📄
cgi_args.pl
(332 B)
📄
config-coherent-linux
(84 B)
📄
config-corel-linux
(88 B)
📄
config-debian-linux
(88 B)
📄
config-debian-linux-3.0-ALL
(45 B)
📄
config-freebsd
(37 B)
📄
config-generic-linux
(88 B)
📄
config-gentoo-linux
(97 B)
📄
config-irix
(44 B)
📄
config-macos
(35 B)
📄
config-mandrake-linux
(84 B)
📄
config-msc-linux
(84 B)
📄
config-netbsd
(37 B)
📄
config-open-linux
(89 B)
📄
config-openbsd
(37 B)
📄
config-openmamba-linux
(84 B)
📄
config-openserver
(50 B)
📄
config-redhat-linux
(84 B)
📄
config-slackware-linux
(88 B)
📄
config-sol-linux
(88 B)
📄
config-solaris
(47 B)
📄
config-suse-linux
(88 B)
📄
config-syno-linux
(88 B)
📄
config-trustix-linux
(84 B)
📄
config-turbo-linux
(84 B)
📄
config-united-linux
(88 B)
📄
config.info
(219 B)
📄
config.info.bg
(347 B)
📄
config.info.ca
(264 B)
📄
config.info.cs
(241 B)
📄
config.info.de
(293 B)
📄
config.info.es
(262 B)
📄
config.info.fr
(273 B)
📄
config.info.hr
(0 B)
📄
config.info.hu
(257 B)
📄
config.info.it
(251 B)
📄
config.info.ms
(241 B)
📄
config.info.nl
(242 B)
📄
config.info.no
(239 B)
📄
config.info.pl
(206 B)
📄
config.info.pt_BR
(154 B)
📄
config.info.ru
(333 B)
📄
config.info.sk
(302 B)
📄
config.info.sv
(0 B)
📄
config.info.tr
(139 B)
📄
config.info.uk
(164 B)
📄
config.info.zh_TW
(136 B)
📄
create_job.cgi
(1.07 KB)
📄
defaultacl
(40 B)
📄
delete_job.cgi
(1.31 KB)
📄
delete_jobs.cgi
(613 B)
📄
edit_job.cgi
(1.57 KB)
📄
freebsd-lib.pl
(1.43 KB)
📁
images
📄
index.cgi
(4.93 KB)
📄
install_check.pl
(406 B)
📄
irix-lib.pl
(1.25 KB)
📁
lang
📄
linux-lib.pl
(1.76 KB)
📄
log_parser.pl
(625 B)
📄
macos-lib.pl
(1.25 KB)
📄
module.info
(425 B)
📄
module.info.af
(0 B)
📄
module.info.af.auto
(111 B)
📄
module.info.ar
(0 B)
📄
module.info.ar.auto
(156 B)
📄
module.info.be
(0 B)
📄
module.info.be.auto
(162 B)
📄
module.info.bg
(0 B)
📄
module.info.bg.auto
(183 B)
📄
module.info.ca
(84 B)
📄
module.info.ca.auto
(11 B)
📄
module.info.cs
(30 B)
📄
module.info.cs.auto
(90 B)
📄
module.info.da
(0 B)
📄
module.info.da.auto
(110 B)
📄
module.info.de
(102 B)
📄
module.info.de.auto
(13 B)
📄
module.info.el
(0 B)
📄
module.info.el.auto
(193 B)
📄
module.info.es
(30 B)
📄
module.info.es.auto
(76 B)
📄
module.info.eu
(0 B)
📄
module.info.eu.auto
(117 B)
📄
module.info.fa
(0 B)
📄
module.info.fa.auto
(187 B)
📄
module.info.fi
(0 B)
📄
module.info.fi.auto
(123 B)
📄
module.info.fr
(31 B)
📄
module.info.fr.auto
(82 B)
📄
module.info.he
(0 B)
📄
module.info.he.auto
(152 B)
📄
module.info.hr
(0 B)
📄
module.info.hr.auto
(106 B)
📄
module.info.hu
(29 B)
📄
module.info.hu.auto
(95 B)
📄
module.info.it
(28 B)
📄
module.info.it.auto
(77 B)
📄
module.info.ja
(0 B)
📄
module.info.ja.auto
(164 B)
📄
module.info.ko
(0 B)
📄
module.info.ko.auto
(123 B)
📄
module.info.lt
(0 B)
📄
module.info.lt.auto
(114 B)
📄
module.info.lv
(0 B)
📄
module.info.lv.auto
(111 B)
📄
module.info.ms
(85 B)
📄
module.info.ms.auto
(13 B)
📄
module.info.mt
(0 B)
📄
module.info.mt.auto
(104 B)
📄
module.info.nl
(28 B)
📄
module.info.nl.auto
(80 B)
📄
module.info.no
(33 B)
📄
module.info.no.auto
(80 B)
📄
module.info.pl
(90 B)
📄
module.info.pl.auto
(10 B)
📄
module.info.pt
(0 B)
📄
module.info.pt.auto
(102 B)
📄
module.info.pt_BR
(30 B)
📄
module.info.pt_BR.auto
(81 B)
📄
module.info.ro
(0 B)
📄
module.info.ro.auto
(108 B)
📄
module.info.ru
(44 B)
📄
module.info.ru.auto
(132 B)
📄
module.info.sk
(29 B)
📄
module.info.sk.auto
(86 B)
📄
module.info.sl
(0 B)
📄
module.info.sl.auto
(99 B)
📄
module.info.sv
(30 B)
📄
module.info.sv.auto
(80 B)
📄
module.info.th
(0 B)
📄
module.info.th.auto
(244 B)
📄
module.info.tr
(38 B)
📄
module.info.tr.auto
(103 B)
📄
module.info.uk
(0 B)
📄
module.info.uk.auto
(162 B)
📄
module.info.ur
(0 B)
📄
module.info.ur.auto
(171 B)
📄
module.info.vi
(0 B)
📄
module.info.vi.auto
(139 B)
📄
module.info.zh
(0 B)
📄
module.info.zh.auto
(85 B)
📄
module.info.zh_TW
(24 B)
📄
module.info.zh_TW.auto
(70 B)
📄
negativeacl
(7 B)
📄
openserver-lib.pl
(1.02 KB)
📄
rbac-mapping
(103 B)
📄
save_allow.cgi
(695 B)
📄
solaris-lib.pl
(1.35 KB)
📄
start.cgi
(311 B)
📄
stop.cgi
(306 B)
Editing: index.cgi
#!/usr/bin/perl # index.cgi # List all at jobs and display a form for creating a new one # # F&AS : default parameters can be set # ext_user : default user # ext_cmd : default command use strict; use warnings; no warnings 'redefine'; no warnings 'uninitialized'; our (%access, %text, %in, %config); our ($module_name, $remote_user); require './at-lib.pl'; use POSIX; &ui_print_header(undef, $text{'index_title'}, "", undef, 1, 1); ReadParse(); # Check if at is installed if (!&has_command("at")) { &ui_print_endpage(&text('index_noat', "<tt>at</tt>", "../config.cgi?$module_name")); } # Check if OS is supported if (!defined(&list_atjobs)) { &ui_print_endpage(&text('index_nostyle', "../config.cgi?$module_name")); } # Show list of existing jobs my @jobs = &list_atjobs(); @jobs = grep { &can_edit_user(\%access, $_->{'user'}) } @jobs; if (@jobs) { print &ui_form_start("delete_jobs.cgi", "post"); @jobs = sort { $a->{'id'} <=> $b->{'id'} } @jobs; my @tds = ( "width=5", "nowrap" ); my @links = ( &select_all_link("d"), &select_invert_link("d") ); print &ui_links_row(\@links); print &ui_columns_start([ "", $text{'index_id'}, $text{'index_user'}, $text{'index_exec'}, $text{'index_created'}, $text{'index_cmd'} ], 100, 0, \@tds); foreach my $j (@jobs) { my @cols; push(@cols, &ui_link("edit_job.cgi?id=".$j->{'id'}, $j->{'id'}) ); push(@cols, &html_escape($j->{'user'})); my $date = localtime($j->{'date'}); push(@cols, "<tt>$date</tt>"); my $created = localtime($j->{'created'}); push(@cols, "<tt>$created</tt>"); push(@cols, join("<br>", split(/\n/, &html_escape($j->{'realcmd'})))); print &ui_checked_columns_row(\@cols, \@tds, "d", $j->{'id'}); } print &ui_columns_end(); print &ui_links_row(\@links); print &ui_form_end([ [ "delete", $text{'index_delete'} ] ]); print &ui_hr(); } # Show form for creating a new At job print &ui_form_start("create_job.cgi"); print &ui_table_start($text{'index_header'}, undef, 2); # User to run as my $dir = "/"; my ($user, $usel); if ($access{'mode'} == 1) { $usel = &ui_select("user", undef, [ split(/\s+/, $access{'users'}) ]); } elsif ($access{'mode'} == 3) { $usel = "<tt>$remote_user</tt>"; print &ui_hidden("user", $remote_user); my @uinfo = getpwnam($remote_user); $dir = $uinfo[7]; } else { $usel = &ui_user_textbox("user", $in{'ext_user'}); } print &ui_table_row($text{'index_user'}, $usel); # Run date my @now = localtime(time()); print &ui_table_row($text{'index_date'}, &ui_textbox("day", $now[3], 2)."/". &ui_select("month", $now[4], [ map { [ $_, $text{"smonth_".($_+1)} ] } ( 0 .. 11 ) ])."/". &ui_textbox("year", $now[5]+1900, 4). &date_chooser_button("day", "month", "year")); # Run time print &ui_table_row($text{'index_time'}, &ui_textbox("hour", undef, 2).":".&ui_textbox("min", "00", 2)); # Current date and time my ($date, $time) = split(/\s+/, &make_date(time())); print &ui_table_row($text{'index_cdate'}, $date); print &ui_table_row($text{'index_ctime'}, $time); # Run in directory print &ui_table_row($text{'index_dir'}, &ui_textbox("dir", $dir, 50)); # Commands to run print &ui_table_row($text{'index_cmd'}, &ui_textarea("cmd", $in{'ext_cmd'}, 5, 50)); # Send email on completion print &ui_table_row($text{'index_mail'}, &ui_yesno_radio("mail", 0)); print &ui_table_end(); print &ui_form_end([ [ undef, $text{'create'} ] ]); if ($access{'allow'} && $config{'allow_file'}) { # Show form to manage allowed and denied users my @allow = &list_allowed(); my @deny = &list_denied(); print &ui_hr(); print &ui_form_start("save_allow.cgi", "post"); print &ui_table_start($text{'index_allow'}, undef, 2); print &ui_table_row($text{'index_amode'}, &ui_radio("amode", @allow ? 1 : @deny ? 2 : 0, [ [ 0, $text{'index_amode0'} ], [ 1, $text{'index_amode1'} ], [ 2, $text{'index_amode2'} ] ])); print &ui_table_row("", &ui_textarea("ausers", @allow ? join("\n", @allow) : @deny ? join("\n", @deny) : undef, 5, 50)); print &ui_table_end(); print &ui_form_end([ [ "save", $text{'save'} ] ]); } # If there is an init script that runs an atd server, show status if (&foreign_available("init")) { &foreign_require("init"); my $init = defined(&get_init_name) ? &get_init_name() : undef; if ($access{'stop'} && $init) { print &ui_hr(); print &ui_buttons_start(); # Running now? my $r = &init::status_action($init); if ($r == 1) { print &ui_buttons_row("stop.cgi", $text{'index_stop'}, $text{'index_stopdesc'}); } elsif ($r == 0) { print &ui_buttons_row("start.cgi", $text{'index_start'}, $text{'index_startdesc'}); } # Start at boot? my $atboot = &init::action_status($init); print &ui_buttons_row("bootup.cgi", $text{'index_boot'}, $text{'index_bootdesc'}, undef, &ui_radio("boot", $atboot == 2 ? 1 : 0, [ [ 1, $text{'yes'} ], [ 0, $text{'no'} ] ])); print &ui_buttons_end(); } } &ui_print_footer("/", $text{'index'});
Upload File
Create Folder