summaryrefslogtreecommitdiff
path: root/examples/zcip.script
blob: 988e542a4c2fe79d8a0806e4349141006a07c45a (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