Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37854025
en ru br
ALT Linux repos
5.0: 2.6-alt3.1.1
4.1: 2.6-alt3.1
4.0: 2.6-alt3.1
3.0: 2.6-alt3

Group :: System/Servers
RPM: vtund

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

#!/bin/sh
#
# vtund startup script
#
# chkconfig: 2345 90 10
#
# description: starts vtund with options from %_sysconfdir/sysconfig/vtund
# for more details see vtund(8) and vtund.conf(5)
#
# Peter V. Saveliev <peet@altlinux.ru> 20040111
# Peter V. Saveliev <peet@altlinux.ru> 20040527 - explicit session denotation


# Source function library.
. /etc/init.d/functions

SourceIfNotEmpty /etc/sysconfig/vtund_server

NAME="vtund"
VTUND="/usr/sbin/vtund"
CONFDIR="/etc/sysconfig/vtund"
WRAPPER="/usr/lib/vtund/bug4231.sh"
PIDFILE="/var/run/vtund.pid"
LOCKFILE="/var/lock/subsys/vtund"

[ ! -x "$VTUND" ] && exit 1

calculate_sessions() {
SESSIONS="server"
[ -d "$CONFDIR" ] && {
pushd "$CONFDIR" &>/dev/null
for i in *; do {
[ -f "$i" ] && SESSIONS="$SESSIONS $i"
} done
}
}

start() {
for i in $1; do {
SESSION="$i"
case $SESSION in
server)
# check if there is need in server:
[ -z "$SERVER" ] || {
case $SERVER in
enable|standalone)
SOPTIONS="-s"
;;
inetd)
SOPTIONS="-i"
;;
*)
;;
esac
SOPTIONS="-n $SOPTIONS $OPTIONS"
}
;;
*)
# start client sessions
[ -d "$CONFDIR" ] && {
k="$CONFDIR/$SESSION"
[ -f "$k" ] && {
# merge client options
. $k
SOPTIONS="$OPTIONS"
[ -z "$PERSISTENT" ] || SOPTIONS="$SOPTIONS -p"
[ -z "$TIMEOUT" ] || SOPTIONS="$SOPTIONS -t $TIMEOUT"
SOPTIONS="-n $SOPTIONS $SESSION $SERVER"
}
}
;;
esac
echo -ne "Starting $NAME session [ $SESSION ]\t"
[ -z "$SOPTIONS" ] || start_daemon --no-announce --name "$NAME" --pidfile "$PIDFILE.$SESSION" --lockfile "$LOCKFILE.$SESSION" --expect-user root -- $WRAPPER -s "$SESSION" -p "$PIDFILE" -d "$VTUND" -- "$SOPTIONS"
} done
}

stop() {
for i in $1; do
SESSION="$i"
echo -ne "Stopping $NAME session [ $SESSION ]...\t"
stop_daemon --no-announce --name "$NAME" --pidfile "$PIDFILE.$SESSION" --lockfile "$LOCKFILE.$SESSION" --expect-user root $VTUND
done
}

restart() {
stop "$1"
start "$1"
}

if [ -z "$2" ]; then {
calculate_sessions
} else {
SESSIONS="$2"
} fi

case "$1" in
start)
start "$SESSIONS"
;;

stop)
stop "$SESSIONS"
;;

restart)
restart "$SESSIONS"
;;

status)
for i in $SESSIONS; do
echo -ne "Status $NAME session [ $i ]:\t"
status --pidfile "$PIDFILE.$i" --expect-user root $VTUND
done
;;

condstop)
for i in $SESSIONS; do
[ -e "$LOCKFILE.$i" ] && stop "$i"
done
;;

condrestart)
for i in $SESSIONS; do
[ -e "$LOCKFILE.$i" ] && restart "$i"
done
;;

*)
echo $"Usage: $0 {start|stop|restart|condrestart|condstop|status} [session]"
exit 1
esac

exit 0

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin