summaryrefslogtreecommitdiff
path: root/gnulib/doc/posix-functions/futimens.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gnulib/doc/posix-functions/futimens.texi')
m---------gnulib0
-rw-r--r--gnulib/doc/posix-functions/futimens.texi48
2 files changed, 48 insertions, 0 deletions
diff --git a/gnulib b/gnulib
deleted file mode 160000
-Subproject 443bc5ffcf7429e557f4a371b0661abe98ddbc1
diff --git a/gnulib/doc/posix-functions/futimens.texi b/gnulib/doc/posix-functions/futimens.texi
new file mode 100644
index 0000000..722a114
--- /dev/null
+++ b/gnulib/doc/posix-functions/futimens.texi
@@ -0,0 +1,48 @@
+@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.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, Minix 3.1.8,
+AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw, MSVC 9,
+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.
+@item
+Passing @code{AT_FDCWD} as the fd argument does not properly fail with
+@code{EBADF} on some systems:
+glibc 2.11, Solaris 11.
+@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