How exactly does ctime work?

Corinna Vinschen corinna-cygwin@cygwin.com
Wed May 9 07:07:00 GMT 2012


On May  8 16:06, Joshua Hudson wrote:
> We had a weird incident involving ctime changing unexpectedly when
> mtime did not.
> 
> On a normal UNIX system, we'd immediately say somebody changed the
> file and set mtime back, 

Or something has set ctime without setting mtime, like chmod, chown, and
the likes.

>  but on Cygwin, ctime appears to be synthetic.
> How exactly does ctime work on Cygwin?

No, it isn't synthetic, except for FAT or FAT32 filesystems.

NTFS, NFS, Samba etc. support ctime, and it's set by the OS.  Cygwin
just uses the value like any other time value.

On FSes not supporting ctime, ctime is just faked to be == mtime by
Cygwin.

>  I can't find any useful
> documentation except for some mailing list discussions circa 2005 that
> leave me with no answers.

The source code might have helped.  See
http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/cygwin/fhandler_disk_file.cc?rev=1.376&content-type=text/x-cvsweb-markup&cvsroot=src
method fhandler_base::fstat_helper(), right the first comment.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
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



More information about the Cygwin mailing list