1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-15 23:24:37 +03:00

129 Commits

Author SHA1 Message Date
Volker Lendecke
96faaf6c1e torture: Check break level in raw.oplock.exclusive5
This is what Windows does in this case, we don't survive that. We break
to LEVEL2 here. Fixes and more precise test to follow.

We don't survive this anymore. Re-enable later.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
2013-10-23 11:49:05 +02:00
Volker Lendecke
7b51e9f8d3 torture: Add reproducer for bug 10216
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
2013-10-23 11:45:55 +02:00
Volker Lendecke
c92ac4c8ee torture: Extend raw.oplock.batch10
With FAKE_LEVEL_II_OPLOCKS around we did not grant LEVEL2 after
a NO_OPLOCK file got written to. Windows does grant LEVEL2 in this
case. With the have_level2_oplocks in brlocks.tdb we can now grant LEVEL2
in this case as well.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2013-10-15 01:52:29 +02:00
Volker Lendecke
6fbbf94def torture: Extend the raw.oplock.doc1 test
If delete_on_close is set, there is no oplock break. Check that.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2013-10-11 15:07:34 -07:00
Volker Lendecke
196da5925b smbd: Remove FORCE_OPLOCK_BREAK_TO_NONE
This flag existed to break an exclusive or batch oplock in just one
instead of two steps down to "no oplock" when we did an allocation or file
size change.  Running raw.oplock against W2k12 differs in this respect
from W2k3: W2k12 takes two steps (via level2) to break to none. This
removes the special flag that we only had for compatibility with systems
older than W2k12...

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>

Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Fri Sep  6 00:47:07 CEST 2013 on sn-devel-104
2013-09-06 00:47:07 +02:00
Volker Lendecke
778636920b torture: Adapt raw.oplock to w2k12
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2013-09-05 13:46:14 -07:00
Michael Adam
58e62ae776 s4:torture: fix error reporting in the raw.oplock-brl3 test
Error was assigned to a variable that was not returned.

Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Fri Sep 14 14:05:20 CEST 2012 on sn-devel-104
2012-09-14 14:05:20 +02:00
Volker Lendecke
814dc3c62b smbtorture: Test that delete requests are not special
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-09-10 14:58:51 -07:00
Andrew Bartlett
45082a88c7 s4-torture: Improve torture test boilerplate, use torture_assert()
This ensures that if this fails, it is reported as a subunit error correctly.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri May 18 09:35:13 CEST 2012 on sn-devel-104
2012-05-18 09:35:13 +02:00
Stefan Metzmacher
511dc9358d s4:torture: use tctx->ev as event context for polling
metze
2011-11-29 16:00:08 +01:00
Jeremy Allison
3e6e1aed94 Fix a bunch of "warning: variable ‘XXXX’ set but not used [-Wunused-but-set-variable]" warnings from the new gcc.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Mon Nov 21 23:39:08 CET 2011 on sn-devel-104
2011-11-21 23:39:08 +01:00
Simo Sorce
b120c5f288 torture: use tevent_ functions names instead of the legacy event_ ones 2011-08-13 09:54:15 -04:00
Jelmer Vernooij
6dfd88ab0a source4/torture/raw: Fix prototypes for all functions. 2011-03-19 03:20:04 +01:00
Pavel Shilovsky
f453235ce0 smbtorture4 test for bug #7928 - Samba problems with kernel oplocks option set to "no" 2011-01-31 12:03:17 -08:00
Jelmer Vernooij
35fbc7bbda s4-smbtorture: Make test names lowercase and dot-separated.
This is consistent with the test names used by selftest, should
make the names less confusing and easier to integrate with other tools.

Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Dec 11 04:16:13 CET 2010 on sn-devel-104
2010-12-11 04:16:13 +01:00
Andrew Tridgell
6b266b85cf s4-loadparm: 2nd half of lp_ to lpcfg_ conversion
this converts all callers that use the Samba4 loadparm lp_ calling
convention to use the lpcfg_ prefix.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-16 18:24:27 +10:00
Jelmer Vernooij
f9ca9e46ad Finish removal of iconv_convenience in public API's. 2010-05-18 11:45:30 +02:00
Jeremy Allison
0d51bab61e Now we behave as Windows does, remove a Samba3 specific test return.
Jeremy.
2010-05-13 21:27:24 -07:00
Tim Prouty
fd5350de1f s4 torture: Add RAW-OPLOCK-EXCLUSIVE7 which is similar to BATCH19 2009-12-21 17:27:37 -08:00
Tim Prouty
43a8b49f83 s4 torture: Update raw oplock to use win7 as the baseline for rename oplock break behavior 2009-12-21 17:27:36 -08:00
Tim Prouty
c33988c040 s4 torture: Be more permissive with share modes for oplock testing
Share modes are tested elsewhere, and there is currently an outstanding
issue about share mode contention for nt-passthrough levels:

