1#! /bin/sh
2#
3# vpnuser	Add/Del user to chap-secrets for VPN
4# Version 1.0 beta by Richard de Vroede - Linvision BV
5# Ideas or worshipping to: richard@linvision.com
6#
7
8config="/etc/ppp/chap-secrets"
9ERROR="Usage:\n$0 add <username> <passwd> or\n$0 del <username> or\n$0 show [<username>] or\n$0 domain <username> <domain>"
10
11# See how we were called.
12case "$1" in
13  add)
14        if [ "$(echo $2)" != "" ] & [ "$(echo $3)" != "" ]; then
15	    echo -e "$2\t*\t$3\t*" >> $config
16            chmod 600 $config
17	else
18	    echo -e $ERROR
19	    exit 1
20	fi
21	;;
22  del)
23        if [ "$(echo $2)" != "" ]; then
24	    grep -vw "$2" $config > /tmp/vpnblaat
25            mv /tmp/vpnblaat $config
26            chmod 600 $config
27	else
28	    echo -e $ERROR
29	    exit 1
30	fi
31	;;
32  show)
33	    echo -e "User\tServer\tPasswd\tIPnumber"
34	    echo "---------------------------------"
35        if [ "$(echo $2)" != "" ]; then
36	    grep -w $2 $config
37	else
38	    cat $config
39	fi
40	;;
41  domain)
42        if [ "$(echo $2)" != "" ] & [ "$(echo $3)" != "" ]; then
43	    grep -vw "$2" $config > /tmp/vpnblaat
44	    DATA=`grep -w "$2" $config`
45	    mv /tmp/vpnblaat $config
46	    DOM=`echo $3 | tr a-z A-Z`
47	    dom=`echo $3 | tr A-Z a-z`
48            echo "$DOM\\\\$DATA" >> $config
49            echo "$dom\\\\$DATA" >> $config
50	    chmod 600 $config
51	else
52	    echo -e $ERROR
53	    exit 1
54	fi
55	;;
56  *)
57	echo -e $ERROR
58	exit 1
59esac
60