Jeremy Allison [Tue, 17 Jul 2007 23:01:02 +0000 (23:01 +0000)]
r23939: Fixes for notify returns. Returned param value must fix inside
max_param or return NT_STATUS_OK.
Jeremy.
(This used to be commit ab4af60d1ab4583fd27deb63b3f7baa1ede3473d)
Jeremy Allison [Tue, 17 Jul 2007 18:48:39 +0000 (18:48 +0000)]
r23935: We were lying to the client in the case of POSIX_UNLINK
if a Windows client had the file open. We were setting
delete on close and returning "ok". The POSIX client then
believed the file was gone (and it wasn't). Fix this to
return SHARING_VIOLATION if there is an existing NTcreateX
open on the file and someone calls POSIX_UNLINK. Still one
more Cthon test to fix but getting closer now. Should
be in 3.0.25c also.
Jeremy.
(This used to be commit 24e625a615447c025b73fed2d3db03c1f11ae596)
Michael Adam [Tue, 17 Jul 2007 13:06:29 +0000 (13:06 +0000)]
r23932: Fill extended status with information in case the validation traverse
functions did not do so but returned an error. (This is the case when
error occurred deeper than at the level of the content checking done by
the per entry validate_fn.)
Michael Adam [Tue, 17 Jul 2007 12:49:22 +0000 (12:49 +0000)]
r23930: Introduce tdb_validate_and_backup:
This is a wrapper around tdb_validate, that does backup handling:
* if the given tdb is valid, a backup is created (name.bak)
* if the tdb is invalid, if a valid bakup is found (validated
with the same validation function) under the name "name.bak"
the orignal tdb is moved to name.corrupt and the backup
is restored.
For the backup handling, a variant of the backup_tdb function
from lib/tdb/tools/tdbbackup.c is included in lib/util_tdb.c.
The copy function for the traverse action eliminates the need
to maintain a global success state by using a struct wrapping
the target tdb and a success flag as the private data.
Jeremy Allison [Tue, 17 Jul 2007 05:55:10 +0000 (05:55 +0000)]
r23913: Revert back to Volker's original logic to fix the
RAW-SFILEINFO-RENAME until I can figure out what
is different from the way CIFSFS drives this in
the cthon tests and the way smbtorture drives it.
Jeremy.
(This used to be commit 99f72dd9af82921de4827b9b9d90d75127332295)
Jeremy Allison [Tue, 17 Jul 2007 04:47:36 +0000 (04:47 +0000)]
r23911: Revert r23910 to try and fix the build farm. I
need to look at this more closely tomorrow.
Stevef's cthon tests definately show we're not
matching Windows behaviour (as his tests pass
against Windows but not SAMBA_3_2) but this isn't
the fix.
Jeremy.
(This used to be commit 90bbc077e15de0493dccda50be9bcdf6e2649137)
Jeremy Allison [Tue, 17 Jul 2007 02:17:23 +0000 (02:17 +0000)]
r23910: We used to deny renames on the
source open for non-delete open.
Turns out this is not the case.
VL please test but this matches
Windows behaviour. (I'll add a
torture test tomorrow).
Jeremy.
(This used to be commit 03e3d587468ce66044814a8a58308b2fe9ab5499)
Jeremy Allison [Tue, 17 Jul 2007 02:06:38 +0000 (02:06 +0000)]
r23909: Get closer to passing the cthon tests for delete open file.
It matters how the target is open.
Jeremy.
(This used to be commit 0989877fd191f7c9e195dc6e45dda5fd026f09dd)
Jeremy Allison [Tue, 17 Jul 2007 00:50:48 +0000 (00:50 +0000)]
r23908: Fix bug with interaction of optimization with
POSIX locking. We can't do lock counts with POSIX,
so stop counting if we get a POSIX lock request.
Jeremy.
(This used to be commit a48e4a29e6774e5e72b9b361a17207b053474521)
Jeremy Allison [Tue, 17 Jul 2007 00:09:56 +0000 (00:09 +0000)]
r23906: Fix POSIX unlink bug found by Steve. If we
used lstat during the open (which we always
do for POSIX) then use lstat for the unlink.
Jeremy.
(This used to be commit 4aad77c27cc277e3d937f674ee620729411e3eaf)
Jeremy Allison [Fri, 13 Jul 2007 01:22:09 +0000 (01:22 +0000)]
r23858: Added srvstr_pull_buf_talloc() and srvstr_pull_talloc()
calls and converted reply_tcon and reply_tconX to use
them - to show the boilerplate usage (valgrind tested).
In conjunction with Volker's srvstr_get_path_talloc()
work this should allow us to start eliminating all
pstrings/fstrings out of the main path processing
code.
I'll watch the build farm tonight...
Jeremy.
(This used to be commit b4eff3f68089f082781afcf90d43faa317949566)
Jeremy Allison [Thu, 12 Jul 2007 18:11:41 +0000 (18:11 +0000)]
r23855: Setting the allocation size updates the modified time
as a write does. Fix bug #4779.
Jeremy.
(This used to be commit ed0e2174a895b25ce2b4e8ffd912ad57b31dd2e9)
Jeremy Allison [Wed, 11 Jul 2007 23:40:14 +0000 (23:40 +0000)]
r23845: Second part of the fix for #4777. Looks like on AIX opendir
returns an errno of ELOOP for a symlink of msdfs:server\path\to\link.
Cope with this by mapping to a known error NT_STATUS_OBJECT_PATH_NOT_FOUND
that we know dfs_path_lookup should ignore.
Jeremy.
(This used to be commit d4a7411c4886c601a917b0f0e53facc7e10dd18e)
Jeremy Allison [Wed, 11 Jul 2007 21:01:06 +0000 (21:01 +0000)]
r23843: Fix bug #4777, reported by Bill Marshall <bmarsh@us.ibm.com>.
Doing a DFS traverse through a deep link could fail (not using
explorer).
Jeremy.
(This used to be commit cd93f0cb00207098014e41e0ba16210cb150b895)
r23839: Try to get the attribute name from schema GUIDs or the display name from
extended rights GUID from ad while dumping the security descriptors's aces.
This would perform much better with a guid cache, but for the rare cases where
it is used
net ads search cn=mymachine ntSecurityDescriptor -U user%pass
Michael Adam [Tue, 10 Jul 2007 16:41:26 +0000 (16:41 +0000)]
r23819: It is currently unnecessary to pass the extended validation status
from the validating child process down to the parent though the
pipe. All the parent evaluates is the overall success, so the exit
status should do.
r23808: Make us a bit more C++ friendly. Thanks to Constantine Vetoshev
<gepardcv@yahoo.com> for checking.
(This used to be commit 84b8a56fe9aef1e0583cf5f5abb037199cf21fd9)
Andrew Tridgell [Tue, 10 Jul 2007 04:04:46 +0000 (04:04 +0000)]
r23800: LGPL is now called GNU Lesser General Public License
not GNU Library General Public License
(This used to be commit 727a6cf2cba8da6b40610409b264e86e6908eb0c)