2 @section @code{utimensat}
5 POSIX specification: @url{http://www.opengroup.org/onlinepubs/9699919799/functions/utimensat.html}
7 Gnulib module: utimensat
9 Portability problems fixed by Gnulib:
12 This function is missing on some platforms:
13 glibc 2.3.6, MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, AIX
14 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw,
17 This function returns a bogus value instead of failing with
18 @code{ENOSYS} on some platforms:
21 When using @code{UTIME_OMIT} or @code{UTIME_NOW}, some systems require
22 the @code{tv_sec} argument to be 0, and don't necessarily handle all
23 file permissions in the manner required by POSIX:
27 Portability problems not fixed by Gnulib:
30 On some platforms, timestamps of symbolic links cannot be modified, so
31 the replacement fails with @code{ENOSYS} if passed the flag
32 @code{AT_SYMLINK_NOFOLLOW} on a symlink.
34 The mere act of using @code{lstat} modifies the access time of
35 symlinks on some platforms, so @code{utimensat} with
36 @code{AT_SYMLINK_NOFOLLOW} can only effectively change modification time:
40 The gnulib module utimens provides a similar interface.