http://lists.samba.org/archive/cifs-protocol/2009-December/001227.html
2009-12-21 17:27:36 -08:00
Tim Prouty
fd0c3a2264 s4 torture: Do a better job of closing open files in RAW-OPLOCK. 2009-12-21 17:27:36 -08:00
Tim Prouty
15e1c61027 s4 torture: Add a new RAW-OPLOCK test: BATCH26
Try a rename with a wide-open share mode on an already open file
and the there is still share mode contention.  For the reason why
see:

http://social.msdn.microsoft.com/Forums/en-US/os_fileservices/thread/3ca14dc9-da1f-4786-a8f7-a86e9903db0c

Msft's anser:

   After further review, The reason for server to fail with sharing
   violation is that the windows server that executes a path-based
   rename request opens the file for DELETE access, but only with
   FILE_SHARED_READ as ShareAccess .  Therefore, the existing
   open(frame 76), which has shared read/write/delete , is compatible
   with the Windows servers access mode (DELETE), but Windows servers
   open is not compatible with access mode in existing open.

   Note that it is correct to state that the logic in Windows server
   could have been written to allow shared read/write/delete in which
   case it would succeed as you mention. The behavior here is
   historical based on the existing implementation.
2009-12-03 18:54:52 -08:00
Tim Prouty
8f7e5732ef s4 torture: Close the third handle in RAW-OPLOCK-BATCH22 2009-12-03 18:54:52 -08:00
Tim Prouty
522d6bc588 s4 torture: Convert an error to a warning in RAW-OPLOCK-BATCH22
Some servers choose to mark a client as bad if they fail an oplock
break request by timing out (win7 is an example).  Once the client is
marked as bad, future oplock requests will timeout instantly.  This
causes subsequent runs of this test to fail, so rather than erroring
out as a failure, a warning is printed instead.

There is also a bug in w2k3 where it was incorrectly returning
contending a share mode lock.  It worked in XP and has been re-fixed
in win7.

This can also now be run against samba3.
2009-12-03 18:54:52 -08:00
Tim Prouty
fc7832602d s4 torture: Convert to a more modern version of read in RAW-OPLOCK-BATCH4 2009-12-03 18:54:52 -08:00
Tim Prouty
af8b7857ca s4 torture: Allow some implementations to break from level1 to none with two breaks 2009-12-03 18:54:52 -08:00
Tim Prouty
4e8b6c5992 s4 torture: Change oplock to use passthrough for exclusive3/batch11
In light of the INVALID_LEVEL that is seen for RAW_SFILEINFO_END_OF_FILE_INFO
requests on a path, I'm changing these back to using the passthrough
RAW_SFILEINFO_END_OF_FILE_INFORMATION to test the oplock break behavior as
originally intended
2009-12-01 11:12:51 -08:00
Tim Prouty
b6f972222f s4 torture: Change RAW-OPLOCK to use the documented version of SET_END_OF_FILE_INFO
The passtrhough version of SET_END_OF_FILE_INFO is tested in
RAW-SFILEINFO-END-OF-FILE.

