Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       strerror, strerror_r - get error message string

SYNOPSIS

       #include <string.h>

       char *strerror(int errnum);

       int strerror_r(int errnum, char *strerrbuf, size_t buflen);

DESCRIPTION

       For  strerror():   The functionality described on this reference page is aligned with the ISO C standard.
       Any conflict between the requirements described here and the ISO C standard is unintentional. This volume
       of IEEE Std 1003.1-2001 defers to the ISO C standard.

       The strerror() function shall map the error number in errnum to a locale-dependent error  message  string
       and  shall return a pointer to it. Typically, the values for errnum come from errno, but strerror() shall
       map any value of type int to a message.

       The string pointed to shall not be modified by the application, but may be overwritten  by  a  subsequent
       call to strerror()  or perror().

       The  contents  of the error message strings returned by strerror() should be determined by the setting of
       the LC_MESSAGES category in the current locale.

       The implementation shall behave as if no function defined in this volume  of  IEEE Std 1003.1-2001  calls
       strerror().

       The strerror() function shall not change the setting of errno if successful.

       Since  no  return  value  is  reserved  to  indicate  an error, an application wishing to check for error
       situations should set errno to 0, then call strerror(), then check errno.

       The strerror() function need not be reentrant. A function that is not required to  be  reentrant  is  not
       required to be thread-safe.

       The strerror_r() function shall map the error number in errnum to a locale-dependent error message string
       and shall return the string in the buffer pointed to by strerrbuf, with length buflen.

RETURN VALUE

       Upon  successful  completion, strerror() shall return a pointer to the generated message string. On error
       errno may be set, but no return value is reserved to indicate an error.

       Upon successful completion, strerror_r() shall return 0. Otherwise, an error number shall be returned  to
       indicate the error.

ERRORS

       These functions may fail if:

       EINVAL The value of errnum is not a valid error number.

       The strerror_r() function may fail if:

       ERANGE Insufficient  storage  was  supplied  via  strerrbuf  and  buflen to contain the generated message
              string.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       perror() , the Base Definitions volume of IEEE Std 1003.1-2001, <string.h>

COPYRIGHT

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition,
       Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open  Group  Base
       Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers,
       Inc  and  The  Open Group. In the event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard  is  the  referee  document.  The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group                                   2003                                           STRERROR(P)