Sophie

Sophie

distrib > Mageia > 7 > x86_64 > by-pkgid > da44bde7312a6b96de9a8c9fa486b874 > files > 2

bind-testsuite-setup-1-7.mga7.src.rpm

#!/bin/sh
#
# Copyright (C) 2004, 2007-2010, 2012, 2013  Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2000-2003  Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.

# $Id: ifconfig.sh,v 1.59 2010/06/11 23:46:49 tbox Exp $

#
# Set up interface aliases for bind9 system tests.
#
# IPv4: 10.53.0.{1..8}				RFC 1918
# IPv6: fd92:7065:b8e:ffff::{1..8}		ULA
#

config_guess=`automake --print-libdir`/config.guess

# If running on hp-ux, don't even try to run config.guess.
# It will try to create a temporary file in the current directory,
# which fails when running as root with the current directory
# on a NFS mounted disk.

case `uname -a` in
	*HP-UX*) sys=hpux ;;
	*) sys=`sh $config_guess` ;;
esac

case "$2" in
	[1-9]|[1-9][0-9]|[1-9][0-9][0-9]) base=$2;;
	*) base="1"
esac

case "$3" in
	[1-9]|[1-9][0-9]|[1-9][0-9][0-9]) base6=$3;;
	*) base6=$base
esac

case "$1" in

    start|up)
	for ns in 1 2 3 4 5 6 7 8
	do
		if test -n "$base"
		then
			int=`expr $ns + $base - 1`
		else
			int=$ns
		fi
		if test -n "$base6"
		then
			int6=`expr $ns + $base6 - 1`
		else
			int6=$ns
		fi
		case "$sys" in
		    *-pc-solaris2.5.1)
			ifconfig lo0:$int 10.53.0.$ns netmask 0xffffffff up
			;;
		    *-sun-solaris2.[6-7])
			ifconfig lo0:$int 10.53.0.$ns netmask 0xffffffff up
			;;
		    *-*-solaris2.[8-9]|*-*-solaris2.1[0-9])
			/sbin/ifconfig lo0:$int plumb
			/sbin/ifconfig lo0:$int 10.53.0.$ns up
			if test -n "$int6"
			then
				/sbin/ifconfig lo0:$int6 inet6 plumb
				/sbin/ifconfig lo0:$int6 \
					inet6 fd92:7065:b8e:ffff::$ns up
			fi
			;;
		    *-*-linux*)
			ifconfig lo:$int 10.53.0.$ns up netmask 255.255.255.0
			ifconfig lo inet6 add fd92:7065:b8e:ffff::$ns/64
			;;
		    *-unknown-freebsd*)
			ifconfig lo0 10.53.0.$ns alias netmask 0xffffffff
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns alias
			;;
		    *-unknown-netbsd*)
			ifconfig lo0 10.53.0.$ns alias netmask 255.255.255.0
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns alias
			;;
		    *-unknown-openbsd*)
			ifconfig lo0 10.53.0.$ns alias netmask 255.255.255.0
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns alias
			;;
		    *-*-bsdi[3-5].*)
			ifconfig lo0 add 10.53.0.$ns netmask 255.255.255.0
			;;
		    *-dec-osf[4-5].*)
			ifconfig lo0 alias 10.53.0.$ns
			;;
		    *-sgi-irix6.*)
			ifconfig lo0 alias 10.53.0.$ns
			;;
		    *-*-sysv5uw7*|*-*-sysv*UnixWare*|*-*-sysv*OpenUNIX*)
			ifconfig lo0 10.53.0.$ns alias netmask 0xffffffff
			;;
		    *-ibm-aix4.*|*-ibm-aix5.*)
			ifconfig lo0 alias 10.53.0.$ns
			ifconfig lo0 inet6 alias -dad fd92:7065:b8e:ffff::$ns/64
			;;
		    hpux)
			ifconfig lo0:$int 10.53.0.$ns netmask 255.255.255.0 up
			ifconfig lo0:$int inet6 fd92:7065:b8e:ffff::$ns up
			;;
		    *-sco3.2v*)
			ifconfig lo0 alias 10.53.0.$ns
			;;
		    *-darwin*)
			ifconfig lo0 alias 10.53.0.$ns
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns alias
			;;
		    *)
			echo "Don't know how to set up interface.  Giving up."
			exit 1
		esac
	done
	;;

    stop|down)
	for ns in 8 7 6 5 4 3 2 1
	do
		if test -n "$base"
		then
			int=`expr $ns + $base - 1`
		else
			int=$ns 
		fi
		if test -n "$base6"
		then
			int6=`expr $ns + $base6 - 1`
		else
			int6=$ns
		fi
		case "$sys" in
		    *-pc-solaris2.5.1)
			ifconfig lo0:$int 0.0.0.0 down
			;;
		    *-sun-solaris2.[6-7])
			ifconfig lo0:$int 10.53.0.$ns down
			;;
		    *-*-solaris2.[8-9]|*-*-solaris2.1[0-9])
			ifconfig lo0:$int 10.53.0.$ns down
			ifconfig lo0:$int 10.53.0.$ns unplumb
			if test -n "$int6"
			then
				ifconfig lo0:$int6 inet6 down
				ifconfig lo0:$int6 inet6 unplumb
			fi
			;;
		    *-*-linux*)
			ifconfig lo:$int 10.53.0.$ns down
			ifconfig lo inet6 del fd92:7065:b8e:ffff::$ns/64
			;;
		    *-unknown-freebsd*)
			ifconfig lo0 10.53.0.$ns delete
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns delete
			;;
		    *-unknown-netbsd*)
			ifconfig lo0 10.53.0.$ns delete
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns delete
			;;
		    *-unknown-openbsd*)
			ifconfig lo0 10.53.0.$ns delete
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns delete
			;;
		    *-*-bsdi[3-5].*)
			ifconfig lo0 remove 10.53.0.$ns
			;;
		    *-dec-osf[4-5].*)
			ifconfig lo0 -alias 10.53.0.$ns
			;;
		    *-sgi-irix6.*)
			ifconfig lo0 -alias 10.53.0.$ns
			;;
		    *-*-sysv5uw7*|*-*-sysv*UnixWare*|*-*-sysv*OpenUNIX*)
			ifconfig lo0 -alias 10.53.0.$ns
			;;
		    *-ibm-aix4.*|*-ibm-aix5.*)
			ifconfig lo0 delete 10.53.0.$ns
			ifconfig lo0 delete inet6 fd92:7065:b8e:ffff::$ns/64
			;;
		    hpux)
			ifconfig lo0:$int 0.0.0.0
			ifconfig lo0:$int inet6 ::
			;;
		    *-sco3.2v*)
			ifconfig lo0 -alias 10.53.0.$ns
			;;
		    *darwin*)
			ifconfig lo0 -alias 10.53.0.$ns
			ifconfig lo0 inet6 fd92:7065:b8e:ffff::$ns delete
			;;
		    *)
			echo "Don't know how to destroy interface.  Giving up."
			exit 1
		esac
	done

	;;

	*)
		echo "Usage: $0 { up | down } [base]"
		exit 1
esac