-#! /bin/bash
+#! /usr/lib/util-vserver/sigexec /bin/bash
# Copyright (C) 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
#
(sync)
local f=${METHOD_ARGS[0]}
- test "$f" ||
+ test -n "$f" ||
panic $"Insufficent arguments for method '$method' and vserver '$VSERVER'"
test -p "$f" ||
local script
findObject -x script "$CONFDIR"/.defaults/apps/vshelper-methods/"$method" "$PKGLIBDIR"/vshelper-methods/"$method" ''
- test '$script' || {
+ test -n '$script' || {
warning $"No handler for internal method '$method' found"
exit 1
}
panic $"vshelper called with missing arguments; try '--help' for more information"
vshelper.isEnabled || exit 0
+! vshelper.isDebug || set -x
set -eu
panic $"vshelper functionality not supported by kernel"
fi
+findObject -x delegate "$CONFDIR"/.defaults/apps/vshelper-delegate/"$ACTION" "$PKGLIBDIR"/vshelper-delegate/"$ACTION" ''
+test -e "$delegate" && exec -a "$ACTION" "$delegate" "$@"
this_xid=$($_VSERVER_INFO - XID)
pxid=
while true; do
pxid=$($_VSERVER_INFO "$responsible_xid" PXID) || break
test "$pxid" -ne "$this_xid" || break
- xid=$responsible_xid
+ responsible_xid=$pxid
done
vserver_id=$($_VSERVER_INFO "$responsible_xid" ID) ||