79 lines
2.5 KiB
Diff
79 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(-)
|
|
|
|
diff --git a/init/index.cgi b/init/index.cgi
|
|
index d48b793..30dafd4 100755
|
|
--- a/init/index.cgi
|
|
+++ b/init/index.cgi
|
|
@@ -45,19 +45,20 @@ elsif ($init_mode eq "init" && $access{'bootup'}) {
|
|
: "$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
|
|
diff --git a/init/init-lib.pl b/init/init-lib.pl
|
|
index ead21ed..b41794b 100755
|
|
--- a/init/init-lib.pl
|
|
+++ b/init/init-lib.pl
|
|
@@ -119,8 +119,9 @@ List boot time action names from init.d, such as httpd and cron.
|
|
=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" ||
|
|
@@ -128,7 +129,7 @@ foreach $f (sort { lc($a) cmp lc($b) } readdir(DIR)) {
|
|
-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]");
|
|
}
|
|
--
|
|
2.0.0
|
|
|