On Apr 5 04:26, Martin Wege via Cygwin wrote: > On Fri, Apr 5, 2024 at 2:05 AM Martin Wege <martin.l.w...@gmail.com> wrote: > > > > Hello, > > > > I have problems with debugging, so a quick help would be appreciated, > > as I cannot figure this out after several hours of digging. > > > > Cygwin /usr/bin/stat returns "Birth: -" for some files. Which value > > must the CreationTime member of FILE_BASIC_INFORMATION have to cause > > /usr/bin/stat ti return "-"? 0, -1, or something else? > > In a related matter: > The Win32 FILE_BASIC_INFORMATION structure defines four time values: > > LARGE_INTEGER CreationTime; > LARGE_INTEGER LastAccessTime; > LARGE_INTEGER LastWriteTime; > LARGE_INTEGER ChangeTime; > > How can a filesystem indicate if it does not support a particular > timestamp, such as ChangeTime? Should ChangeTime.QuadPart then be -1, > -2 or 0, or another value?
I'm not aware of a filesystem not supporting ChangeTime, that is, st_ctime. Usually only CreationTime (st_birthtime) is missing. I think setting the timestamp to 0 works for indicating that this kind of timestamp is not supported. Cygwin is handling Windows timestamps this way, but I can't find this in documentation ATM. But the FS driver can also just fill the CreationTime field with the same value as LastWriteTime or ChangeTime. MSFT NFS does that. 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