2 # Bootstrap Samba and run a number of tests against it.
15 if [ -z "$TORTURE_MAXTIME" ]; then
19 # disable rpc validation when using valgrind - its way too slow
20 if [ -z "$VALGRIND" ]; then
28 PREFIX=`echo $PREFIX | sed s+//+/+`
31 # allow selection of the test lists
34 if [ $TESTS = "all" ]; then
41 LD_LIBRARY_PATH=$OLD_PWD/bin:$LD_LIBRARY_PATH
42 export LD_LIBRARY_PATH
44 incdir=`dirname $ARG0`
45 echo -n "PROVISIONING..."
46 . $incdir/mktestsetup.sh $PREFIX || exit 1
52 DO_SOCKET_WRAPPER=$ARG3
53 if [ x"$DO_SOCKET_WRAPPER" = x"SOCKET_WRAPPER" ];then
54 SOCKET_WRAPPER_DIR="$PREFIX/w"
55 export SOCKET_WRAPPER_DIR
56 echo "SOCKET_WRAPPER_DIR=$SOCKET_WRAPPER_DIR"
58 echo "NOT USING SOCKET_WRAPPER"
61 incdir=`dirname $ARG0`
62 . $incdir/test_functions.sh
64 #Start slapd before smbd
65 if [ x"$TEST_LDAP" = x"yes" ]; then
66 slapd_start || exit 1;
67 echo -n "LDAP PROVISIONING..."
68 $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS --ldap-backend=$LDAPI || {
69 echo "LDAP PROVISIONING failed: $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS --ldap-backend=$LDAPI"
74 SMBD_TEST_FIFO="$PREFIX/smbd_test.fifo"
76 SMBD_TEST_LOG="$PREFIX/smbd_test.log"
79 SOCKET_WRAPPER_DEFAULT_IFACE=1
80 export SOCKET_WRAPPER_DEFAULT_IFACE
83 SOCKET_WRAPPER_DEFAULT_IFACE=6
84 export SOCKET_WRAPPER_DEFAULT_IFACE
85 TORTURE_INTERFACES='127.0.0.6/8,127.0.0.7/8,127.0.0.8/8,127.0.0.9/8,127.0.0.10/8,127.0.0.11/8'
86 TORTURE_OPTIONS="--option=interfaces=$TORTURE_INTERFACES $CONFIGURATION"
87 # ensure any one smbtorture call doesn't run too long
88 TORTURE_OPTIONS="$TORTURE_OPTIONS --maximum-runtime=$TORTURE_MAXTIME"
89 TORTURE_OPTIONS="$TORTURE_OPTIONS --target=samba4"
90 export TORTURE_OPTIONS
92 if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
93 TORTURE_OPTIONS="$TORTURE_OPTIONS --option=torture:progress=no"
98 # give time for nbt server to register its names
99 echo delaying for nbt name registration
101 # This will return quickly when things are up, but be slow if we need to wait for (eg) SSL init
102 bin/nmblookup $CONFIGURATION $SERVER
103 bin/nmblookup $CONFIGURATION -U $SERVER $SERVER
104 bin/nmblookup $CONFIGURATION $SERVER
105 bin/nmblookup $CONFIGURATION -U $SERVER $NETBIOSNAME
106 bin/nmblookup $CONFIGURATION $NETBIOSNAME
107 bin/nmblookup $CONFIGURATION -U $SERVER $NETBIOSNAME
109 # start off with 0 failures
115 . script/tests/tests_$TESTS.sh
120 kill `cat $PIDDIR/smbd.pid`
122 if [ "$TEST_LDAP"x = "yesx" ]; then
123 kill `cat $PIDDIR/slapd.pid`
127 echo "START: $START ($ARG0)";
128 echo "END: $END ($ARG0)";
130 # if there were any valgrind failures, show them
131 count=`find $PREFIX -name 'valgrind.log*' | wc -l`
132 if [ "$count" != 0 ]; then
133 for f in $PREFIX/valgrind.log*; do
134 if [ -s $f ] && grep -v DWARF2.CFI.reader $f > /dev/null; then
135 echo "VALGRIND FAILURE";
136 failed=`expr $failed + 1`
142 teststatus $ARG0 $failed