1# $FreeBSD$ 2# VNAT/jail utility functions 3## 4 5vnet_init() 6{ 7 if [ "`sysctl -i -n kern.features.vimage`" != 1 ]; then 8 atf_skip "This test requires VIMAGE" 9 fi 10} 11 12vnet_mkepair() 13{ 14 ifname=$(ifconfig epair create) 15 echo $ifname >> created_interfaces.lst 16 echo ${ifname%a} 17} 18 19vnet_mkbridge() 20{ 21 ifname=$(ifconfig bridge create) 22 echo $ifname >> created_interfaces.lst 23 echo ${ifname} 24} 25 26vnet_mkjail() 27{ 28 jailname=$1 29 shift 30 31 vnet_interfaces= 32 for ifname in $@ 33 do 34 vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}" 35 done 36 jail -c name=${jailname} persist vnet ${vnet_interfaces} 37 38 echo $jailname >> created_jails.lst 39} 40 41vnet_cleanup() 42{ 43 if [ -f created_jails.lst ]; then 44 for jailname in `cat created_jails.lst` 45 do 46 jail -r ${jailname} 47 done 48 rm created_jails.lst 49 fi 50 51 if [ -f created_interfaces.lst ]; then 52 for ifname in `cat created_interfaces.lst` 53 do 54 ifconfig ${ifname} destroy 55 done 56 rm created_interfaces.lst 57 fi 58} 59