futimens
POSIX specification:
http://www.opengroup.org/onlinepubs/9699919799/functions/futimens.html
Gnulib module: futimens
Portability problems fixed by Gnulib:
ENOSYS on some platforms:
Linux kernel 2.6.21.
UTIME_OMIT or UTIME_NOW, some systems require
the tv_sec argument to be 0, and don't necessarily handle all
file permissions in the manner required by POSIX:
Linux kernel 2.6.25.
UTIME_OMIT for the modification time, but specifying
an access time, some systems fail to update the change time:
Linux kernel 2.6.32.
AT_FDCWD as the fd argument does not properly fail with
EBADF on some systems:
glibc 2.11, Solaris 11.
Portability problems not fixed by Gnulib:
ENOSYS; the gnulib
module ‘utimens’ provides a more reliable interface fdutimens.
stat modifies the access time of
directories on some platforms, so utimensat can only
effectively change directory modification time:
Cygwin 1.5.x.