Paul Eggert
4bbfd28498
utimens, utimensat: work around Solaris UTIME_OMIT bug
...
Solaris 11.1 and Solaris 10 have the same UTIME_OMIT bug that
Linux kernel 2.6.32 does. Work around it in the same way.
* doc/posix-functions/futimens.texi (futimens):
* doc/posix-functions/utimensat.texi (utimensat): Document the bug.
* lib/utimens.c (fdutimens, lutimens):
* lib/utimensat.c (rpl_utimensat): Work around the bug.
2013-04-30 22:33:14 -07:00
Bruno Haible
06b335ade6
Write "Mac OS X" instead of "MacOS X".
...
* README: Write "Mac OS X" instead of "MacOS X".
* build-aux/bootstrap: Likewise.
* build-aux/install-reloc: Likewise.
* lib/acl-internal.h: Likewise.
* lib/acl_entries.c: Likewise.
* lib/argp-ba.c: Likewise.
* lib/argp-pv.c: Likewise.
* lib/config.charset: Likewise.
* lib/copy-acl.c: Likewise.
* lib/csharpexec.c: Likewise.
* lib/euidaccess.c: Likewise.
* lib/fbufmode.c: Likewise.
* lib/fflush.c: Likewise.
* lib/file-has-acl.c: Likewise.
* lib/filemode.h: Likewise.
* lib/fpurge.c: Likewise.
* lib/freadable.c: Likewise.
* lib/freadahead.c: Likewise.
* lib/freading.c: Likewise.
* lib/freadptr.c: Likewise.
* lib/freadseek.c: Likewise.
* lib/fseeko.c: Likewise.
* lib/fseterr.c: Likewise.
* lib/fsusage.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.
* lib/get-rusage-as.c: Likewise.
* lib/get-rusage-data.c: Likewise.
* lib/getdomainname.c: Likewise.
* lib/idpriv-drop.c: Likewise.
* lib/idpriv-droptemp.c: Likewise.
* lib/localcharset.c: Likewise.
* lib/locale.in.h: Likewise.
* lib/localename.c: Likewise.
* lib/mbsrtowcs-state.c: Likewise.
* lib/nproc.c: Likewise.
* lib/passfd.c: Likewise.
* lib/posix_openpt.c: Likewise.
* lib/printf-parse.c: Likewise.
* lib/progreloc.c: Likewise.
* lib/safe-read.h: Likewise.
* lib/safe-write.h: Likewise.
* lib/sched.in.h: Likewise.
* lib/set-mode-acl.c: Likewise.
* lib/signal.in.h: Likewise.
* lib/stdint.in.h: Likewise.
* lib/stdio-impl.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/strtod.c: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/tcgetsid.c: Likewise.
* lib/unistd.in.h: Likewise.
* lib/unlockpt.c: Likewise.
* lib/vasnprintf.c: Likewise.
* lib/vma-iter.c: Likewise.
* lib/wcsrtombs-state.c: Likewise.
* m4/acl.m4: Likewise.
* m4/acosl.m4: Likewise.
* m4/asinl.m4: Likewise.
* m4/atanl.m4: Likewise.
* m4/c-stack.m4: Likewise.
* m4/cosl.m4: Likewise.
* m4/expl.m4: Likewise.
* m4/extensions.m4: Likewise.
* m4/fdatasync.m4: Likewise.
* m4/fmal.m4: Likewise.
* m4/frexp.m4: Likewise.
* m4/frexpf.m4: Likewise.
* m4/frexpl.m4: Likewise.
* m4/fsusage.m4: Likewise.
* m4/getdomainname.m4: Likewise.
* m4/getloadavg.m4: Likewise.
* m4/getopt.m4: Likewise.
* m4/gettext.m4: Likewise.
* m4/gnulib-common.m4: Likewise.
* m4/intdiv0.m4: Likewise.
* m4/intlmacosx.m4: Likewise.
* m4/largefile.m4: Likewise.
* m4/ldexpl.m4: Likewise.
* m4/link-follow.m4: Likewise.
* m4/locale-ar.m4: Likewise.
* m4/locale-fr.m4: Likewise.
* m4/locale-ja.m4: Likewise.
* m4/locale-tr.m4: Likewise.
* m4/locale-zh.m4: Likewise.
* m4/locale_h.m4: Likewise.
* m4/lock.m4: Likewise.
* m4/logl.m4: Likewise.
* m4/mathfunc.m4: Likewise.
* m4/minus-zero.m4: Likewise.
* m4/mktime.m4: Likewise.
* m4/mmap-anon.m4: Likewise.
* m4/multiarch.m4: Likewise.
* m4/nanosleep.m4: Likewise.
* m4/nocrash.m4: Likewise.
* m4/poll.m4: Likewise.
* m4/printf-frexpl.m4: Likewise.
* m4/printf.m4: Likewise.
* m4/signbit.m4: Likewise.
* m4/sinl.m4: Likewise.
* m4/sqrtl.m4: Likewise.
* m4/strerror_r.m4: Likewise.
* m4/tanl.m4: Likewise.
* m4/threadlib.m4: Likewise.
* m4/ttyname_r.m4: Likewise.
* m4/unlink.m4: Likewise.
* m4/visibility.m4: Likewise.
* m4/wcwidth.m4: Likewise.
* tests/minus-zero.h: Likewise.
* tests/test-alloca-opt.c: Likewise.
* tests/test-copy-acl.sh: Likewise.
* tests/test-copy-file.sh: Likewise.
* tests/test-fdatasync.c: Likewise.
* tests/test-file-has-acl.sh: Likewise.
* tests/test-flock.c: Likewise.
* tests/test-fsync.c: Likewise.
* tests/test-localename.c: Likewise.
* tests/test-malloca.c: Likewise.
* tests/test-nonblocking-pipe.h: Likewise.
* tests/test-nonblocking-socket.h: Likewise.
* tests/test-openpty.c: Likewise.
* tests/test-posix_openpt.c: Likewise.
* tests/test-ptsname.c: Likewise.
* tests/test-ptsname_r.c: Likewise.
* tests/test-sameacls.c: Likewise.
* tests/test-select.h: Likewise.
* tests/test-set-mode-acl.sh: Likewise.
* tests/test-snprintf-posix.h: Likewise.
* tests/test-sprintf-posix.h: Likewise.
* tests/test-strtod.c: Likewise.
* tests/test-time.c: Likewise.
* tests/test-vasnprintf-posix.c: Likewise.
* tests/test-vasprintf-posix.c: Likewise.
* doc/acl-resources.txt: Likewise.
* doc/**/*.texi: Likewise.
Reported by Max Horn <max@quendi.de >.
2012-06-22 13:28:15 +02:00
Bruno Haible
4e39aa4288
doc: Update regarding MSVC 9.
...
* doc/gnulib-intro.texi (Target Platforms): Classify MSVC as "rarely
tested".
* doc/posix-functions/*.texi: Update with info about MSVC 9.
* doc/posix-headers/*.texi: Likewise.
* doc/pastposix-functions/*.texi: Likewise.
* doc/glibc-functions/*.texi: Likewise.
* doc/glibc-headers/*.texi: Likewise.
2011-09-11 21:56:17 +02:00
Bruno Haible
ca2c85799a
Documentation about Minix.
...
* doc/posix-headers/*.texi: Add info about Minix 3.1.8.
* doc/glibc-headers/*.texi: Likewise.
* doc/posix-functions/*.texi: Likewise.
* doc/glibc-functions/*.texi: Likewise.
2011-07-31 14:50:18 +02:00
Bruno Haible
6ef93da4ca
Update for NetBSD 5.0.
...
* m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Don't guess yes on
NetBSD; the test fails on NetBSD 5.0.
* doc/{glibc,posix,pastposix}-{headers,functions}/*.texi: Update info
about NetBSD.
2010-11-21 21:31:19 +01:00
Bruno Haible
4ef8b64903
Update for MacOS X 10.5.
...
* m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Don't guess yes on
MacOS X; the test fails on MacOS X 10.5.8.
* doc/{glibc,posix,pastposix}-{headers,functions}/*.texi: Update info
about MacOS X.
2010-11-21 18:43:19 +01:00
Jim Meyering
fe7e2e21b5
fix a documentation typo
...
* doc/posix-functions/futimens.texi (futimens): Fix typo: s/itme/item/
2010-10-11 22:29:19 +02:00
Eric Blake
9dc2cd782c
futimens: work around Solaris 11 bug
...
Revert "test-futimens: avoid unwarranted test failure on Solaris 5.11"
This reverts commit 0afab138f4
.
* m4/futimens.m4 (gl_FUNC_FUTIMENS): Detect the bug.
* tests/test-futimens.h (test_futimens): Enhance, rather than
weaken test.
* doc/posix-functions/futimens.texi (futimens): Document the bug.
Signed-off-by: Eric Blake <eblake@redhat.com >
2010-10-11 14:19:50 -06:00
Karl Berry
80fc442c21
avoid some overlong lines from posix urls, etc.
2010-08-13 11:50:58 -07:00
Eric Blake
9963a98120
utimens: check for ctime update
...
futimens/utimensat on Linux fails to bump ctime if mtime is
UTIME_OMIT and atime is specified.
* tests/test-utimens-common.h (check_ctime): Define.
* tests/test-utimens.h (test_utimens): Expose the Linux bug.
* tests/test-futimens.h (test_futimens): Likewise.
* tests/test-lutimens.h (test_lutimens): Likewise.
* doc/posix-functions/futimens.texi (futimens): Document the bug.
* doc/posix-functions/utimensat.texi (utimensat): Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-12-19 16:56:38 -07:00
Eric Blake
8c871c07bc
utimensat: work around Solaris 9 bug
...
utimes("file/",times) mistakenly succeeds. This commit doesn't fix
utimes, but does make utimensat be careful before calling utimes.
The test is now enhanced to test trailing slashes and directories.
Meanwhile, cygwin 1.5 stat() on a directory changes atime (it does
a readdir under the hood to populate st_nlink), so only mtime of
a directory is reliable enough for testing. Cygwin 1.7 no longer
has this problem, because it no longer wastes time on st_nlink.
* lib/utimens.c (fdutimens, lutimens): Force a stat if platform
has trailing slash bugs.
* tests/test-lutimens.h (test_lutimens): Enhance test.
* tests/test-utimens.h (test_utimens): Likewise.
* doc/posix-functions/utime.texi (utime): Document the bug.
* doc/posix-functions/utimes.texi (utimes): Likewise.
* doc/posix-functions/utimensat.texi (utimensat): Likewise.
* doc/glibc-functions/futimesat.texi (futimesat): Likewise.
* doc/glibc-functions/lutimes.texi (lutimes): Mention utimens.
* doc/posix-functions/futimens.texi (futimens): Mention
limitation.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-10-20 21:21:52 -06:00
Eric Blake
959d9cb463
futimens: new module
...
Provides futimens where it is missing, and rpl_futimens to work
around bugs in older Linux kernels.
* modules/futimens: New file.
* lib/futimens.c (futimens): Likewise.
* m4/futimens.m4 (gl_FUNC_FUTIMENS): Likewise.
* lib/utimens.c (futimens): Avoid recursion into rpl_futimens, so
we can work around Linux bugs.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
* modules/sys_stat (Makefile.am): Substitute them.
* lib/sys_stat.in.h (futimens): Declare it.
* MODULES.html.sh (systems lacking POSIX:2008): Mention module.
* doc/posix-functions/futimens.texi (futimens): Likewise.
* modules/futimens-tests: New test.
* tests/test-futimens.c: Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-10-10 08:52:11 -06:00
Eric Blake
75de3afee5
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.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-10-10 08:25:15 -06:00
Eric Blake
0460b26278
Update doc for cygwin 1.7.
...
* doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
functions.
* doc/posix-functions/fchmodat.texi: Likewise.
* doc/posix-functions/fchownat.texi: Likewise.
* doc/posix-functions/fdopendir.texi: Likewise.
* doc/posix-functions/fmemopen.texi: Likewise.
* doc/posix-functions/freeaddrinfo.texi: Likewise.
* doc/posix-functions/fstatat.texi: Likewise.
* doc/posix-functions/futimens.texi: Likewise.
* doc/posix-functions/gai_strerror.texi: Likewise.
* doc/posix-functions/getaddrinfo.texi: Likewise.
* doc/posix-functions/getnameinfo.texi: Likewise.
* doc/posix-functions/if_freenameindex.texi: Likewise.
* doc/posix-functions/if_indextoname.texi: Likewise.
* doc/posix-functions/if_nameindex.texi: Likewise.
* doc/posix-functions/if_nametoindex.texi: Likewise.
* doc/posix-functions/insque .texi: Likewise.
* doc/posix-functions/linkat.texi: Likewise.
* doc/posix-functions/llrint.texi: Likewise.
* doc/posix-functions/llrintf.texi: Likewise.
* doc/posix-functions/llrintl.texi: Likewise.
* doc/posix-functions/lockf.texi: Likewise.
* doc/posix-functions/lrintl.texi: Likewise.
* doc/posix-functions/mkdirat.texi: Likewise.
* doc/posix-functions/mkfifoat.texi: Likewise.
* doc/posix-functions/mknodat.texi: Likewise.
* doc/posix-functions/mq_close.texi: Likewise.
* doc/posix-functions/mq_getattr.texi: Likewise.
* doc/posix-functions/mq_notify.texi: Likewise.
* doc/posix-functions/mq_open.texi: Likewise.
* doc/posix-functions/mq_receive.texi: Likewise.
* doc/posix-functions/mq_send.texi: Likewise.
* doc/posix-functions/mq_setattr.texi: Likewise.
* doc/posix-functions/mq_timedreceive.texi: Likewise.
* doc/posix-functions/mq_timedsend.texi: Likewise.
* doc/posix-functions/mq_unlink.texi: Likewise.
* doc/posix-functions/open_memstream.texi: Likewise.
* doc/posix-functions/openat.texi: Likewise.
* doc/posix-functions/posix_fadvise.texi: Likewise.
* doc/posix-functions/posix_fallocate.texi: Likewise.
* doc/posix-functions/posix_madvise.texi: Likewise.
* doc/posix-functions/posix_memalign.texi: Likewise.
* doc/posix-functions/posix_openpt.texi: Likewise.
* doc/posix-functions/readlinkat.texi: Likewise.
* doc/posix-functions/remque.texi: Likewise.
* doc/posix-functions/renameat.texi: Likewise.
* doc/posix-functions/rintl.texi: Likewise.
* doc/posix-functions/sem_unlink.texi: Likewise.
* doc/posix-functions/shm_open.texi: Likewise.
* doc/posix-functions/shm_unlink.texi: Likewise.
* doc/posix-functions/signgam.texi: Likewise.
* doc/posix-functions/sigset.texi: Likewise.
* doc/posix-functions/stpcpy.texi: Likewise.
* doc/posix-functions/stpncpy.texi: Likewise.
* doc/posix-functions/strerror.texi: Likewise.
* doc/posix-functions/strtod.texi: Likewise.
* doc/posix-functions/symlinkat.texi: Likewise.
* doc/posix-functions/unlinkat.texi: Likewise.
* doc/posix-functions/utimensat.texi: Likewise.
* doc/glibc-functions/bindresvport.texi: Likewise.
* doc/glibc-functions/dn_expand.texi: Likewise.
* doc/glibc-functions/exp10.texi: Likewise.
* doc/glibc-functions/exp10f.texi: Likewise.
* doc/glibc-functions/fgetxattr.texi: Likewise.
* doc/glibc-functions/flistxattr.texi: Likewise.
* doc/glibc-functions/fopencookie.texi: Likewise.
* doc/glibc-functions/freeifaddrs.texi: Likewise.
* doc/glibc-functions/fremovexattr.texi: Likewise.
* doc/glibc-functions/fsetxattr.texi: Likewise.
* doc/glibc-functions/getifaddrs.texi: Likewise.
* doc/glibc-functions/getxattr.texi: Likewise.
* doc/glibc-functions/lgetxattr.texi: Likewise.
* doc/glibc-functions/listxattr.texi: Likewise.
* doc/glibc-functions/llistxattr.texi: Likewise.
* doc/glibc-functions/lremovexattr.texi: Likewise.
* doc/glibc-functions/lsetxattr.texi: Likewise.
* doc/glibc-functions/pow10.texi: Likewise.
* doc/glibc-functions/pow10f.texi: Likewise.
* doc/glibc-functions/rcmd_af.texi: Likewise.
* doc/glibc-functions/removexattr.texi: Likewise.
* doc/glibc-functions/res_init.texi: Likewise.
* doc/glibc-functions/res_mkquery.texi: Likewise.
* doc/glibc-functions/res_query.texi: Likewise.
* doc/glibc-functions/res_querydomain.texi: Likewise.
* doc/glibc-functions/res_send.texi: Likewise.
* doc/glibc-functions/rresvport_af.texi: Likewise.
* doc/glibc-functions/setxattr.texi: Likewise.
* doc/glibc-functions/strcasestr.texi: Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net >
2008-12-15 07:05:41 -07:00
Bruno Haible
17f87c3231
Document functions that have been added to POSIX:2008.
2008-12-14 19:47:43 +01:00