| delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org AB9B53857C4B |
| DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; |
| s=default; t=1709731748; | |
| bh=4GYY9qNwpYxLnqMymjm0HYfP9C1sTUqmfLlbHhREbK0=; | |
| h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe: | |
| List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: | |
| From; | |
| b=NxNGPJ7sDISZbpHN83ukGydLB4ZIkiv8G4wlkLa/VHrKtSWyCsRf6hXFxHBa4hmML | |
| 8YvOYOTsfsWc6+og5gFAP82KSzVIYRAh20B5vhI3f+7IcROnDVxmjwwIXji/0uhWi3 | |
| rG6lSYUzaT4qoX6mWwL+VOtCs5f81pyG9l5QDJfc= | |
| X-Original-To: | cygwin AT cygwin DOT com |
| Delivered-To: | cygwin AT cygwin DOT com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org 60C5C38582A3 |
| Date: | Wed, 6 Mar 2024 14:28:14 +0100 |
| To: | cygwin AT cygwin DOT com |
| Subject: | Re: ls/stat on OneDrive causes download of files |
| Message-ID: | <ZehvbhVizZTBSaRR@calimero.vinschen.de> |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| References: | <CAC9GOO-RbcR5YOPyk6qVDuVSdDK4M=f1V8bHvz7yvoaHjGUZnQ AT mail DOT gmail DOT com> |
| <ZehuDAKd3ceXlfba AT calimero DOT vinschen DOT de> | |
| MIME-Version: | 1.0 |
| In-Reply-To: | <ZehuDAKd3ceXlfba@calimero.vinschen.de> |
| X-BeenThere: | cygwin AT cygwin DOT com |
| X-Mailman-Version: | 2.1.30 |
| List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
| List-Unsubscribe: | <https://cygwin.com/mailman/options/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe> | |
| List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
| List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
| From: | Corinna Vinschen via Cygwin <cygwin AT cygwin DOT com> |
| Reply-To: | cygwin AT cygwin DOT com |
| Cc: | Corinna Vinschen <corinna-cygwin AT cygwin DOT com> |
| Errors-To: | cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com |
| Sender: | "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com> |
On Mar 6 14:22, Corinna Vinschen via Cygwin wrote:
> On Mar 5 19:54, Marcin Wisnicki via Cygwin wrote:
> > If I invoke ls or anything else that does stat inside OneDrive folder
> > it will trigger download of all files.
> >
> > OneDrive uses placeholder files[1] to represent remote files.
> >
> > I'm guessing reading file content in stat is to support detection of
> > actually executable files as in here[2]?
> >
> > I think this should be disabled on non-hydrated placeholder files.
> > Running `find` or 'ls -R` and having your entire OneDrive downloaded
> > is extremely problematic.
> >
> > I could live without executable scripts in the OneDrive folder and
> > it's easy to mark files as always offline to solve it.
> >
> > Another idea is to skip checking files with extensions known to be
> > non-executable such as jpg (or just any extensions that is not known
> > to be executable).
>
> Nothing of this makes sense from a POSIX library POV. The library can
> either not handle placeholder files specially, as today, or it can
> handle them all the same way.
>
> Given these placeholder files are actually reparse points of type
> IO_REPARSE_TAG_FILE_PLACEHOLDER, we can handle them as symbolic links.
>
> However, the structure of the IO_REPARSE_TAG_FILE_PLACEHOLDER reparse
> data buffer is undocumented. It would be helpful if somebody using
> OneDrive would examine the content of the attached REPARSE_DATA_BUFFER.
>
> > [2] https://github.com/msys2/msys2-runtime/blob/msys2-3.4.10/winsup/cygwin/fhandler/disk_file.cc#L548
>
> The NtReadFile call at this point is not the problem. It would be
> helpful to point to Cygwin's source instead of MSYS2, btw.
Oh, btw., this is from
https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-fscc/c8e77b37-3909-4fe6-a4ea-2b9d423b1ee4:
IO_REPARSE_TAG_FILE_PLACEHOLDER
0x80000015
Obsolete.
---------
Used by Windows Shell for legacy placeholder files in Windows 8.1.
Server-side interpretation only, not meaningful over the wire.
So even if we support them, what is their replacement in W10 and later?
Corinna
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |