1ERRNO(3P)                  POSIX Programmer's Manual                 ERRNO(3P)
2
3
4

PROLOG

6       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
7       implementation of this interface may differ (consult the  corresponding
8       Linux  manual page for details of Linux behavior), or the interface may
9       not be implemented on Linux.
10
11

NAME

13       errno — error return value
14

SYNOPSIS

16       #include <errno.h>
17

DESCRIPTION

19       The lvalue errno is used by many functions to return error values.
20
21       Many functions provide an error number in errno, which has type int and
22       is  defined  in  <errno.h>.   The  value of errno shall be defined only
23       after a call to a function for which it is explicitly stated to be  set
24       and until it is changed by the next function call or if the application
25       assigns it a value. The value of errno should only be examined when  it
26       is  indicated  to  be  valid by a function's return value. Applications
27       shall obtain the definition of errno by the inclusion of <errno.h>.  No
28       function  in this volume of POSIX.1‐2008 shall set errno to 0. The set‐
29       ting of errno after a successful call  to  a  function  is  unspecified
30       unless  the description of that function specifies that errno shall not
31       be modified.
32
33       It is unspecified whether errno is a macro or  an  identifier  declared
34       with  external linkage. If a macro definition is suppressed in order to
35       access an actual object, or a program defines an  identifier  with  the
36       name errno, the behavior is undefined.
37
38       The  symbolic  values stored in errno are documented in the ERRORS sec‐
39       tions on all relevant pages.
40

RETURN VALUE

42       None.
43

ERRORS

45       None.
46
47       The following sections are informative.
48

EXAMPLES

50       None.
51

APPLICATION USAGE

53       Previously both POSIX and X/Open documents were more  restrictive  than
54       the  ISO C  standard  in  that  they required errno to be defined as an
55       external variable, whereas the ISO C standard required only that  errno
56       be defined as a modifiable lvalue with type int.
57
58       An  application  that  needs to examine the value of errno to determine
59       the error should set it to 0 before a function call,  then  inspect  it
60       before a subsequent function call.
61

RATIONALE

63       None.
64

FUTURE DIRECTIONS

66       None.
67

SEE ALSO

69       Section 2.3, Error Numbers
70
71       The Base Definitions volume of POSIX.1‐2008, <errno.h>
72
74       Portions  of  this text are reprinted and reproduced in electronic form
75       from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
76       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
77       Specifications Issue 7, Copyright (C) 2013 by the Institute of Electri‐
78       cal  and  Electronics  Engineers,  Inc  and  The  Open Group.  (This is
79       POSIX.1-2008 with the 2013 Technical Corrigendum  1  applied.)  In  the
80       event of any discrepancy between this version and the original IEEE and
81       The Open Group Standard, the original IEEE and The Open Group  Standard
82       is  the  referee document. The original Standard can be obtained online
83       at http://www.unix.org/online.html .
84
85       Any typographical or formatting errors that appear  in  this  page  are
86       most likely to have been introduced during the conversion of the source
87       files to man page format. To report such errors,  see  https://www.ker
88       nel.org/doc/man-pages/reporting_bugs.html .
89
90
91
92IEEE/The Open Group                  2013                            ERRNO(3P)
Impressum