add option to hide index.cgi process

This commit is contained in:
Jamie Cameron
2018-05-18 15:41:36 -07:00
parent c6e6128f23
commit 525db8ff5d
21 changed files with 25 additions and 8 deletions

View File

@@ -3,3 +3,4 @@ ps_style=linux
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ default_mode=last
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=freebsd
base_ppid=0
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ default_mode=last
base_ppid=0
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=sysv
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=macos
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=freebsd
base_ppid=0
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=openbsd
base_ppid=0
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ default_mode=last
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=osf
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ default_mode=last
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ default_mode=last
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -3,3 +3,4 @@ ps_style=windows
base_ppid=1
cut_length=80
trace_java=0
hide_self=1

View File

@@ -2,5 +2,6 @@ line1=Configurable options,11
default_mode=Default process list style,4,last-Last chosen,tree-Process tree,user-Order by user,size-Order by size,cpu-Order by CPU,search-Search form,run-Run form
cut_length=Characters to truncate commands to,3,Unlimited
trace_java=Show system call trace using,1,1-Java applet,0-Text
hide_self=Hide Webmin processes from list?,1,1-Yes,0-No
line2=System configuration,11
ps_style=PS command output style,1,sysv-SYSV,linux-Linux,hpux-HPUX,freebsd-FreeBSD,macos-MacOS,openbsd-OpenBSD

View File

@@ -32,7 +32,7 @@ if (defined(&get_cpu_info)) {
print &ui_columns_start([ $text{'pid'}, $text{'owner'},
$text{'cpu'}, $text{'command'} ], 100);
@procs = sort { $b->{'cpu'} <=> $a->{'cpu'} } &list_processes();
@procs = grep { &can_view_process($_->{'user'}) } @procs;
@procs = grep { &can_view_process($_) } @procs;
foreach $pr (@procs) {
$p = $pr->{'pid'};
local @cols;

View File

@@ -104,7 +104,7 @@ print &ui_form_end([ [ undef, $text{'search_submit'} ] ]);
if (%in) {
# search for processes
@procs = &list_processes();
@procs = grep { &can_view_process($_->{'user'}) } @procs;
@procs = grep { &can_view_process($_) } @procs;
if ($in{mode} == 0) {
# search by user
@dis = grep { $_->{'user'} eq $in{'user'} } @procs;

View File

@@ -29,7 +29,7 @@ print &ui_columns_start([
], 100);
@procs = sort { $b->{'size'} <=> $a->{'size'} } &list_processes();
@procs = grep { &can_view_process($_->{'user'}) } @procs;
@procs = grep { &can_view_process($_) } @procs;
foreach $pr (@procs) {
$p = $pr->{'pid'};
local @cols;

View File

@@ -13,6 +13,7 @@ print &ui_columns_start([ $text{'pid'},
@procs = sort { $a->{'pid'} <=> $b->{'pid'} } &list_processes();
foreach $pr (@procs) {
$p = $pr->{'pid'}; $pp = $pr->{'ppid'};
$procmap{$p} = $pr;
$argmap{$p} = $pr->{'args'};
$usermap{$p} = $pr->{'user'};
$stimemap{$p} = $pr->{'_stime'};
@@ -37,7 +38,7 @@ sub walk_procs
{
next if ($done_proc{$_[1]}++);
local(@ch, $_, $args);
if (&can_view_process($usermap{$_[1]})) {
if (&can_view_process($procmap{$_[1]})) {
local @cols;
if (&can_edit_process($usermap{$_[1]})) {
push(@cols, $_[0].&ui_link("edit_proc.cgi?".$_[1], $_[1]) );

View File

@@ -6,7 +6,7 @@ require './proc-lib.pl';
&index_links("user");
@procs = sort { $b->{'cpu'} <=> $a->{'cpu'} } &list_processes();
@procs = grep { &can_view_process($_->{'user'}) } @procs;
@procs = grep { &can_view_process($_) } @procs;
@users = &unique(map { $_->{'user'} } @procs);
foreach $u (@users) {
if (&supports_users()) {

View File

@@ -6,7 +6,7 @@ require './proc-lib.pl';
&index_links("zone");
@procs = sort { $b->{'cpu'} <=> $a->{'cpu'} } &list_processes();
@procs = grep { &can_view_process($_->{'user'}) } @procs;
@procs = grep { &can_view_process($_) } @procs;
@zones = &unique(map { $_->{'_zone'} } @procs);
foreach $z (@zones) {
print "<dt><font size=+1>",&text('index_inzone', "<tt>$z</tt>"),"</font><br>\n";

View File

@@ -528,11 +528,13 @@ else {
}
}
# can_view_process(user)
# can_view_process(&process)
# Returns 1 if processes belong to this user can be seen
sub can_view_process
{
local ($user) = @_;
local ($p) = @_;
return 0 if ($p->{'pid'} == $$ && $config{'hide_self'});
local $user = $p->{'user'};
if ($hide{$user}) {
return 0;
}