r3032: Somewhat stricter syntax for binding strings:
[samba.git] / source4 / script / tests / test_echo.sh
1 #!/bin/sh
2
3 if [ $# -lt 4 ]; then
4 cat <<EOF
5 Usage: test_echo.sh SERVER USERNAME PASSWORD DOMAIN
6 EOF
7 exit 1;
8 fi
9
10 server="$1"
11 username="$2"
12 password="$3"
13 domain="$4"
14 shift 4
15
16 testit() {
17    cmdline="$*"
18    if ! $cmdline > test.$$ 2>&1; then
19        cat test.$$;
20        rm -f test.$$;
21        echo "TEST FAILED - $cmdline";
22        exit 1;
23    fi
24    rm -f test.$$;
25 }
26
27 for transport in ncacn_np ncacn_ip_tcp; do
28  for bindoptions in connect sign seal sign,seal validate padcheck bigendian bigendian,seal; do
29   for ntlmoptions in \
30         "--option=ntlmssp_client:ntlm2=yes" \
31         "--option=ntlmssp_client:ntlm2=no" \
32         "--option=ntlmssp_client:ntlm2=yes --option=ntlmssp_client:128bit=no" \
33         "--option=ntlmssp_client:ntlm2=no  --option=ntlmssp_client:128bit=no" \
34         "--option=ntlmssp_client:ntlm2=yes --option=ntlmssp_client:keyexchange=no" \
35         "--option=ntlmssp_client:ntlm2=no  --option=ntlmssp_client:keyexchange=no" \
36     ; do
37    echo Testing $transport with $bindoptions and $ntlmoptions
38    testit bin/smbtorture $transport:"$server[$bindoptions]" $ntlmoptions -U"$username"%"$password" -W $domain RPC-ECHO "$*"
39   done
40  done
41 done
42
43 # separately test the print option - its v slow
44 echo Testing print option
45 testit bin/smbtorture ncacn_np:"$server[print]" -U"$username"%"$password" -W $domain RPC-ECHO "$*"
46
47 echo "ALL OK";