
#set -x

setup_ip6 () {
	local prefix=$1
	local prefixLen=${prefix##*/}
	local prefixRaw=${prefix%::/*}
	local myPrefix=${prefixRaw}:${prefixRaw%%:*}
	/sbin/ip -6 addr add ${myPrefix}::1/64 preferred_lft 10 valid_lft 15 noprefixroute dev $interface
}

if [ "$interface" = "vlan832" ]; then

	case $reason in
		PREINIT6)
			/sbin/ip link set dev $interface up
			/bin/ip link set dev $interface type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
		;;
		BOUND6)
			setup_ip6 $new_ip6_prefix
			/bin/rdisc6 -m -w 1000 ff02::2 $interface
			/bin/ip link set dev $interface type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
		;;
		REBIND6)
			/bin/ip link set dev $interface type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
			for currentAddr in $(/sbin/ip -o -6 addr show dev $interface scope global | sed -n '/.*'${prefixMatch}'.*/ {s,.*inet6[[:space:]]\+\([/:[:alnum:]]\+\)[[:space:]]\+.*,\1,;p}'); do
				/sbin/ip -6 address del $currentAddr dev $interface
			done
			/bin/rdisc6 -m -w 1000 ff02::2 $interface
			setup_ip6 $new_ip6_prefix
		;;
		RELEASE6)
			prefixMatch=${new_ip6_prefix%::/*}
			for currentAddr in $(/sbin/ip -o -6 addr show dev $interface scope global | sed -n '/.*'${prefixMatch}'.*/ {s,.*inet6[[:space:]]\+\([/:[:alnum:]]\+\)[[:space:]]\+.*,\1,;p}'); do
			/sbin/ip -6 address del $currentAddr dev $interface
			done
			/bin/ip link set dev $interface type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
		;;
	esac
fi

#set +x
