libmetal  353
errno.h
Go to the documentation of this file.
1 /*-
2  * Copyright (c) 2020 STMicroelectronics. All rights reserved.
3  *
4  * Copyright (c) 1982, 1986, 1989, 1993
5  * The Regents of the University of California. All rights reserved.
6  * (c) UNIX System Laboratories, Inc.
7  * Copyright 2023 Arm Limited and/or its affiliates <open-source-office@arm.com>
8  *
9  * SPDX-License-Identifier: BSD-3-Clause
10  */
11 
17 #ifndef __METAL_ARMCC_ERRNO__H__
18 #define __METAL_ARMCC_ERRNO__H__
19 
20 #include <errno.h>
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 #define LIBMETAL_ERR_BASE 100
27 
28 #ifndef EPERM
29 #define EPERM (LIBMETAL_ERR_BASE + 1) /* Operation not permitted */
30 #endif
31 
32 #ifndef ENOENT
33 #define ENOENT (LIBMETAL_ERR_BASE + 2) /* No such file or directory */
34 #endif
35 
36 #ifndef ESRCH
37 #define ESRCH (LIBMETAL_ERR_BASE + 3) /* No such process */
38 #endif
39 
40 #ifndef EINTR
41 #define EINTR (LIBMETAL_ERR_BASE + 4) /* Interrupted system call */
42 #endif
43 
44 #ifndef EIO
45 #define EIO (LIBMETAL_ERR_BASE + 5) /* Input/output error */
46 #endif
47 
48 #ifndef ENXIO
49 #define ENXIO (LIBMETAL_ERR_BASE + 6) /* Device not configured */
50 #endif
51 
52 #ifndef E2BIG
53 #define E2BIG (LIBMETAL_ERR_BASE + 7) /* Argument list too long */
54 #endif
55 
56 #ifndef ENOEXEC
57 #define ENOEXEC (LIBMETAL_ERR_BASE + 8) /* Exec format error */
58 #endif
59 
60 #ifndef EBADF
61 #define EBADF (LIBMETAL_ERR_BASE + 9) /* Bad file descriptor */
62 #endif
63 
64 #ifndef ECHILD
65 #define ECHILD (LIBMETAL_ERR_BASE + 10) /* No child processes */
66 #endif
67 
68 #ifndef EDEADLK
69 #define EDEADLK (LIBMETAL_ERR_BASE + 11) /* Resource deadlock avoided */
70 #endif
71 
72 #ifndef EACCES
73 #define EACCES (LIBMETAL_ERR_BASE + 13) /* Permission denied */
74 #endif
75 
76 #ifndef EFAULT
77 #define EFAULT (LIBMETAL_ERR_BASE + 14) /* Bad address */
78 #endif
79 
80 #ifndef ENOTBLK
81 #define ENOTBLK (LIBMETAL_ERR_BASE + 15) /* Block device required */
82 #endif
83 
84 #ifndef EBUSY
85 #define EBUSY (LIBMETAL_ERR_BASE + 16) /* Device busy */
86 #endif
87 
88 #ifndef EEXIST
89 #define EEXIST (LIBMETAL_ERR_BASE + 17) /* File exists */
90 #endif
91 
92 #ifndef EXDEV
93 #define EXDEV (LIBMETAL_ERR_BASE + 18) /* Cross-device link */
94 #endif
95 
96 #ifndef ENODEV
97 #define ENODEV (LIBMETAL_ERR_BASE + 19) /* Operation not supported by device */
98 #endif
99 
100 #ifndef ENOTDIR
101 #define ENOTDIR (LIBMETAL_ERR_BASE + 20) /* Not a directory */
102 #endif
103 
104 #ifndef EISDIR
105 #define EISDIR (LIBMETAL_ERR_BASE + 21) /* Is a directory */
106 #endif
107 
108 #ifndef ENFILE
109 #define ENFILE (LIBMETAL_ERR_BASE + 23) /* Too many open files in system */
110 #endif
111 
112 #ifndef EMFILE
113 #define EMFILE (LIBMETAL_ERR_BASE + 24) /* Too many open files */
114 #endif
115 
116 #ifndef ENOTTY
117 #define ENOTTY (LIBMETAL_ERR_BASE + 25) /* Inappropriate ioctl for device */
118 #endif
119 
120 #ifndef ETXTBSY
121 #define ETXTBSY (LIBMETAL_ERR_BASE + 26) /* Text file busy */
122 #endif
123 
124 #ifndef EFBIG
125 #define EFBIG (LIBMETAL_ERR_BASE + 27) /* File too large */
126 #endif
127 
128 #ifndef ENOSPC
129 #define ENOSPC (LIBMETAL_ERR_BASE + 28) /* No space left on device */
130 #endif
131 
132 #ifndef ESPIPE
133 #define ESPIPE (LIBMETAL_ERR_BASE + 29) /* Illegal seek */
134 #endif
135 
136 #ifndef EROFS
137 #define EROFS (LIBMETAL_ERR_BASE + 30) /* Read-only filesystem */
138 #endif
139 
140 #ifndef EMLINK
141 #define EMLINK (LIBMETAL_ERR_BASE + 31) /* Too many links */
142 #endif
143 
144 #ifndef EPIPE
145 #define EPIPE (LIBMETAL_ERR_BASE + 32) /* Broken pipe */
146 #endif
147 
148 #ifndef EAGAIN
149 #define EAGAIN (LIBMETAL_ERR_BASE + 35) /* Resource temporarily unavailable */
150 #endif
151 
152 #ifdef __cplusplus
153 }
154 #endif
155 
156 #endif /* __METAL_ARMCC_ERRNO__H__ */
Error specific primitives for libmetal.