xref: /nrf52832-nimble/rt-thread/include/libc/libc_errno.h (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero /*
2*10465441SEvalZero  * Copyright (c) 2006-2018, RT-Thread Development Team
3*10465441SEvalZero  *
4*10465441SEvalZero  * SPDX-License-Identifier: Apache-2.0
5*10465441SEvalZero  *
6*10465441SEvalZero  * Change Logs:
7*10465441SEvalZero  * Date           Author       Notes
8*10465441SEvalZero  * 2016-11-12     Bernard      The first version
9*10465441SEvalZero  */
10*10465441SEvalZero 
11*10465441SEvalZero #ifndef LIBC_ERRNO_H__
12*10465441SEvalZero #define LIBC_ERRNO_H__
13*10465441SEvalZero 
14*10465441SEvalZero #include <rtconfig.h>
15*10465441SEvalZero 
16*10465441SEvalZero #if defined(RT_USING_NEWLIB) || defined(_WIN32) || defined(__CC_ARM) || defined(__IAR_SYSTEMS_ICC__)
17*10465441SEvalZero /* use errno.h file in toolchains */
18*10465441SEvalZero #include <errno.h>
19*10465441SEvalZero #endif
20*10465441SEvalZero 
21*10465441SEvalZero #if defined(__CC_ARM)
22*10465441SEvalZero /*
23*10465441SEvalZero defined in armcc/errno.h
24*10465441SEvalZero 
25*10465441SEvalZero #define EDOM    1
26*10465441SEvalZero #define ERANGE  2
27*10465441SEvalZero #define EILSEQ  4
28*10465441SEvalZero #define ESIGNUM 3
29*10465441SEvalZero #define EINVAL  5
30*10465441SEvalZero #define ENOMEM  6
31*10465441SEvalZero */
32*10465441SEvalZero #define ERROR_BASE_NO    7
33*10465441SEvalZero 
34*10465441SEvalZero #elif defined(__IAR_SYSTEMS_ICC__)
35*10465441SEvalZero /* defined in iar/errno.h
36*10465441SEvalZero #define EDOM    33
37*10465441SEvalZero #define ERANGE  34
38*10465441SEvalZero #define EFPOS   35
39*10465441SEvalZero #define EILSEQ  36
40*10465441SEvalZero */
41*10465441SEvalZero #define ERROR_BASE_NO    36
42*10465441SEvalZero 
43*10465441SEvalZero #else
44*10465441SEvalZero 
45*10465441SEvalZero #define ERROR_BASE_NO    0
46*10465441SEvalZero #endif
47*10465441SEvalZero 
48*10465441SEvalZero #if !defined(RT_USING_NEWLIB) && !defined(_WIN32)
49*10465441SEvalZero 
50*10465441SEvalZero #define EPERM            (ERROR_BASE_NO + 1)
51*10465441SEvalZero #define ENOENT           (ERROR_BASE_NO + 2)
52*10465441SEvalZero #define ESRCH            (ERROR_BASE_NO + 3)
53*10465441SEvalZero #define EINTR            (ERROR_BASE_NO + 4)
54*10465441SEvalZero #define EIO              (ERROR_BASE_NO + 5)
55*10465441SEvalZero #define ENXIO            (ERROR_BASE_NO + 6)
56*10465441SEvalZero #define E2BIG            (ERROR_BASE_NO + 7)
57*10465441SEvalZero #define ENOEXEC          (ERROR_BASE_NO + 8)
58*10465441SEvalZero #define EBADF            (ERROR_BASE_NO + 9)
59*10465441SEvalZero #define ECHILD          (ERROR_BASE_NO + 10)
60*10465441SEvalZero #define EAGAIN          (ERROR_BASE_NO + 11)
61*10465441SEvalZero 
62*10465441SEvalZero #ifndef ENOMEM
63*10465441SEvalZero #define ENOMEM          (ERROR_BASE_NO + 12)
64*10465441SEvalZero #endif
65*10465441SEvalZero 
66*10465441SEvalZero #define EACCES          (ERROR_BASE_NO + 13)
67*10465441SEvalZero #define EFAULT          (ERROR_BASE_NO + 14)
68*10465441SEvalZero #define ENOTBLK         (ERROR_BASE_NO + 15)
69*10465441SEvalZero #define EBUSY           (ERROR_BASE_NO + 16)
70*10465441SEvalZero #define EEXIST          (ERROR_BASE_NO + 17)
71*10465441SEvalZero #define EXDEV           (ERROR_BASE_NO + 18)
72*10465441SEvalZero #define ENODEV          (ERROR_BASE_NO + 19)
73*10465441SEvalZero #define ENOTDIR         (ERROR_BASE_NO + 20)
74*10465441SEvalZero #define EISDIR          (ERROR_BASE_NO + 21)
75*10465441SEvalZero 
76*10465441SEvalZero #ifndef EINVAL
77*10465441SEvalZero #define EINVAL          (ERROR_BASE_NO + 22)
78*10465441SEvalZero #endif
79*10465441SEvalZero 
80*10465441SEvalZero #define ENFILE          (ERROR_BASE_NO + 23)
81*10465441SEvalZero #define EMFILE          (ERROR_BASE_NO + 24)
82*10465441SEvalZero #define ENOTTY          (ERROR_BASE_NO + 25)
83*10465441SEvalZero #define ETXTBSY         (ERROR_BASE_NO + 26)
84*10465441SEvalZero #define EFBIG           (ERROR_BASE_NO + 27)
85*10465441SEvalZero #define ENOSPC          (ERROR_BASE_NO + 28)
86*10465441SEvalZero #define ESPIPE          (ERROR_BASE_NO + 29)
87*10465441SEvalZero #define EROFS           (ERROR_BASE_NO + 30)
88*10465441SEvalZero #define EMLINK          (ERROR_BASE_NO + 31)
89*10465441SEvalZero #define EPIPE           (ERROR_BASE_NO + 32)
90*10465441SEvalZero 
91*10465441SEvalZero #ifndef EDOM
92*10465441SEvalZero #define EDOM            (ERROR_BASE_NO + 33)
93*10465441SEvalZero #endif
94*10465441SEvalZero 
95*10465441SEvalZero #ifndef ERANGE
96*10465441SEvalZero #define ERANGE          (ERROR_BASE_NO + 34)
97*10465441SEvalZero #endif
98*10465441SEvalZero 
99*10465441SEvalZero #define EDEADLK         (ERROR_BASE_NO + 35)
100*10465441SEvalZero #define ENAMETOOLONG    (ERROR_BASE_NO + 36)
101*10465441SEvalZero #define ENOLCK          (ERROR_BASE_NO + 37)
102*10465441SEvalZero #define ENOSYS          (ERROR_BASE_NO + 38)
103*10465441SEvalZero #define ENOTEMPTY       (ERROR_BASE_NO + 39)
104*10465441SEvalZero #define ELOOP           (ERROR_BASE_NO + 40)
105*10465441SEvalZero #define EWOULDBLOCK     EAGAIN
106*10465441SEvalZero #define ENOMSG          (ERROR_BASE_NO + 42)
107*10465441SEvalZero #define EIDRM           (ERROR_BASE_NO + 43)
108*10465441SEvalZero #define ECHRNG          (ERROR_BASE_NO + 44)
109*10465441SEvalZero #define EL2NSYNC        (ERROR_BASE_NO + 45)
110*10465441SEvalZero #define EL3HLT          (ERROR_BASE_NO + 46)
111*10465441SEvalZero #define EL3RST          (ERROR_BASE_NO + 47)
112*10465441SEvalZero #define ELNRNG          (ERROR_BASE_NO + 48)
113*10465441SEvalZero #define EUNATCH         (ERROR_BASE_NO + 49)
114*10465441SEvalZero #define ENOCSI          (ERROR_BASE_NO + 50)
115*10465441SEvalZero #define EL2HLT          (ERROR_BASE_NO + 51)
116*10465441SEvalZero #define EBADE           (ERROR_BASE_NO + 52)
117*10465441SEvalZero #define EBADR           (ERROR_BASE_NO + 53)
118*10465441SEvalZero #define EXFULL          (ERROR_BASE_NO + 54)
119*10465441SEvalZero #define ENOANO          (ERROR_BASE_NO + 55)
120*10465441SEvalZero #define EBADRQC         (ERROR_BASE_NO + 56)
121*10465441SEvalZero #define EBADSLT         (ERROR_BASE_NO + 57)
122*10465441SEvalZero #define EDEADLOCK       EDEADLK
123*10465441SEvalZero #define EBFONT          (ERROR_BASE_NO + 59)
124*10465441SEvalZero #define ENOSTR          (ERROR_BASE_NO + 60)
125*10465441SEvalZero #define ENODATA         (ERROR_BASE_NO + 61)
126*10465441SEvalZero #define ETIME           (ERROR_BASE_NO + 62)
127*10465441SEvalZero #define ENOSR           (ERROR_BASE_NO + 63)
128*10465441SEvalZero #define ENONET          (ERROR_BASE_NO + 64)
129*10465441SEvalZero #define ENOPKG          (ERROR_BASE_NO + 65)
130*10465441SEvalZero #define EREMOTE         (ERROR_BASE_NO + 66)
131*10465441SEvalZero #define ENOLINK         (ERROR_BASE_NO + 67)
132*10465441SEvalZero #define EADV            (ERROR_BASE_NO + 68)
133*10465441SEvalZero #define ESRMNT          (ERROR_BASE_NO + 69)
134*10465441SEvalZero #define ECOMM           (ERROR_BASE_NO + 70)
135*10465441SEvalZero #define EPROTO          (ERROR_BASE_NO + 71)
136*10465441SEvalZero #define EMULTIHOP       (ERROR_BASE_NO + 72)
137*10465441SEvalZero #define EDOTDOT         (ERROR_BASE_NO + 73)
138*10465441SEvalZero #define EBADMSG         (ERROR_BASE_NO + 74)
139*10465441SEvalZero #define EOVERFLOW       (ERROR_BASE_NO + 75)
140*10465441SEvalZero #define ENOTUNIQ        (ERROR_BASE_NO + 76)
141*10465441SEvalZero #define EBADFD          (ERROR_BASE_NO + 77)
142*10465441SEvalZero #define EREMCHG         (ERROR_BASE_NO + 78)
143*10465441SEvalZero #define ELIBACC         (ERROR_BASE_NO + 79)
144*10465441SEvalZero #define ELIBBAD         (ERROR_BASE_NO + 80)
145*10465441SEvalZero #define ELIBSCN         (ERROR_BASE_NO + 81)
146*10465441SEvalZero #define ELIBMAX         (ERROR_BASE_NO + 82)
147*10465441SEvalZero #define ELIBEXEC        (ERROR_BASE_NO + 83)
148*10465441SEvalZero 
149*10465441SEvalZero #ifndef EILSEQ
150*10465441SEvalZero #define EILSEQ          (ERROR_BASE_NO + 84)
151*10465441SEvalZero #endif
152*10465441SEvalZero 
153*10465441SEvalZero #define ERESTART        (ERROR_BASE_NO + 85)
154*10465441SEvalZero #define ESTRPIPE        (ERROR_BASE_NO + 86)
155*10465441SEvalZero #define EUSERS          (ERROR_BASE_NO + 87)
156*10465441SEvalZero #define ENOTSOCK        (ERROR_BASE_NO + 88)
157*10465441SEvalZero #define EDESTADDRREQ    (ERROR_BASE_NO + 89)
158*10465441SEvalZero #define EMSGSIZE        (ERROR_BASE_NO + 90)
159*10465441SEvalZero #define EPROTOTYPE      (ERROR_BASE_NO + 91)
160*10465441SEvalZero #define ENOPROTOOPT     (ERROR_BASE_NO + 92)
161*10465441SEvalZero #define EPROTONOSUPPORT (ERROR_BASE_NO + 93)
162*10465441SEvalZero #define ESOCKTNOSUPPORT (ERROR_BASE_NO + 94)
163*10465441SEvalZero #define EOPNOTSUPP      (ERROR_BASE_NO + 95)
164*10465441SEvalZero #define ENOTSUP         EOPNOTSUPP         )
165*10465441SEvalZero #define EPFNOSUPPORT    (ERROR_BASE_NO + 96)
166*10465441SEvalZero #define EAFNOSUPPORT    (ERROR_BASE_NO + 97)
167*10465441SEvalZero #define EADDRINUSE      (ERROR_BASE_NO + 98)
168*10465441SEvalZero #define EADDRNOTAVAIL   (ERROR_BASE_NO + 99)
169*10465441SEvalZero #define ENETDOWN        (ERROR_BASE_NO + 100)
170*10465441SEvalZero #define ENETUNREACH     (ERROR_BASE_NO + 101)
171*10465441SEvalZero #define ENETRESET       (ERROR_BASE_NO + 102)
172*10465441SEvalZero #define ECONNABORTED    (ERROR_BASE_NO + 103)
173*10465441SEvalZero #define ECONNRESET      (ERROR_BASE_NO + 104)
174*10465441SEvalZero #define ENOBUFS         (ERROR_BASE_NO + 105)
175*10465441SEvalZero #define EISCONN         (ERROR_BASE_NO + 106)
176*10465441SEvalZero #define ENOTCONN        (ERROR_BASE_NO + 107)
177*10465441SEvalZero #define ESHUTDOWN       (ERROR_BASE_NO + 108)
178*10465441SEvalZero #define ETOOMANYREFS    (ERROR_BASE_NO + 109)
179*10465441SEvalZero #define ETIMEDOUT       (ERROR_BASE_NO + 110)
180*10465441SEvalZero #define ECONNREFUSED    (ERROR_BASE_NO + 111)
181*10465441SEvalZero #define EHOSTDOWN       (ERROR_BASE_NO + 112)
182*10465441SEvalZero #define EHOSTUNREACH    (ERROR_BASE_NO + 113)
183*10465441SEvalZero #define EALREADY        (ERROR_BASE_NO + 114)
184*10465441SEvalZero #define EINPROGRESS     (ERROR_BASE_NO + 115)
185*10465441SEvalZero #define ESTALE          (ERROR_BASE_NO + 116)
186*10465441SEvalZero #define EUCLEAN         (ERROR_BASE_NO + 117)
187*10465441SEvalZero #define ENOTNAM         (ERROR_BASE_NO + 118)
188*10465441SEvalZero #define ENAVAIL         (ERROR_BASE_NO + 119)
189*10465441SEvalZero #define EISNAM          (ERROR_BASE_NO + 120)
190*10465441SEvalZero #define EREMOTEIO       (ERROR_BASE_NO + 121)
191*10465441SEvalZero #define EDQUOT          (ERROR_BASE_NO + 122)
192*10465441SEvalZero #define ENOMEDIUM       (ERROR_BASE_NO + 123)
193*10465441SEvalZero #define EMEDIUMTYPE     (ERROR_BASE_NO + 124)
194*10465441SEvalZero #define ECANCELED       (ERROR_BASE_NO + 125)
195*10465441SEvalZero #define ENOKEY          (ERROR_BASE_NO + 126)
196*10465441SEvalZero #define EKEYEXPIRED     (ERROR_BASE_NO + 127)
197*10465441SEvalZero #define EKEYREVOKED     (ERROR_BASE_NO + 128)
198*10465441SEvalZero #define EKEYREJECTED    (ERROR_BASE_NO + 129)
199*10465441SEvalZero #define EOWNERDEAD      (ERROR_BASE_NO + 130)
200*10465441SEvalZero #define ENOTRECOVERABLE (ERROR_BASE_NO + 131)
201*10465441SEvalZero #define ERFKILL         (ERROR_BASE_NO + 132)
202*10465441SEvalZero #define EHWPOISON       (ERROR_BASE_NO + 133)
203*10465441SEvalZero 
204*10465441SEvalZero #endif
205*10465441SEvalZero 
206*10465441SEvalZero #endif
207