/
usr
/
share
/
usermin
/
at
/
/usr/share/usermin/at
mkdir
upload
Name
Size
Mode
Actions
images/
-
0755
rm
lang/
-
0755
rm
acl_security.pl
1198
0755
edit
dl
rm
at-lib.pl
3366
0755
edit
dl
rm
CHANGELOG
186
0644
edit
dl
rm
config-coherent-linux
84
0644
edit
dl
rm
config-corel-linux
88
0644
edit
dl
rm
config-debian-linux
88
0644
edit
dl
rm
config-debian-linux-3.0-ALL
45
0644
edit
dl
rm
config-freebsd
37
0644
edit
dl
rm
config-generic-linux
88
0644
edit
dl
rm
config-gentoo-linux
97
0644
edit
dl
rm
config-irix
44
0644
edit
dl
rm
config-mandrake-linux
84
0644
edit
dl
rm
config-msc-linux
84
0644
edit
dl
rm
config-netbsd
37
0644
edit
dl
rm
config-open-linux
89
0644
edit
dl
rm
config-openSUSE-Linux-15.0-ALL
88
0644
edit
dl
rm
config-redhat-linux
84
0644
edit
dl
rm
config-slackware-linux
88
0644
edit
dl
rm
config-sol-linux
88
0644
edit
dl
rm
config-solaris
47
0644
edit
dl
rm
config-suse-linux
88
0644
edit
dl
rm
config-syno-linux
88
0644
edit
dl
rm
config-turbo-linux
84
0644
edit
dl
rm
config-united-linux
88
0644
edit
dl
rm
config.info
237
0644
edit
dl
rm
config.info.ca
264
0644
edit
dl
rm
config.info.de
190
0644
edit
dl
rm
config.info.nl
237
0644
edit
dl
rm
config.info.no
240
0644
edit
dl
rm
config.info.pl
206
0644
edit
dl
rm
create_job.cgi
1091
0755
edit
dl
rm
defaultacl
33
0644
edit
dl
rm
delete_job.cgi
1342
0755
edit
dl
rm
delete_jobs.cgi
613
0755
edit
dl
rm
edit_job.cgi
1603
0755
edit
dl
rm
freebsd-lib.pl
1461
0755
edit
dl
rm
index.cgi
4854
0755
edit
dl
rm
irix-lib.pl
1276
0755
edit
dl
rm
linux-lib.pl
1802
0755
edit
dl
rm
module.info
334
0644
edit
dl
rm
module.info.af
0
0644
edit
dl
rm
module.info.af.auto
87
0644
edit
dl
rm
module.info.ar
0
0644
edit
dl
rm
module.info.ar.auto
118
0644
edit
dl
rm
module.info.be
0
0644
edit
dl
rm
module.info.be.auto
143
0644
edit
dl
rm
module.info.bg
0
0644
edit
dl
rm
module.info.bg.auto
167
0644
edit
dl
rm
module.info.ca
28
0644
edit
dl
rm
module.info.ca.auto
62
0644
edit
dl
rm
module.info.cs
30
0644
edit
dl
rm
module.info.cs.auto
70
0644
edit
dl
rm
module.info.da
0
0644
edit
dl
rm
module.info.da.auto
86
0644
edit
dl
rm
module.info.de
102
0644
edit
dl
rm
module.info.el
0
0644
edit
dl
rm
module.info.el.auto
163
0644
edit
dl
rm
module.info.es
30
0644
edit
dl
rm
module.info.eu
0
0644
edit
dl
rm
module.info.eu.auto
93
0644
edit
dl
rm
module.info.fa
0
0644
edit
dl
rm
module.info.fa.auto
140
0644
edit
dl
rm
module.info.fi
0
0644
edit
dl
rm
module.info.fi.auto
91
0644
edit
dl
rm
module.info.fr
31
0644
edit
dl
rm
module.info.he
0
0644
edit
dl
rm
module.info.he.auto
120
0644
edit
dl
rm
module.info.hr
0
0644
edit
dl
rm
module.info.hr.auto
95
0644
edit
dl
rm
module.info.hu
29
0644
edit
dl
rm
module.info.hu.auto
81
0644
edit
dl
rm
module.info.it
0
0644
edit
dl
rm
module.info.it.auto
92
0644
edit
dl
rm
module.info.ja
0
0644
edit
dl
rm
module.info.ja.auto
132
0644
edit
dl
rm
module.info.ko
0
0644
edit
dl
rm
module.info.ko.auto
102
0644
edit
dl
rm
module.info.lt
0
0644
edit
dl
rm
module.info.lt.auto
93
0644
edit
dl
rm
module.info.lv
0
0644
edit
dl
rm
module.info.lv.auto
103
0644
edit
dl
rm
module.info.ms
0
0644
edit
dl
rm
module.info.ms.auto
90
0644
edit
dl
rm
module.info.mt
0
0644
edit
dl
rm
module.info.mt.auto
86
0644
edit
dl
rm
module.info.nl
28
0644
edit
dl
rm
module.info.no
29
0644
edit
dl
rm
module.info.no.auto
57
0644
edit
dl
rm
module.info.pl
26
0644
edit
dl
rm
module.info.pl.auto
60
0644
edit
dl
rm
module.info.pt
0
0644
edit
dl
rm
module.info.pt.auto
94
0644
edit
dl
rm
module.info.pt_BR
0
0644
edit
dl
rm
module.info.pt_BR.auto
103
0644
edit
dl
rm
module.info.ro
0
0644
edit
dl
rm
module.info.ro.auto
87
0644
edit
dl
rm
module.info.ru
0
0644
edit
dl
rm
module.info.ru.auto
166
0644
edit
dl
rm
module.info.sk
0
0644
edit
dl
rm
module.info.sk.auto
97
0644
edit
dl
rm
module.info.sl
0
0644
edit
dl
rm
module.info.sl.auto
89
0644
edit
dl
rm
module.info.sv
0
0644
edit
dl
rm
module.info.sv.auto
100
0644
edit
dl
rm
module.info.th
0
0644
edit
dl
rm
module.info.th.auto
143
0644
edit
dl
rm
module.info.tr
0
0644
edit
dl
rm
module.info.tr.auto
101
0644
edit
dl
rm
module.info.uk
0
0644
edit
dl
rm
module.info.uk.auto
155
0644
edit
dl
rm
module.info.ur
0
0644
edit
dl
rm
module.info.ur.auto
148
0644
edit
dl
rm
module.info.vi
0
0644
edit
dl
rm
module.info.vi.auto
125
0644
edit
dl
rm
module.info.zh
0
0644
edit
dl
rm
module.info.zh.auto
78
0644
edit
dl
rm
module.info.zh_TW
0
0644
edit
dl
rm
module.info.zh_TW.auto
87
0644
edit
dl
rm
solaris-lib.pl
1387
0755
edit
dl
rm
Edit:
/usr/share/usermin/at/at-lib.pl
(3366B)
# at-lib.pl # Functions for listing and creating at jobs use strict; use warnings "once"; no warnings "redefine"; our (%text, %config); our $remote_user; BEGIN { push(@INC, ".."); }; use WebminCore; &init_config(); our %access = &get_module_acl(); do "$config{'at_style'}-lib.pl"; # wrap_lines(text, width) # Given a multi-line string, return an array of lines wrapped to # the given width sub wrap_lines { my @rv; my $w = $_[1]; foreach my $rest (split(/\n/, $_[0])) { if ($rest =~ /\S/) { while(length($rest) > $w) { push(@rv, substr($rest, 0, $w)); $rest = substr($rest, $w); } push(@rv, $rest); } else { # Empty line .. keep as it is push(@rv, $rest); } } return @rv; } # can_edit_user(&access, user) sub can_edit_user { my %umap; map { $umap{$_}++; } split(/\s+/, $_[0]->{'users'}); if ($_[0]->{'mode'} == 1 && !$umap{$_[1]} || $_[0]->{'mode'} == 2 && $umap{$_[1]}) { return 0; } elsif ($_[0]->{'mode'} == 3) { return $remote_user eq $_[1]; } else { return 1; } } # list_allowed() # Returns a list of all users in the cron allow file sub list_allowed { local $_; my @rv; no strict "subs"; &open_readfile(ALLOW, $config{allow_file}); while(<ALLOW>) { next if (/^\s*#/); chop; push(@rv, $_) if (/\S/); } close(ALLOW); use strict "subs"; return @rv; } # list_denied() # Return a list of users from the cron deny file sub list_denied { local $_; my @rv; no strict "subs"; &open_readfile(DENY, $config{deny_file}); while(<DENY>) { next if (/^\s*#/); chop; push(@rv, $_) if (/\S/); } close(DENY); use strict "subs"; return @rv; } # save_allowed(user, user, ...) # Save the list of allowed users sub save_allowed { &lock_file($config{allow_file}); if (@_) { local($_); no strict "subs"; &open_tempfile(ALLOW, ">$config{allow_file}"); foreach my $u (@_) { &print_tempfile(ALLOW, $u,"\n"); } &close_tempfile(ALLOW); use strict "subs"; chmod(0444, $config{allow_file}); } else { &unlink_file($config{allow_file}); } &unlock_file($config{allow_file}); } # save_denied(user, user, ...) # Save the list of denied users sub save_denied { &lock_file($config{deny_file}); if (@_ || !-r $config{'allow_file'}) { no strict "subs"; &open_tempfile(DENY, ">$config{deny_file}"); foreach my $u (@_) { &print_tempfile(DENY, $u,"\n"); } &close_tempfile(DENY); use strict "subs"; chmod(0444, $config{deny_file}); } else { &unlink_file($config{deny_file}); } &unlock_file($config{deny_file}); } # can_use_at(user) # Returns 1 if some user is allowed to use At jobs, based on the allow # any deny files. sub can_use_at { my ($user) = @_; my (@allow, @deny, @denied); if (!$config{'allow_file'}) { return 1; # not supported by OS } elsif (@allow = &list_allowed()) { return &indexof($user, @allow) >= 0; # check allowed list } elsif (@deny = &list_denied()) { return &indexof($user, @denied) < 0; # check denied list } else { return 1; # if neither exists, fall back to allowing all } } # get_init_status() # If the init module is installed and there is an atd bootup action, return # its name, current running status and boot status sub get_init_status { return () if (!&foreign_available("init")); my $init = defined(&get_init_name) ? &get_init_name() : undef; return () if (!$init); my $r = &init::status_action($init); my $atboot = &init::action_status($init); return ($init, $r, $atboot); } 1;
Save
cmd:
run