Projet

Général

Profil

« Précédent | Suivant » 

Révision db63c043

Ajouté par Renato Botelho il y a plus de 9 ans

Simplify a bit ppp-linkup syntax

Voir les différences:

usr/local/sbin/ppp-linkup
1 1
#!/bin/sh
2 2

  
3
export PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin
4

  
3 5
if [ "${2}" == "inet" ]; then
4 6

  
5
	OLD_ROUTER=`/bin/cat /tmp/${1}_router`
6
	if [ "${OLD_ROUTER}" != "" ]; then
7
	OLD_ROUTER=`cat /tmp/${1}_router`
8
	if [ -n "${OLD_ROUTER}" ]; then
7 9
		echo "Removing states to old router ${OLD_ROUTER}" | logger -t ppp-linkup
8
		/sbin/pfctl -i ${1} -k 0.0.0.0/0 -k ${OLD_ROUTER}/32
9
		/sbin/pfctl -i ${1} -k ${OLD_ROUTER}/32 -k 0.0.0.0/0
10
		pfctl -i ${1} -k 0.0.0.0/0 -k ${OLD_ROUTER}/32
11
		pfctl -i ${1} -k ${OLD_ROUTER}/32 -k 0.0.0.0/0
10 12
	fi
11 13

  
12 14
	# let the configuration system know that the ipv4 has changed.
13
	/bin/echo ${4} > /tmp/${1}_router
14
	/bin/echo ${3} > /tmp/${1}_ip
15
	/usr/bin/touch /tmp/${1}up
15
	echo ${4} > /tmp/${1}_router
16
	echo ${3} > /tmp/${1}_ip
17
	touch /tmp/${1}up
16 18

  
17
	ALLOWOVERRIDE=`/usr/bin/grep -c dnsallowoverride /conf/config.xml`
18
	if [ ${ALLOWOVERRIDE} -gt 0 ]; then
19
	if grep -q dnsallowoverride /conf/config.xml; then
19 20
		# write nameservers to file
20
		if [ "`echo ${6}|grep -c dns1`" -gt 0 ]; then
21
			DNS1=`echo ${6} |awk '{print $2}'`
22
			echo "${DNS1}"> /var/etc/nameserver_${1}
23
			/sbin/route change "${DNS1}" ${4}
21
		echo -n "" > /var/etc/nameserver_${1}
22
		if echo "${6}" | grep -q dns1; then
23
			DNS1=`echo "${6}" | awk '{print $2}'`
24
			echo "${DNS1}" >> /var/etc/nameserver_${1}
25
			route change "${DNS1}" ${4}
24 26
		fi
25
		if [ "`echo ${7}|grep -c dns2`" -gt 0 ]; then
26
			DNS2=`echo ${7} |awk '{print $2}'`
27
		if echo "${7}" | grep -q dns2; then
28
			DNS2=`echo "${7}" | awk '{print $2}'`
27 29
			echo "${DNS2}" >> /var/etc/nameserver_${1}
28
			/sbin/route change "${DNS2}" ${4}
30
			route change "${DNS2}" ${4}
29 31
		fi
30
		/usr/local/sbin/pfSctl -c 'service reload dns'
31
		/bin/sleep 1
32
		pfSctl -c 'service reload dns'
33
		sleep 1
32 34
	fi
33
	/usr/local/sbin/pfSctl -c "interface newip ${1}"
34
fi
35
	pfSctl -c "interface newip ${1}"
35 36

  
36
if [ "${2}" == "inet6" ]; then
37
elif [ "${2}" == "inet6" ]; then
37 38
	# let the configuration system know that the ipv6 has changed.
38
	/bin/echo ${4} |cut -d% -f1 > /tmp/${1}_routerv6
39
	/bin/echo ${3} |cut -d% -f1 > /tmp/${1}_ipv6
40
	/usr/bin/touch /tmp/${1}upv6
39
	echo ${4} |cut -d% -f1 > /tmp/${1}_routerv6
40
	echo ${3} |cut -d% -f1 > /tmp/${1}_ipv6
41
	touch /tmp/${1}upv6
41 42

  
42
	ALLOWOVERRIDE=`/usr/bin/grep -c dnsallowoverride /conf/config.xml`
43
	if [ ${ALLOWOVERRIDE} -gt 0 ]; then
43
	if grep -q dnsallowoverride /conf/config.xml; then
44 44
		# write nameservers to file
45
		if [ "`echo ${6}|grep -c dns1`" -gt 0 ]; then
46
			DNS1=`echo ${6} |awk '{print $2}'`
47
			echo "${DNS1}"> /var/etc/nameserver_v6${1}
48
			/sbin/route change -inet6 "${DNS1}" ${4}
45
		echo -n "" > /var/etc/nameserver_v6${1}
46
		if echo "${6}" | grep -q dns1; then
47
			DNS1=`echo "${6}" | awk '{print $2}'`
48
			echo "${DNS1}" >> /var/etc/nameserver_v6${1}
49
			route change -inet6 "${DNS1}" ${4}
49 50
		fi
50
		if [ "`echo ${7}|grep -c dns2`" -gt 0 ]; then
51
			DNS2=`echo ${7} |awk '{print $2}'`
51
		if echo "${7}" | grep -q dns2; then
52
			DNS2=`echo "${7}" | awk '{print $2}'`
52 53
			echo "${DNS2}" >> /var/etc/nameserver_v6${1}
53
			/sbin/route change -inet6 "${DNS2}" ${4}
54
			route change -inet6 "${DNS2}" ${4}
54 55
		fi
55
		/usr/local/sbin/pfSctl -c 'service reload dns'
56
		/bin/sleep 1
56
		pfSctl -c 'service reload dns'
57
		sleep 1
57 58
	fi
58
	/usr/local/sbin/pfSctl -c "interface newipv6 ${1}"
59
	pfSctl -c "interface newipv6 ${1}"
59 60
fi
60 61

  
61 62
exit 0

Formats disponibles : Unified diff