Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
break behavior
|
|
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
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
breaks
|
|
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
|
|
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.
|
|
This reduces compile time somewhat.
|
|
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.
|
|
|
|
We were pulling junk memory for our stream names after the reordering
of the struct definition.
|
|
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.
|
|
Allows "make test" and other harnesses to print cleaner output.
|
|
|
|
* test if oplocks are granted when requesting delete-on-close
* test how oplocks are broken by byte-range-lock requests
|
|
Allows "make test" and other harnesses to print cleaner output.
|
|
|
|
batch9 already tests for stat-only opens
|
|
metze
|
|
metze
|
|
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
|
|
BATCH22 left to fix.
Jeremy.
|
|
Eventually, we should move some of these parameters into a separate
struct (perhaps into smb_transport_options?), to avoid the long lists of
parameters.
|
|
|
|
|
|
Probably that's already somewhere else, but I did not find it.
|
|
|
|
(This used to be commit 4ca264679ecfd938c538a93f4efff1bfa23c3744)
|
|
(This used to be commit 47ffbbf67435904754469544390b67d34c958343)
|
|
Michael
(This used to be commit 9fa4b53b61064c910b8f5c9c676c971023b8670c)
|
|
metze
(This used to be commit cd1b8efc5d8dc1eec03fe1bf1eb58dbded9584eb)
|
|
Jeremy.
(This used to be commit 4556fafede8691c6a12670695ff108e9e59aff98)
|
|
exemptions.
Jeremy.
(This used to be commit a70719d579a7eefbfd973267b95a87aaa6b649b0)
|
|
Jeremy.
(This used to be commit b2007956aa4534f22ad7fd85b0aee0be769548ae)
|
|
ignore share modes and oplock breaks :-(.
Jeremy.
(This used to be commit a8a5339cf2ca218668f888eced5ffe7ce059553c)
|
|
Also improve the output.
metze
(This used to be commit d0b641a9ee36939468beb427bf6b15892342a33d)
|
|
CAP_LEVEL_II_OPLOCKS
metze
(This used to be commit 4fb2c9fb1f4e3ee23281ca83f8b91d252cbf53c7)
|
|
metze
(This used to be commit 2192d6d2bda2afd2ba1ed0cb68bdfe590b9d50af)
|
|
metze
(This used to be commit 0905f3ebd1cb1ac9cefc4272208add9e5a8d7f59)
|
|
metze
(This used to be commit c459885898c9912df1ae5afff4fef2ff809dc15e)
|
|
metze
(This used to be commit a5476ee41c140123db160b2e36c8c7084619a738)
|
|
But still allow samba3 behavior.
metze
(This used to be commit a0decdf63e2f7ef6ee62a3fda5070b2fccee5682)
|
|
metze
(This used to be commit 656011add338ab87188849c4a716d3c65a102a74)
|
|
metze
(This used to be commit b66c246c5db78db897bcf21a6ea3c777d65cfc6a)
|
|
This is really strange as, it seems to complete ignore
oplocks and share modes and doesn't match the behavior
of RENAME and NTRENAME.
metze
(This used to be commit 7bac95db5edcc7432aea067e0a9ba9230c7dc1b0)
|
|
metze
(This used to be commit 22c35d9ee7858c0ff58d5d0b4a9bf69fe0b8653f)
|