1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00

s3-selftest: Add test for posix large reads and writes

This includes encrypted reads and writes, both NTLM and kerberos.

Andrew Bartlett

Signed-off-by: Jeremy Allison <jra@samba.org>

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Jan 28 00:13:57 CET 2012 on sn-devel-104
This commit is contained in:
Andrew Bartlett 2012-01-27 15:20:17 +11:00 committed by Jeremy Allison
parent 7d14f89e29
commit 965b83158d
3 changed files with 87 additions and 5 deletions

View File

@ -485,6 +485,11 @@ $ret->{USERNAME} = KTEST\\Administrator
system("cp $self->{srcdir}/source3/selftest/ktest-krb5_ccache-3 $prefix/krb5_ccache-3");
chmod 0600, "$prefix/krb5_ccache-3";
# We need world access to this share, as otherwise the domain
# administrator from the AD domain provided by ktest can't
# access the share for tests.
chmod 0777, "$prefix/share";
$self->check_or_start($ret, "yes", "no", "yes");
if (not $self->wait_for_start($ret)) {

View File

@ -0,0 +1,62 @@
#!/bin/sh
if [ $# -lt 1 ]; then
cat <<EOF
Usage: test_smbclient_posix_large.sh ccache smbclient3 server prefix <smbclient args>
EOF
exit 1;
fi
KRB5CCNAME=$1
export KRB5CCNAME
SMBCLIENT3=$2
SERVER=$3
PREFIX=$4
shift 4
ADDARGS="$*"
# Test that a noninteractive smbclient does not prompt
test_large_write_read()
{
cat > $PREFIX/largefile-script <<EOF
posix
put $PREFIX/largefile largefile
get largefile $PREFIX/largefile2
rm largefile
quit
EOF
cmd='$SMBCLIENT3 //$SERVER/xcopy_share $ADDARGS < $PREFIX/largefile-script 2>&1'
eval echo "$cmd"
out=`eval $cmd`
if [ $? != 0 ] ; then
echo "$out"
echo "command failed"
false
return
fi
echo "$out" | grep "getting file" >/dev/null 2>&1
if [ $? = 0 ] ; then
true
else
echo did not get success message
false
fi
}
rm -f $PREFIX/largefile
dd if=/dev/zero of=$PREFIX/largefile skip=20M count=1 bs=1
incdir=`dirname $0`/../../../testprogs/blackbox
. $incdir/subunit.sh
testit "smbclient large posix write read" test_large_write_read || failed=`expr $failed + 1`
testit "cmp of read and written files" cmp $PREFIX/largefile $PREFIX/largefile2 || failed=`expr $failed + 1`
rm -f $PREFIX/largefile2
testok $0 $failed

View File

@ -302,19 +302,34 @@ for s in signseal_options:
"$PREFIX/ktest/krb5_ccache-3", binding_string, "-k", configuration])
if have_ads_support:
options_list = ["", "-e"]
for options in options_list:
options_list = ["", "-e"]
for options in options_list:
if have_ads_support:
plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
[os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
"$PREFIX/ktest/krb5_ccache-2",
binpath('smbclient3'), "$SERVER", options, configuration])
plantestsuite("samba3.blackbox.smbclient_krb5 %s" % options, "ktest:local",
plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local",
[os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"),
"$PREFIX/ktest/krb5_ccache-3",
"$PREFIX/ktest/krb5_ccache-2",
binpath('smbclient3'), "$SERVER", options, configuration])
plantestsuite("samba3.blackbox.smbclient_large_file %s" % options, "ktest:local",
[os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
"$PREFIX/ktest/krb5_ccache-3",
binpath('smbclient3'), "$SERVER", "$PREFIX", options, "-k " + configuration])
plantestsuite("samba3.blackbox.smbclient_posix_large %s krb5" % options, "ktest:local",
[os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
"$PREFIX/ktest/krb5_ccache-3",
binpath('smbclient3'), "$SERVER", "$PREFIX", options, "-k " + configuration])
plantestsuite("samba3.blackbox.smbclient_posix_large %s NTLM" % options, "s3dc:local",
[os.path.join(samba3srcdir, "script/tests/test_smbclient_posix_large.sh"),
"none",
binpath('smbclient3'), "$SERVER", "$PREFIX", options, "-U$USERNAME%$PASSWORD " + configuration])
for e in endianness_options:
for a in auth_options:
for s in signseal_options: