1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-12 20:58:37 +03:00

s3: tests: Add test that shows smbd crashes using vfs_fruit with fruit:resource = stream on deleting a file.

Add knownfail.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15099

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Noel Power <npower@samba.org>
(backported from commit 238b2cbb8f352375c448d86b462f13752640e16b)
This commit is contained in:
Jeremy Allison 2022-06-17 17:49:43 -07:00 committed by Jule Anger
parent c7b633f317
commit 31d9de1405
4 changed files with 55 additions and 0 deletions

View File

@ -0,0 +1 @@
^samba3.blackbox.fruit.resource_stream.resource_stream\(fileserver\)

View File

@ -2422,6 +2422,9 @@ sub provision($$)
my $local_symlinks_shrdir="$shrdir/local_symlinks";
push(@dirs,$local_symlinks_shrdir);
my $fruit_resource_stream_shrdir="$shrdir/fruit_resource_stream";
push(@dirs,$fruit_resource_stream_shrdir);
# this gets autocreated by winbindd
my $wbsockdir="$prefix_abs/wbsock";
@ -2982,6 +2985,12 @@ sub provision($$)
fruit:metadata = stream
fruit:zero_file_id=yes
[fruit_resource_stream]
path = $fruit_resource_stream_shrdir
vfs objects = fruit streams_xattr acl_xattr xattr_tdb
fruit:resource = stream
fruit:metadata = stream
[badname-tmp]
path = $badnames_shrdir
guest ok = yes

View File

@ -0,0 +1,41 @@
#!/bin/sh
# this tests copying a file and then deleting it
# to a share using fruit:resource = stream
# BUG: https://bugzilla.samba.org/show_bug.cgi?id=15099
if [ $# -lt 6 ]; then
cat <<EOF
Usage: $0 SERVER SHARE USERNAME PASSWORD LOCAL_PATH SMBCLIENT
EOF
exit 1
fi
SERVER="${1}"
SHARE="${2}"
USERNAME="${3}"
PASSWORD="${4}"
LOCAL_PATH="${5}"
SMBCLIENT="${6}"
SMBCLIENT="$VALGRIND ${SMBCLIENT}"
incdir=$(dirname "$0")/../../../testprogs/blackbox
. "$incdir/subunit.sh"
failed=0
put_then_delete_file()
{
$SMBCLIENT //"$SERVER"/"$SHARE" -U"$USERNAME"%"$PASSWORD" -c "lcd $LOCAL_PATH; put src dst; rm dst" >/dev/null 2>&1
}
rm -f "$LOCAL_PATH/src"
rm -f "$LOCAL_PATH/dst"
touch "$LOCAL_PATH/src"
testit "resource_stream" put_then_delete_file || failed=$((failed + 1))
rm -f "$LOCAL_PATH/src"
rm -f "$LOCAL_PATH/dst"
testok "$0" "$failed"

View File

@ -657,6 +657,10 @@ for env in ["fileserver"]:
plantestsuite("samba3.blackbox.fifo", env,
[os.path.join(samba3srcdir, "script/tests/test_fifo.sh"),
'$SERVER', '$DOMAIN', 'gooduser', '$PASSWORD', '$PREFIX', env, smbclient3])
plantestsuite("samba3.blackbox.fruit.resource_stream", env,
[os.path.join(samba3srcdir, "script/tests/test_fruit_resource_stream.sh"),
'$SERVER', 'fruit_resource_stream', '$USERNAME', '$PASSWORD',
'$LOCAL_PATH/fruit_resource_stream', smbclient3])
for env in ["fileserver:local"]:
plantestsuite("samba3.blackbox.net_usershare", env, [os.path.join(samba3srcdir, "script/tests/test_net_usershare.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient3])