--- /dev/null
+#!/bin/bash
+#
+# vprocunhide sets vserver related attributes for /proc
+#
+# chkconfig: 2345 26 74
+# description: Makes some /proc entries visibly for vservers
+
+: ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars}
+test -e "$UTIL_VSERVER_VARS" || {
+ echo $"Can not find util-vserver installation (the file '$UTIL_VSERVER_VARS' would be expected); aborting..." >&2
+ exit 1
+}
+. "$UTIL_VSERVER_VARS"
+
+$_VSERVER_INFO - FEATURE iattr || exit 0
+
+f=/etc/rc.d/init.d/functions
+if test -e "$f"; then
+ . "$f"
+ lockfile=/var/lock/subsys/vprocunhide
+else
+ success() { echo .; }
+ passed() { echo .; }
+ failure() { echo ERROR; }
+ lockfile=/var/run/vprocunhide
+fi
+
+
+function start()
+{
+ echo -n $"Fixing /proc entries visibility..."
+ $_VPROCUNHIDE
+ retval=$?
+ case "$retval" in
+ 0) success;;
+ 2) passed; retval=0;;
+ *) failure;
+ esac
+ echo
+ test "$retval" -ne 0 || touch "$lockfile"
+ return $retval
+}
+
+function stop()
+{
+ rm -f "$lockfile"
+}
+
+function restart()
+{
+ stop
+ start
+}
+
+case "$1" in
+ start|stop|restart) $1;;
+ reload) ;;
+ condrestart)
+ test -f $lockfile && restart || :
+ ;;
+ status)
+ test -f $lockfile && {
+ echo $"/proc entries were fixed"
+ exit 0
+ }
+ echo $"/proc entries are not fixed"
+ exit 1
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|reload|restart|condrestart|status}"
+ exit 2
+ ;;
+esac