view doc/posix-functions/futimens.texi @ 13776:2285cf35fa15

docs: update cygwin progress * doc/glibc-functions/mkostemp.texi (mkostemp): Added in cygwin 1.7.6. * doc/glibc-functions/mkostemps.texi (mkostemps): Likewise. * doc/posix-headers/fenv.texi (fenv.h): Added after cygwin 1.7.7. * doc/posix-functions/feclearexcept.texi (feclearexcept): Likewise. * doc/posix-functions/fegetenv.texi (fegetenv): Likewise. * doc/posix-functions/fegetexceptflag.texi (fegetexceptflag): Likewise. * doc/posix-functions/fegetround.texi (fegetround): Likewise. * doc/posix-functions/feholdexcept.texi (feholdexcept): Likewise. * doc/posix-functions/feraiseexcept.texi (feraiseexcept): Likewise. * doc/posix-functions/fesetenv.texi (fesetenv): Likewise. * doc/posix-functions/fesetexceptflag.texi (fesetexceptflag): Likewise. * doc/posix-functions/fesetround.texi (fesetround): Likewise. * doc/posix-functions/fetestexcept.texi (fetestexcept): Likewise. * doc/posix-functions/feupdateenv.texi (feupdateenv): Likewise. * doc/glibc-functions/feenableexcept.texi (feenableexcept): Likewise. * doc/glibc-functions/fedisableexcept.texi (fedisableexcept): Likewise. * doc/glibc-functions/fegetexcept.texi (fegetexcept): Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
author Eric Blake <eblake@redhat.com>
date Thu, 07 Oct 2010 08:42:24 -0600
parents bb0ceefd22dc
children 586d7f932642
line wrap: on
line source

@node futimens
@section @code{futimens}
@findex futimens

POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/futimens.html}

Gnulib module: futimens

Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
glibc 2.3.6, MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, AIX
5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw,
Interix 3.5, BeOS.
However, the replacement function may end up truncating timestamps to
less resolution than supported by the file system.
@item
This function returns a bogus value instead of failing with
@code{ENOSYS} on some platforms:
Linux kernel 2.6.21.
@item
When using @code{UTIME_OMIT} or @code{UTIME_NOW}, some systems require
the @code{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.
@item
When using @code{UTIME_OMIT} for the modification time, but specifying
an access time, some systems fail to update the change time:
Linux kernel 2.6.32.
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
Some platforms lack the ability to change the timestamps of a file
descriptor, so the replacement can fail with @code{ENOSYS}; the gnulib
module @samp{utimens} provides a more reliable interface @code{fdutimens}.
@item
The mere act of using @code{stat} modifies the access time of
directories on some platforms, so @code{utimensat} can only
effectively change directory modification time:
Cygwin 1.5.x.
@end itemize