s3:test_wbinfo_s3: test --check-secret and --change-secret
[ira/wip.git] / source3 / script / tests / test_posix_s3.sh
1 #!/bin/sh
2
3 # this runs the file serving tests that are expected to pass with samba3
4
5 if [ $# -lt 3 ]; then
6 cat <<EOF
7 Usage: test_posix_s3.sh UNC USERNAME PASSWORD <first> <smbtorture args>
8 EOF
9 exit 1;
10 fi
11
12 unc="$1"
13 username="$2"
14 password="$3"
15 start="$4"
16 shift 4
17 ADDARGS="$*"
18
19 test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
20 incdir=`dirname $0`
21 . $incdir/test_functions.sh
22 }
23
24 base="BASE-ATTR BASE-CHARSET BASE-CHKPATH BASE-DEFER_OPEN BASE-DELAYWRITE BASE-DELETE"
25 base="$base BASE-DENY1 BASE-DENY2 BASE-DENY3 BASE-DENYDOS BASE-DIR1 BASE-DIR2"
26 base="$base BASE-DISCONNECT BASE-FDPASS BASE-LOCK"
27 base="$base BASE-MANGLE BASE-NEGNOWAIT BASE-NTDENY1"
28 base="$base BASE-NTDENY2 BASE-OPEN BASE-OPENATTR BASE-PROPERTIES BASE-RENAME BASE-RW1"
29 base="$base BASE-SECLEAK BASE-TCON BASE-TCONDEV BASE-TRANS2 BASE-UNLINK BASE-VUID"
30 base="$base BASE-XCOPY BASE-SAMBA3ERROR"
31
32 raw="RAW-ACLS RAW-CHKPATH RAW-CLOSE RAW-COMPOSITE RAW-CONTEXT RAW-EAS"
33 raw="$raw RAW-IOCTL RAW-LOCK RAW-MKDIR RAW-MUX RAW-NOTIFY RAW-OPEN RAW-OPLOCK"
34 raw="$raw RAW-QFILEINFO RAW-QFSINFO RAW-READ RAW-RENAME RAW-SEARCH RAW-SEEK"
35 raw="$raw RAW-SFILEINFO-BASE RAW-SFILEINFO-BUG RAW-STREAMS RAW-UNLINK RAW-WRITE"
36 raw="$raw RAW-SAMBA3HIDE RAW-SAMBA3BADPATH RAW-SFILEINFO-RENAME"
37 raw="$raw RAW-SAMBA3CASEINSENSITIVE RAW-SAMBA3POSIXTIMEDLOCK"
38 raw="$raw RAW-SAMBA3ROOTDIRFID RAW-SFILEINFO-END-OF-FILE"
39
40 rpc="RPC-AUTHCONTEXT RPC-BINDSAMBA3 RPC-SAMBA3-SRVSVC RPC-SAMBA3-SHARESEC"
41 rpc="$rpc RPC-SAMBA3-SPOOLSS RPC-SAMBA3-WKSSVC RPC-SAMBA3-WINREG"
42 rpc="$rpc RPC-SAMBA3-GETALIASMEMBERSHIP-0"
43 rpc="$rpc RPC-NETLOGSAMBA3 RPC-SAMBA3SESSIONKEY RPC-SAMBA3-GETUSERNAME"
44 rpc="$rpc RPC-SVCCTL RPC-NTSVCS"
45 rpc="$rpc RPC-SPOOLSS RPC-SPOOLSS-WIN RPC-SPOOLSS-NOTIFY RPC-SPOOLSS-PRINTER"
46 rpc="$rpc RPC-LSA-GETUSER RPC-LSA-LOOKUPSIDS RPC-LSA-LOOKUPNAMES"
47 rpc="$rpc RPC-LSA-PRIVILEGES "
48 rpc="$rpc RPC-SAMR RPC-SAMR-USERS RPC-SAMR-USERS-PRIVILEGES RPC-SAMR-PASSWORDS"
49 rpc="$rpc RPC-SAMR-PASSWORDS-PWDLASTSET RPC-SAMR-LARGE-DC RPC-SAMR-MACHINE-AUTH"
50 rpc="$rpc RPC-NETLOGON-S3 RPC-NETLOGON-ADMIN"
51 rpc="$rpc RPC-SCHANNEL RPC-SCHANNEL2 RPC-BENCH-SCHANNEL1 RPC-JOIN"
52
53 local="LOCAL-NSS-WRAPPER LOCAL-NDR"
54
55 winbind="WINBIND-STRUCT WINBIND-WBCLIENT"
56
57 # NOTE: to enable the UNIX-WHOAMI test, we need to change the default share
58 # config to allow guest access. I'm not sure whether this would break other
59 # tests, so leaving it alone for now -- jpeach
60 unix="UNIX-INFO2"
61
62 tests="$base $raw $rpc $unix $local $winbind"
63
64 if test "x$POSIX_SUBTESTS" != "x" ; then
65         tests="$POSIX_SUBTESTS"
66 fi
67
68 skipped="BASE-CHARSET BASE-TCONDEV"
69 skipped="$skipped RAW-ACLS RAW-COMPOSITE RAW-CONTEXT"
70 skipped="$skipped RAW-IOCTL"
71 skipped="$skipped RAW-QFILEINFO RAW-QFSINFO"
72 skipped="$skipped RAW-SFILEINFO-BASE"
73
74 echo "WARNING: Skipping tests $skipped"
75
76 ADDARGS="$ADDARGS --option=torture:sharedelay=100000"
77 #ADDARGS="$ADDARGS --option=torture:writetimeupdatedelay=500000"
78
79 failed=0
80 for t in $tests; do
81     if [ ! -z "$start" -a "$start" != $t ]; then
82         continue;
83     fi
84     skip=0
85     for s in $skipped; do
86         if [ x"$s" = x"$t" ]; then
87             skip=1;
88             break;
89         fi
90     done
91     if [ $skip = 1 ]; then
92         continue;
93     fi
94     start=""
95     name="$t"
96     if [ "$t" = "BASE-DELAYWRITE" ]; then
97             testit "$name" $VALGRIND $SMBTORTURE4 $TORTURE4_OPTIONS --maximum-runtime=900 $ADDARGS $unc -U"$username"%"$password" $t || failed=`expr $failed + 1`
98     else
99             testit "$name" $VALGRIND $SMBTORTURE4 $TORTURE4_OPTIONS $ADDARGS $unc -U"$username"%"$password" $t || failed=`expr $failed + 1`
100     fi
101     if [ "$t" = "RAW-CHKPATH" ]; then
102             echo "Testing with case sensitive"
103             testit "$name" $VALGRIND $SMBTORTURE4 $TORTURE4_OPTIONS $ADDARGS "$unc"case -U"$username"%"$password" $t || failed=`expr $failed + 1`
104     fi
105 done
106
107 testok $0 $failed