summaryrefslogtreecommitdiff
path: root/scripts/halt
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/halt')
-rwxr-xr-xscripts/halt44
1 files changed, 44 insertions, 0 deletions
diff --git a/scripts/halt b/scripts/halt
new file mode 100755
index 0000000..f762495
--- /dev/null
+++ b/scripts/halt
@@ -0,0 +1,44 @@
+#!/bin/sh
+#
+# AUTHOR
+# N. Nielsen
+#
+# LICENSE
+# This software is in the public domain.
+#
+# The software is provided "as is", without warranty of any kind,
+# express or implied, including but not limited to the warranties
+# of merchantability, fitness for a particular purpose, and
+# noninfringement. In no event shall the author(s) be liable for any
+# claim, damages, or other liability, whether in an action of
+# contract, tort, or otherwise, arising from, out of, or in connection
+# with the software or the use or other dealings in the software.
+#
+# SUPPORT
+# Send bug reports to: <nielsen@memberwebs.com>
+#
+
+#
+# 'halt' command from inside the jail
+
+killall=`which killall`
+ret=1
+
+if [ -n ${killall} ] && [ -x ${killall} ]; then
+ killall -QUIT jailer 2> /dev/null
+ ret=$?
+else
+ ps -xa | grep "[j]ailer" | while read pid dummy; do
+
+ kill -QUIT ${pid} 2> /dev/null
+
+ if [ $? -eq 0 ]; then
+ ret=0
+ fi
+
+ done
+fi
+
+if [ $ret -ne 0 ]; then
+ echo "halt: jailer not running or insufficient permissions. can't halt jail." >&2
+fi