fix typos in CONFIG_SITE files
[openwrt/svn-archive/openwrt.git] / openwrt / package / openvpn / files / S50openvpn
1 #!/bin/sh
2
3 case "$(nvram get openvpn_cli)" in
4 on|enabled|1)
5 continue
6 ;;
7 off|disabled|0)
8 exit 0
9 ;;
10 esac
11
12 case "$1" in
13 start)
14 SERVER=$(nvram get openvpn_cli_server)
15 PROTO=$(nvram get openvpn_cli_proto)
16 PORT=$(nvram get openvpn_cli_port)
17
18 [ "$SERVER" ] || {
19 logger "$0: remote server not configured!"
20 exit
21 }
22 case "$(nvram get openvpn_cli_auth)" in
23 cert)
24 AUTH_OPTION="--ns-cert-type server --pkcs12"
25 AUTH_FILE="/etc/openvpn/certificate.p12"
26 PKCS12PASS="$(nvram get openvpn_cli_pkcs12pass)"
27 [ "$PKCS12PASS" ] && {
28 echo -n "$PKCS12PASS" > /etc/openvpn/pkcs12pass.tmp
29 chmod 600 /etc/openvpn/pkcs12pass.tmp
30 AUTH_OPTION="--askpass /etc/openvpn/pkcs12pass.tmp $AUTH_OPTION"
31 }
32 ;;
33 psk)
34 AUTH_OPTION="--secret"
35 AUTH_FILE="/etc/openvpn/shared.key"
36 ;;
37 *)
38 logger "$0: unknown authentication type, aborting!"
39 exit
40 ;;
41 esac
42 [ -f "$AUTH_FILE" ] || {
43 logger "$0: no certificat/keyfile found!"
44 exit
45 }
46 openvpn --client \
47 --proto "${PROTO:-udp}" \
48 --port "${PORT:-1194}" \
49 --remote "$SERVER" \
50 --dev tun \
51 --nobind \
52 $AUTH_OPTION "$AUTH_FILE" \
53 --comp-lzo \
54 --daemon \
55 --status /tmp/openvpn-status.log \
56 --verb 3
57 ;;
58 restart)
59 $0 stop
60 sleep 3
61 $0 start
62 ;;
63 reload)
64 killall -SIGHUP openvpn
65 ;;
66 stop)
67 killall openvpn
68 ;;
69 esac