Additionally, the first opener is changed to use SHARE_WRITE for the
share mode since SET_END_OF_FILE_INFO actually writes data to the file
via truncating/extending.
2009-11-25 08:45:58 -08:00
Andrew Tridgell
84d0047377 s4-torture: ran minimal_includes.pl over source4/torture
This reduces compile time somewhat.
2009-10-20 16:04:46 +11:00
Andrew Tridgell
3c028ff88b s4-smb: declare root_fid as a file handle
In order to implement root_fid in the s4 SMB server we need to declare
it as a handle type, just as for other fnum values in SMB. This
required some extensive (but simple) changes in many bits of code.
2009-10-15 20:03:00 +11:00
Steven Danneman
49fdeaeaf6 s4/torture: fix typo in test comment 2009-10-01 14:59:52 -07:00
Steven Danneman
9af9dbeaf3 s4/torture: fix RAW-OPLOCK-STREAM1 test after commit a11bb14
We were pulling junk memory for our stream names after the reordering
of the struct definition.
2009-09-29 19:25:48 -07:00
Steven Danneman
8c0d239317 s4/torture: Allow receiving of oplock break requests in any order
Previously, the oplock torture tests, being single threaded, required
the server to return oplock break requests, and other SMB packets
in a specific order for us to verify "correctness".

Of course, in several cases the protocol allows the break packets,
especially breaks to levelII to come back in any order.  With tevent
we're now able to wait for oplock breaks in the middle of a torture
test.

I've added a helper to do this, and modified all oplock tests to allow
returning of oplock breaks in any order.
2009-09-29 19:04:36 -07:00
Aravind Srinivasan
6e4bf59d80 s4/torture: convert printf to torture_comment()
Allows "make test" and other harnesses to print cleaner output.
2009-09-29 19:04:36 -07:00
Andrew Tridgell
a11bb148f7 s4/torture: don't mix declarations and code 2009-09-10 12:14:53 +10:00
Aravind Srinivasan
4d7685c1d4 s4/torture: add new SMB oplock tests
* test if oplocks are granted when requesting delete-on-close
* test how oplocks are broken by byte-range-lock requests
2009-09-09 10:22:13 -07:00
Aravind Srinivasan
c091d4b08c s4/torture: convert printf to torture_comment()
Allows "make test" and other harnesses to print cleaner output.
2009-09-09 10:22:12 -07:00
Tim Prouty
5000640bf4 s4 torture: Add new streams oplock test 2009-04-01 20:02:31 -07:00
Tim Prouty
7eb097a66d s4 torture: Change nttransrename to use a normal access mask
batch9 already tests for stat-only opens
2009-02-10 19:35:33 -08:00
Stefan Metzmacher
0ac7792e02 s4:libcliraw: s/private/private_data
metze
2009-02-02 13:08:51 +01:00
Stefan Metzmacher
ab7f003aad s4:torture: s/private/private_data
metze
2009-02-02 13:08:38 +01:00
Stefan Metzmacher
183c379fe5 s4:lib/tevent: rename structs
list=""
list="$list event_context:tevent_context"
list="$list fd_event:tevent_fd"
list="$list timed_event:tevent_timer"

for s in $list; do
	o=`echo $s | cut -d ':' -f1`
	n=`echo $s | cut -d ':' -f2`
	r=`git grep "struct $o" |cut -d ':' -f1 |sort -u`
	files=`echo "$r" | grep -v source3 | grep -v nsswitch | grep -v packaging4`
	for f in $files; do
		cat $f | sed -e "s/struct $o/struct $n/g" > $f.tmp
		mv $f.tmp $f
	done
done

metze
2008-12-29 20:46:40 +01:00
Jeremy Allison
55620b4e3c Samba3 smbd now passes test BATCH23 (with the fix for bug #5979), only BATCH22 left to fix.
Jeremy.
2008-12-17 17:30:18 -08:00
Jelmer Vernooij
ff36c52d8c Remove another use of global_loadparm.
Eventually, we should move some of these parameters into a separate
struct (perhaps into smb_transport_options?), to avoid the long lists of
parameters.
2008-11-02 16:07:28 +01:00
Jelmer Vernooij
3ebc574be4 Fix the build. 2008-11-02 02:30:21 +01:00
Jelmer Vernooij
8b06312f7e Eliminate another instance of global_loadparm. 2008-10-24 13:13:27 +02:00
Volker Lendecke
e037305187 Add the oplock-batch25 test showing that a writeattr does not break an oplock
Probably that's already somewhere else, but I did not find it.
2008-10-14 13:30:13 +02:00
Jelmer Vernooij
235b729309 Cope with API changes. 2008-09-30 03:07:08 +02:00
Jelmer Vernooij
4b9c7df9b7 Avoid event_find_context when a event context is already available.
(This used to be commit 4ca264679ecfd938c538a93f4efff1bfa23c3744)
2008-04-16 23:06:27 +02:00