This is the mail archive of the cygwin mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Oct 21 16:58, Franz Sirl wrote:I will create a support case with Novell. To make my understanding clear, I think there are actually 2 problems here (Win32 calls for illustration, assuming the directory is already opened):
0. The directory has been opened with all sharing modes allowed "elsewhere".
1. CreateFile(FILE_READ_ATTRIBUTES | DELETE, FILE_SHARE_DELETE) should not succeed, but fail with STATUS_SHARING_VIOLATION
I didn't see a full strace from W7. Did you check that this doesn't happen anyway?
2. CreateFile(FILE_READ_ATTRIBUTES | DELETE, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE) should succeed and the
... and that therefore this second NtCreateFile works as expected?
following SetFileInformationByHandle(DELETE) should succeed too
Yes. It should not be required to open the dir with delete-on-close, just because it's still open elsewhere. After all, the meaning of "setting the delete disposition" is not that the dir has to be deleted immediately if it's still in use.
This is what I came up with after looking what happens against a samba-3.4.3 and WinXP share. Does that sound right?
More or less, yes. I'll check in my changes shortly.
Attachment:
rm-8.4-20111023dll.log
Description: Text document
Attachment:
TestOpenDirDelete_with_NovellClient.cpp
Description: Text document
-- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |