2009-10-10 Eric Blake <ebb9@byu.net>
+ utimens: validate futimens usage
+ * lib/utimens.c (gl_futimens): Require valid fd up front, using
+ fewer syscalls on failure later on. Avoid compiler warning on
+ mingw.
+ * modules/utimens (Depends-on): Add dup2.
+
+ utimens: add test
+ * modules/utimens-tests: New test.
+ * tests/test-utimens.h: New file.
+ * tests/test-futimens.h: Likewise.
+ * tests/test-utimens.c: Likewise.
+
+ doc: mention timestamp portability issues
+ * doc/glibc-functions/lutimes.texi (lutimes): Refer to utimensat
+ instead.
+ * doc/posix-functions/utime.texi (utime): Likewise.
+ * doc/posix-functions/utimes.texi (utimes): Likewise.
+ * doc/glibc-functions/futimes.texi (futimes): Refer to futimens
+ instead.
+ * doc/posix-functions/futimens.texi (futimens): Mention utimens
+ module.
+ * doc/posix-functions/utimensat.texi (utimensat): Likewise.
+ Mention weakness with symlink timestamps.
+ * doc/glibc-functions/futimesat.texi (futimesat): New file; refer
+ to utimensat/futimens instead.
+ * doc/gnulib.texi (Glibc sys/time.h): Include new file.
+
+ test-dup2: enhance test
+ * tests/test-dup2.c (main): Also check AT_FDCWD.
+
+ test-stat-time: avoid more spurious failures
+ * tests/test-stat-time.c (nap): Wait for 15ms rather than 2ms, for
+ xfs; and avoid race if the two timestamps cross quantization edge.
+
relocatable: prefer 'file system' over 'filesystem'
* m4/relocatable-lib.m4 (gl_RELOCATABLE_NOP): Use AS_HELP_STRING.
(gl_RELOCATABLE_LIBRARY_BODY): Fix spelling.