summaryrefslogtreecommitdiff
path: root/examples/zcip.script
blob: e543c304e86dce178ff36780e1be7eeb88f954a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/sh

# only for use as a "zcip" callback script
if [ "x$interface" = x ]
then
	exit 1
fi

# zcip should start on boot/resume and various media changes
case "$1" in
init)
	# for now, zcip requires the link to be already up,
	# and it drops links when they go down.  that isn't
	# the most robust model...
	exit 0
	;;
config)
	if [ "x$ip" = x ]
	then
		exit 1
	fi
	# remember $ip for $interface, to use on restart
	if [ "x$ip" != x -a -w "$ip.$interface" ]
	then
		echo $ip > "$ip.$interface"
	fi
	exec ip address add dev $interface \
		scope link local "$ip/16" broadcast +
	;;
deconfig)
	if [ x$ip = x ]
	then
		exit 1
	fi
	exec ip address del dev $interface local $ip
	;;
esac
exit 1