1231855Sbz#!/bin/sh
2231855Sbz#-
3231855Sbz# Copyright (c) 2012 Cisco Systems, Inc.
4231855Sbz# All rights reserved.
5231855Sbz#
6231855Sbz# This software was developed by Bjoern Zeeb under contract to
7231855Sbz# Cisco Systems, Inc..
8231855Sbz#
9231855Sbz# Redistribution and use in source and binary forms, with or without
10231855Sbz# modification, are permitted provided that the following conditions
11231855Sbz# are met:
12231855Sbz# 1. Redistributions of source code must retain the above copyright
13231855Sbz#    notice, this list of conditions and the following disclaimer.
14231855Sbz# 2. Redistributions in binary form must reproduce the above copyright
15231855Sbz#    notice, this list of conditions and the following disclaimer in the
16231855Sbz#    documentation and/or other materials provided with the distribution.
17231855Sbz#
18231855Sbz# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19231855Sbz# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20231855Sbz# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21231855Sbz# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22231855Sbz# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23231855Sbz# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24231855Sbz# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25231855Sbz# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26231855Sbz# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27231855Sbz# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28231855Sbz# SUCH DAMAGE.
29231855Sbz#
30231855Sbz# $FreeBSD$
31231855Sbz#
32231855Sbz
33231855Sbzcd `dirname $0`
34231855Sbz
35231855SbzEXECUTABLE=`basename $0 .t`
36231855Sbz
37231855SbzFIBS=`sysctl -n net.fibs`
38231855SbzINET=`sysctl -n kern.features.inet`
39231855SbzINET6=`sysctl -n kern.features.inet6`
40231855Sbz
41231855Sbzcase "${INET}" in
42231855Sbz1)	OPTS="${OPTS} -DINET" ;;
43231855Sbz*)	INET=0 ;;
44231855Sbzesac
45231855Sbzcase "${INET6}" in
46231855Sbz1)	OPTS="${OPTS} -DINET6" ;;
47231855Sbz*)	INET6=0 ;;
48231855Sbzesac
49231855Sbz
50231855Sbzmake ${EXECUTABLE} ${OPTS} 2>&1 > /dev/null
51231855Sbz
52231855Sbz# two out of bounds on each side + 3 random
53231855SbzFIBS=$((2 + FIBS + 2 + 3))
54231855Sbz# ROUTE and LOCAL are 1 domain together given 2 or 1 types only
55231855SbzTESTS=$(((1 + ${INET} + ${INET6}) * 3 * ${FIBS}))
56231855Sbz
57231855Sbzecho "1..${TESTS}"
58231855Sbz
59231855Sbzexec ./${EXECUTABLE}
60