Mail Archives: cygwin/2011/10/24/07:49:58
Am 2011-10-24 12:31, schrieb Corinna Vinschen:
> On Oct 24 12:11, Franz Sirl wrote:
>> Am 2011-10-21 17:35, schrieb Corinna Vinschen:
>>> 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?
>>
>> strace attached. Succeeding here depends on the access modes of the
>> open handle(s) or if the directory is not open at all.
>
> That's why I added the step 0. But if the file is open elsewhere,
> this step should not succeed based on the access modes, but only
> based on the sharing modes allowed by the other handle.
Not exactly, at least on W7. For example FILE_SHARE_READ doesn't seem to
matter without FILE_READ_DATA.
>> Your changes work, I just tried the 20111023 snapshot. See the
>> attached strace on Win7/64.
>
> Thanks, it looks like expected now, given NcFsd's behaviour. Note
> that this can't be fixed on NWFS. On NWFS, only the changes to
> upstream coreutils as outlined in
> http://cygwin.com/ml/cygwin/2011-10/msg00481.html will help.
Yes, I noticed that one too, thanks. Any idea when the fix will show up
in Cygwin's coreutils?
>> I also attached the simple testcase I'll submit to Novell. Please
>> let me know if you think something is wrong with the testcase.
>
> Looks good to me. For completeness, maybe you should note that
> delete-on-close works in this scenario, but it's desired that both
> methods work, just as on NTFS, for instance.
Good idea, done.
Thanks for your help!
Franz.
--
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
- Raw text -