Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
STRERROR(3)		   Linux Programmer's Manual		   STRERROR(3)

NAME
       strerror, strerror_r - return string describing error code

SYNOPSIS
       #include	<string.h>

       char *strerror(int errnum);
       int strerror_r(int errnum, char *buf, size_t n);

DESCRIPTION
       The  strerror()	function  returns  a  string describing	the error code
       passed in the argument errnum, possibly using the LC_MESSAGES  part  of
       the  current  locale  to	 select	the appropriate	language.  This	string
       must not	be modified by the application,	but may	be modified by a  sub-
       sequent	call to	perror() or strerror().	 No library function will mod-
       ify this	string.

       The strerror_r()	function is similar to strerror(), but is thread safe.
       It returns the string in	the user-supplied buffer buf of	length n.

RETURN VALUE
       The  strerror()	function  returns  the	appropriate  error description
       string, or an unknown error message if the error	code is	unknown.   The
       value  of  errno	 is not	changed	for a successful call, and is set to a
       nonzero value upon error.  The strerror_r() function returns 0 on  suc-
       cess and	-1 on failure, setting errno.

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

       ERANGE Insufficient  storage was	supplied to contain the	error descrip-
	      tion string.

CONFORMING TO
       SVID 3, POSIX, BSD 4.3, ISO/IEC 9899:1990 (C89).
       strerror_r() with prototype as given above is specified by  SUSv3,  and
       was  in	use  under Digital Unix	and HP Unix. An	incompatible function,
       with prototype

       char *strerror_r(int errnum, char *buf, size_t n);

       is a GNU	extension used by glibc	(since 2.0), and must be  regarded  as
       obsolete	 in view of SUSv3.  The	GNU version may, but need not, use the
       user-supplied buffer.  If it does, the result may be truncated in  case
       the supplied buffer is too small. The result is always NUL-terminated.

SEE ALSO
       errno(3), perror(3), strsignal(3)

				  2001-10-16			   STRERROR(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | SEE ALSO

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=strerror&sektion=3&manpath=Red+Hat+9>

home | help