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 .