Files
2024-07-11 14:16:35 +02:00

76 lines
2.5 KiB
Diff

Hack in support for an "exclude" config option for the init module, so
we can hide certain system services that shouldn't really be configurable
via the web interface
Upstream-Status: Pending
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
init/index.cgi | 27 ++++++++++++++-------------
init/init-lib.pl | 5 +++--
2 files changed, 17 insertions(+), 15 deletions(-)
Index: webmin-1.850/init/index.cgi
===================================================================
--- webmin-1.850.orig/init/index.cgi
+++ webmin-1.850/init/index.cgi
@@ -45,19 +45,20 @@ elsif ($init_mode eq "init" && $access{'
: "$config{'init_dir'}/$ac[0]");
}
@runlevels = &list_runlevels();
- foreach $r (@runlevels) {
- foreach $w ("S", "K") {
- foreach $a (&runlevel_actions($r, $w)) {
- @ac = split(/\s+/, $a);
- if (!$nodemap{$ac[2]}) {
- push(@acts, $ac[1]);
- push(@actsl,
- "1+$r+$ac[0]+$ac[1]+$ac[2]+$w");
- push(@actsf, "$config{'init_base'}/rc$r.d/$w$ac[0]$ac[1]");
- }
- }
- }
- }
+ # Assume there won't be any of these broken actions
+ #foreach $r (@runlevels) {
+ # foreach $w ("S", "K") {
+ # foreach $a (&runlevel_actions($r, $w)) {
+ # @ac = split(/\s+/, $a);
+ # if (!$nodemap{$ac[2]}) {
+ # push(@acts, $ac[1]);
+ # push(@actsl,
+ # "1+$r+$ac[0]+$ac[1]+$ac[2]+$w");
+ # push(@actsf, "$config{'init_base'}/rc$r.d/$w$ac[0]$ac[1]");
+ # }
+ # }
+ # }
+ # }
# For each action, look at /etc/rc*.d/* files to see if it is
# started at boot
Index: webmin-1.850/init/init-lib.pl
===================================================================
--- webmin-1.850.orig/init/init-lib.pl
+++ webmin-1.850/init/init-lib.pl
@@ -124,8 +124,9 @@ List boot time action names from init.d,
=cut
sub list_actions
{
-local($dir, $f, @stbuf, @rv);
+local($dir, $f, @stbuf, @rv, @exclude);
$dir = $config{init_dir};
+@exclude = split(/,/, $config{exclude});
opendir(DIR, $dir);
foreach $f (sort { lc($a) cmp lc($b) } readdir(DIR)) {
if ($f eq "." || $f eq ".." || $f =~ /\.bak$/ || $f eq "functions" ||
@@ -133,7 +134,7 @@ foreach $f (sort { lc($a) cmp lc($b) } r
-d "$dir/$f" || $f =~ /\.swp$/ || $f eq "skeleton" ||
$f =~ /\.lock$/ || $f =~ /\.dpkg-(old|dist)$/ ||
$f =~ /^\.depend\./ || $f eq '.legacy-bootordering' ||
- $f =~ /^mandrake/) { next; }
+ $f =~ /^mandrake/ || grep {$_ eq $f} @exclude ) { next; }
if (@stbuf = stat("$dir/$f")) {
push(@rv, "$f $stbuf[1]");
}