#!/bin/sh -
PATH="/bin:/usr/bin:/etc:/usr/etc:/sbin:/usr/sbin"
export PATH
case $1 in
'') 
ad=`netstat -in | awk '($3~/:/) { print "y"; exit}'`
ll=`ifconfig ll0 | sed -n -e 's/.*UP.*/y/p'`
fo=`sysctl net.inet6.ipv6.forwarding | sed -n -e 's/.*1$/y/p'`
case "$ad:$ll:$fo" in
y:y:y) echo "ipv6 on - forwarding on";; 
y::y) echo "ipv6 on - forwarding on - But no LL??";; 
y::|y:y:) echo "ipv6 on - forwarding off";; 
::) echo "ipv6 off";; 
:*) echo -n "ipv6 off"
	case $ll in y) echo -n " - But LL on ??";; esac
	case $fo in y) echo -n " - But ip6 forward on ??";; esac
	echo ""
esac
;;
off|n*|-) 
netstat -in | \
	awk '($3~/:/) { print "ifconfig", $1, "inet6", $3, "delete"}' | sh -x
ndp -a | sed -e 's/).*//' -e 's/.*(/ndp -d /' | sh -x
route -n flush -inet6
route delete -inet6 default
netstat -nrf inet6 | \
	awk '($1~/:/&&$2~/./) { sub("/.*",""); print "route delete -inet6",$1 }' |sh -x
sysctl -w net.inet6.ipv6.forwarding=0
set -x
ifconfig ll0 down
;;
i*|f*|r*|on|o|ou*|+|y*)
(set -x; autoconf6 -6 -v)
case $1 in f*|r*) ini=y;; i*) ini=;;
	*) ini=`ifconfig le1 2>&1 |sed -n -e 's/.*UP.*/y/'`
esac
case $ini in y) sh -x /etc/rc.ipv6 ;; esac
;;
*) echo 1>&2 "Use setipv6 {off|on|init|full}"; exit 1
esac
