]> git.pld-linux.org Git - packages/vtun.git/blame - vtun.init
- rediff patches
[packages/vtun.git] / vtun.init
CommitLineData
735a2745 1#!/bin/sh
2#
acf173db 3# vtun Script for starting and stoping vtund.
735a2745 4#
acf173db 5# chkconfig: 345 55 45
6# description: vtund Virtual Tunnel Daemon. \
7# VTun provides the method for creating Virtual Tunnels over \
8# TCP/IP networks and allows to shape, compress, encrypt \
9# traffic in that tunnels.
735a2745 10
11# Source function library.
12. /etc/rc.d/init.d/functions
13
2f2c96cd 14# Get network config
15. /etc/sysconfig/network
16
17# Check that networking is up.
acf173db 18if is_yes "${NETWORKING}"; then
d76e43aa 19 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
acf173db 20 msg_network_down Vtund
21 exit 1
22 fi
23else
24 exit 0
2f2c96cd 25fi
26
c8f10ef0 27# Get service config
28[ -f /etc/sysconfig/vtun ] && . /etc/sysconfig/vtun
29
30err_exit() {
f58c544d 31 echo $@
acf173db 32 exit 1
c8f10ef0 33}
34
c10f8c9f 35[ -n "$VTUND_MODE" ] || err_exit "VTUND_MODE not set"
c8f10ef0 36
22ec0a04 37VTUND_OPTS="$VTUND_OPTS -f $VTUND_CONF"
acf173db 38
c8f10ef0 39if [ $VTUND_MODE = "server" ]; then
acf173db 40 VTUND_OPTS="$VTUND_OPTS -s"
41
c8f10ef0 42elif [ $VTUND_MODE = "client" ]; then
acf173db 43 [ -n "$VTUND_SESSION" ] || err_exit "VTUND_SESSION not set"
44 [ -n "$VTUND_SERVER_ADDR" ] || err_exit "VTUND_SERVER_ADDR not set"
45 [ -n "$VTUND_PORT" ] && VTUND_OPTS="$VTUND_OPTS -P $VTUND_PORT"
46 VTUND_OPTS="$VTUND_OPTS $VTUND_SESSION $VTUND_SERVER_ADDR"
c8f10ef0 47
1dba27d5 48else
acf173db 49 err_exit "Invalid VTUND_MODE ($VTUND_MODE), should be set to \"server\" or \"client\""
c8f10ef0 50fi
51
93bb020d 52RETVAL=0
735a2745 53# See how we were called.
54case "$1" in
55 start)
acf173db 56 # Check if the service is already running?
57 if [ ! -f /var/lock/subsys/vtund ]; then
58 msg_starting Vtund
59 daemon vtund $VTUND_OPTS
60 RETVAL=$?
61 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/vtund
62 else
63 msg_already_running Vtund
acf173db 64 fi
acf173db 65 ;;
735a2745 66 stop)
2f2c96cd 67 if [ -f /var/lock/subsys/vtund ]; then
acf173db 68 # Stop daemons.
69 msg_stopping Vtund
70 killproc vtund
acf173db 71 rm -f /var/lock/subsys/vtund >/dev/null 2>&1
2f2c96cd 72 else
acf173db 73 msg_not_running Vtund
acf173db 74 fi
75 ;;
93bb020d 76 restart|force-reload)
735a2745 77 $0 stop
78 $0 start
acf173db 79 exit $?
80 ;;
735a2745 81 status)
acf173db 82 status vtund
2f2c96cd 83 exit $?
acf173db 84 ;;
735a2745 85 *)
93bb020d 86 msg_usage "$0 {start|stop|restart|force-reload|status}"
87 exit 3
735a2745 88esac
89
2f2c96cd 90exit $RETVAL
This page took 0.220093 seconds and 4 git commands to generate.