summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSebastian Schmelzer2010-09-15 17:17:40 +0200
committerSebastian Schmelzer2010-09-15 17:17:40 +0200
commita9fefd4d8b12f85169f3a709b9a7df0e893e9708 (patch)
tree6d4d6adda61db0af1ff2952a3214431a09c0e71b /src
parentoverwrite instead of append BUILD (diff)
parentenable reinstall of plugin if sth gets changed in shutdown script (diff)
downloadcore-a9fefd4d8b12f85169f3a709b9a7df0e893e9708.tar.gz
core-a9fefd4d8b12f85169f3a709b9a7df0e893e9708.tar.xz
core-a9fefd4d8b12f85169f3a709b9a7df0e893e9708.zip
Merge branch 'master' of git+ssh://git.openslx.org/openslx/core
Diffstat (limited to 'src')
-rw-r--r--src/os-plugins/plugins/sysrqshutdown/OpenSLX/OSPlugin/sysrqshutdown.pm22
-rw-r--r--src/os-plugins/plugins/sysrqshutdown/files/shutdown23
2 files changed, 23 insertions, 22 deletions
diff --git a/src/os-plugins/plugins/sysrqshutdown/OpenSLX/OSPlugin/sysrqshutdown.pm b/src/os-plugins/plugins/sysrqshutdown/OpenSLX/OSPlugin/sysrqshutdown.pm
index 9800c203..bfc274d4 100644
--- a/src/os-plugins/plugins/sysrqshutdown/OpenSLX/OSPlugin/sysrqshutdown.pm
+++ b/src/os-plugins/plugins/sysrqshutdown/OpenSLX/OSPlugin/sysrqshutdown.pm
@@ -68,20 +68,24 @@ sub getAttrInfo
sub installationPhase
{
- my $self = shift;
- my $info = shift;
+ my $self = shift;
+ my $info = shift;
+ my $openslxBasePath = $info->{'openslx-base-path'};
+ my $pluginName = $self->{'name'};
+ my $pluginBasePath = "$openslxBasePath/lib/plugins/$pluginName/files";
+ # copy files
if (! -e "/sbin/shutdown.slxorig") {
- # copy files
- my $openslxBasePath = $info->{'openslx-base-path'};
- my $pluginName = $self->{'name'};
- my $pluginBasePath
- = "$openslxBasePath/lib/plugins/$pluginName/files";
-
system("mv /sbin/shutdown /sbin/shutdown.slxorig");
- system("cp -p $pluginBasePath/shutdown /sbin/");
+ system("cp -p $pluginBasePath/shutdown /sbin/;
+ cp -p $pluginBasePath/shutdown /opt/openslx/plugin-repo/$pluginName");
chmod 0755, "/sbin/shutdown";
}
+ # else assume reinstall
+ elsif (-e "/sbin/shutdown.slxorig") {
+ system("cp -p $pluginBasePath/shutdown /sbin/");
+ chmod 0755, "/sbin/shutdown";
+ }
return;
}
diff --git a/src/os-plugins/plugins/sysrqshutdown/files/shutdown b/src/os-plugins/plugins/sysrqshutdown/files/shutdown
index 7f4e9a1f..a27481d7 100644
--- a/src/os-plugins/plugins/sysrqshutdown/files/shutdown
+++ b/src/os-plugins/plugins/sysrqshutdown/files/shutdown
@@ -32,20 +32,17 @@ fi
if [ ${sysrqshutdown_active} -eq 1 ]; then
# check if reboot or halt
- case "$@" in
- '-r now')
- for i in $(echo s u b); do
+ if echo "$@" | grep -qe '-r now'; then
+ for i in $(echo s u b); do
echo $i > /proc/sysrq-trigger &
- done
- exit 0
- ;;
- '-h now')
- for i in $(echo s u o); do
- echo $i > /proc/sysrq-trigger &
- done
- exit 0
- ;;
- esac
+ done
+ exit 0
+ elif echo "$@" | grep -qe '-h now'; then
+ for i in $(echo s u o); do
+ echo $i > /proc/sysrq-trigger &
+ done
+ exit 0
+ fi
fi
# else use orig shutdown
shutdown.slxorig $@