summaryrefslogtreecommitdiff
path: root/doc/posix-functions/strerror_r.texi
Commit message (Collapse)AuthorAgeFilesLines
* doc: Update for macOS 11.1.Bruno Haible2021-03-211-1/+1
| | | | | | | | | | * doc/posix-headers/*.texi: Update. * doc/glibc-headers/*.texi: Update. * doc/posix-functions/*.texi: Likewise. * doc/pastposix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise. * m4/aligned_alloc.m4 (gl_FUNC_ALIGNED_ALLOC): Update cross-compilation guess.
* doc: Add references to the LSB.Bruno Haible2020-11-221-0/+8
| | | | | * doc/glibc-functions/*.texi: Add references to LSB 5.0. * doc/posix-functions/*.texi: Likewise.
* doc: Update for Mac OS X 10.13.Bruno Haible2020-07-251-1/+1
| | | | | | | | | * doc/*/*.texi: Update. * m4/expm1l.m4: Update comments. * m4/getgroups.m4: Likewise. * m4/getlogin_r.m4: Likewise. * m4/linkat.m4: Likewise. * m4/printf.m4: Likewise.
* Update some URLsPaul Eggert2019-09-221-1/+1
| | | | | | This is a clerical change that mostly changes http: to https: in URLs where either will work. It also updates some URLs that have moved, removes some URLs that no longer work, and fixes related text.
* doc: Remove documentation of OSF/1 as supported platform.Bruno Haible2019-07-061-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/gnulib-intro.texi (Target Platforms): Mention that OSF/1 is unsupported. * doc/glibc-functions/getdomainname.texi: Don't mention OSF/1 specific workarounds. * doc/glibc-functions/pthread_setname_np.texi: Likewise. * doc/glibc-functions/ptsname_r.texi: Likewise. * doc/posix-functions/ceil.texi: Likewise. * doc/posix-functions/ceilf.texi: Likewise. * doc/posix-functions/ceill.texi: Likewise. * doc/posix-functions/fchdir.texi: Likewise. * doc/posix-functions/floor.texi: Likewise. * doc/posix-functions/floorf.texi: Likewise. * doc/posix-functions/fmod.texi: Likewise. * doc/posix-functions/fmodf.texi: Likewise. * doc/posix-functions/fmodl.texi: Likewise. * doc/posix-functions/log.texi: Likewise. * doc/posix-functions/logf.texi: Likewise. * doc/posix-functions/logl.texi: Likewise. * doc/posix-functions/log10.texi: Likewise. * doc/posix-functions/log10f.texi: Likewise. * doc/posix-functions/log10l.texi: Likewise. * doc/posix-functions/log2.texi: Likewise. * doc/posix-functions/log2f.texi: Likewise. * doc/posix-functions/log2l.texi: Likewise. * doc/posix-functions/mbrtowc.texi: Likewise. * doc/posix-functions/recv.texi: Likewise. * doc/posix-functions/recvfrom.texi: Likewise. * doc/posix-functions/remainder.texi: Likewise. * doc/posix-functions/remainderf.texi: Likewise. * doc/posix-functions/remainderl.texi: Likewise. * doc/posix-functions/round.texi: Likewise. * doc/posix-functions/roundf.texi: Likewise. * doc/posix-functions/roundl.texi: Likewise. * doc/posix-functions/send.texi: Likewise. * doc/posix-functions/sendto.texi: Likewise. * doc/posix-functions/setenv.texi: Likewise. * doc/posix-functions/snprintf.texi: Likewise. * doc/posix-functions/tcgetsid.texi: Likewise. * doc/posix-functions/trunc.texi: Likewise. * doc/posix-functions/truncf.texi: Likewise. * doc/posix-functions/truncl.texi: Likewise. * doc/posix-functions/ttyname_r.texi: Likewise. * doc/posix-functions/unsetenv.texi: Likewise. * doc/posix-functions/wcsrtombs.texi: Likewise. * doc/posix-headers/sys_select.texi: Likewise. * doc/posix-headers/wchar.texi: Likewise. * doc/posix-headers/wctype.texi: Likewise. * doc/**/*.texi: Update.
* doc: Add info about Android versions 2.0 to 8.1.Bruno Haible2018-05-131-2/+2
| | | | | * doc/**/*.texi: Add info about functions in all released versions of Bionic.
* strerror_r-posix: Fix behaviour and test failure on Haiku.Bruno Haible2017-10-291-1/+1
| | | | | | | | | * lib/strerror_r.c (strerror_r): Don't assume that valid error numbers are positive. Work around return value 0 instead of ERANGE on Haiku. For unknown error numbers, use a format string consistent with perror(). * doc/posix-functions/strerror_r.texi: Mention the Haiku problem. * tests/test-strerror_r.c (main): Don't assume that valid error numbers are positive.
* doc: Update for MSVC 14.Bruno Haible2017-07-061-1/+1
| | | | | | | | * doc/posix-headers/*.texi: Add info about MSVC 14. * doc/posix-functions/*.texi: Likewise. * doc/pastposix-functions/*.texi: Likewise. * doc/glibc-headers/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise.
* strerror_r-posix: Fixes for MSVC 14.Bruno Haible2017-04-291-0/+4
| | | | | | * lib/strerror_r.c: Include <stdarg.h>. (strerror_r): Provide error messages for errno values 100...140. * doc/posix-functions/strerror_r.texi: Mention the MSVC 14 problem.
* Hyphen and dash fixes.Paul Eggert2012-12-271-1/+1
|
* Write "Mac OS X" instead of "MacOS X".Bruno Haible2012-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>.
* doc: Update regarding MSVC 9.Bruno Haible2011-09-111-1/+1
| | | | | | | | | | * 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.
* Documentation about Minix.Bruno Haible2011-07-311-1/+1
| | | | | | | * 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.
* strerror_r: fix OpenBSD behavior on out-of-rangeEric Blake2011-06-211-0/+5
| | | | | | | | | | | | | | | | | | | On OpenBSD, strerror_r(1000,buf,19) gives "Unknown error: " rather than "Unknown error: 100" while failing with ERANGE. Admittedly, this behavior is nice, since a truncated integer is misleading, but all other platforms use maximal strings on ERANGE and we are already replacing strerror_r for other reasons, so it is easier to work around this behavior than to adjust the testsuite (how do you quickly decide if the only reason that the ERANGE string was shorter than maximal was because the implementation avoided truncating an integer?). This patch intentionally avoids dragging in the strnlen module. * lib/strerror_r.c (strerror_r): Always use maximal string. * doc/posix-functions/strerror_r.texi (strerror_r): Document it. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r-posix: fix on MacOSEric Blake2011-06-081-1/+5
| | | | | | | | | | | | | | | | | | | | | MacOS X 10.5 strerror(0) is "Unknown error: 0", which is not distinguished from "Unknown error: -1" for out-of-range. Worse, strerror_r(0,,) is "Undefined error: 0", although strerror_r for all other out-of-range values matches strerror. * m4/strerror.m4 (gl_FUNC_STRERROR): Flush out MacOS bug. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS): Likewise, and fix logic bug. * lib/strerror_r.c (strerror_r): Fix the bug. * lib/strerror.c (strerror): Likewise. * doc/posix-functions/strerror_r.texi (strerror_r): Document the problem. * doc/posix-functions/strerror.texi (strerror): Likewise. * doc/posix-functions/perror.texi (perror): Likewise. * tests/test-strerror.c (main): Enhance test. * tests/test-strerror_r.c (main): Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r-posix: work around cygwin 1.7.9Eric Blake2011-06-071-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cygwin __xpg_strerror_r clobbers strerror, until cygwin 1.7.10; in this case, we must replace strerror, but there was nothing in strerror.m4 finding fault with cygwin's native strerror. Solve this by splitting strerror_r.m4 into two parts, one for probing for the strerror_r bug, and one for replacing strerror_r based on the presence of bugs unrelated to signature issues; that way, the 'strerror' module in isolation will not replace strerror, but if strerror_r is in use for any other reason, then the two use separate buffers. Note that cygwin's strerror is thread-safe while the gnulib replacement is not; but this is no worse than any other platform where strerror is not thread-safe; in a single-threaded program, the difference is not observable, and in a multi-threaded program, you really shouldn't be using strerror in the first place. Also note that this ends up replacing glibc 2.13 strerror as it deems __xpg_strerror_r broken on that platform, which isn't technically necessary for strerror, but doesn't hurt too much. Meanwhile, glibc 2.14 fixed __xpg_strerror_r, and strerror is not replaced in that scenario. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Split... (gl_FUNC_STRERROR_R_WORKS): ...into new macro, to detect Cygwin bug without replacing strerror_r. * m4/strerror.m4 (gl_FUNC_STRERROR): Replace strerror if strerror_r is buggy, but without requiring strerror_r compilation. * doc/posix-functions/strerror_r.texi (strerror_r): Fix docs. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r: fix Solaris test failuresEric Blake2011-05-241-1/+1
| | | | | | | | | | Solaris 10 populates buf on EINVAL, but not on ERANGE. * lib/strerror_r.c (strerror_r): Partially populate buf on ERANGE failures. * doc/posix-functions/strerror_r.texi (strerror_r): Document this. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r: enforce POSIX recommendationsEric Blake2011-05-241-6/+12
| | | | | | | | | | | | | | POSIX recommends (but does not require) that strerror_r populate buf even on error. But since we guarantee this behavior for strerror, we might as well also guarantee it for strerror_r. * lib/strerror_r.c (safe_copy): New helper method. (strerror_r): Guarantee a non-empty string. * tests/test-strerror_r.c (main): Enhance tests to incorporate recent POSIX rulings and to match our strerror guarantees. * doc/posix-functions/strerror_r.texi (strerror_r): Document this. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r: avoid clobbering strerror on cygwinEric Blake2011-05-211-0/+3
| | | | | | | | | | | | | | | Avoid cygwin strerror_r, since it clobbers strerror buffer through cygwin 1.7.9. __xpg_strerror_r is okay, but if a program is compiled on cygwin 1.7.8 or earlier, it is not available. * lib/strerror_r.c (strerror_r): Don't use cygwin's strerror_r; fall back instead to sys_errlist. * modules/strerror (configure.ac): Add witness. * tests/test-strerror_r.c (main): Enhance test. * doc/posix-functions/strerror_r.texi (strerror_r): Document it. * tests/test-perror2.c (main): Free memory before exit. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r: avoid corrupting errno on SolarisEric Blake2011-05-201-0/+3
| | | | | | | | | | On Solaris, a non-zero return was also reflected into errno. Leaving errno unchanged is a useful feature worth guaranteeing. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Check for Solaris behavior. * doc/posix-functions/strerror_r.texi (strerror_r): Document it. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror: enforce POSIX ruling on strerror(0)Eric Blake2011-05-191-0/+4
| | | | | | | | | | | | | | | http://austingroupbugs.net/view.php?id=382 requires that strerror(0) succeed, but FreeBSD reports "Unknown error: 0" and fails with EINVAL. * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Expose BSD bug. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Likewise. * lib/strerror_r.c (rpl_strerror_r): Work around it. * doc/posix-functions/strerror.texi (strerror): Document it. * doc/posix-functions/strerror_r.texi (strerror_r): Likewise. * tests/test-strerror.c (main): Strengthen test. * tests/test-strerror_r.c (main): Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r-posix: port to cygwinEric Blake2011-02-051-1/+2
| | | | | | | | | | | * lib/strerror_r.c (strerror_r) [__CYGWIN__]: Add cygwin implementation. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Adjust comment. * tests/test-strerror_r.c (main): Fix test. * doc/posix-functions/strerror_r.texi (strerror_r): Document the issue. Signed-off-by: Eric Blake <eblake@redhat.com>
* strerror_r-posix: Update doc.Bruno Haible2010-12-261-1/+1
| | | | | * doc/posix-functions/strerror_r.texi: Update doc about the return value. See <http://sources.redhat.com/bugzilla/show_bug.cgi?id=12204>.
* New module 'strerror_r-posix'.Bruno Haible2010-11-111-6/+33
| | | | | | | | | | | | | | | * lib/string.in.h (strerror_r): New declaration. * lib/strerror_r.c: New file. * m4/strerror_r.m4: New file. * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Check for the declaration of strerror_r. (gl_HEADER_STRING_H_DEFAULTS): Initialize GNULIB_STRERROR_R, HAVE_DECL_STRERROR_R, REPLACE_STRERROR_R. * modules/strerror_r-posix: New file. * modules/string (Makefile.am): Substitute GNULIB_STRERROR_R, HAVE_DECL_STRERROR_R, REPLACE_STRERROR_R. * doc/posix-functions/strerror_r.texi: Mention the new module and the portability problems.
* avoid some overlong lines from posix urls, etc.Karl Berry2010-08-131-1/+1
|
* Refer to new POSIX:2008 standard.Bruno Haible2008-12-141-1/+1
|
* Rename two directories: headers -> posix-headers, functions -> posix-functions.Bruno Haible2008-01-201-0/+27