1/* $Id: errtbls.c,v 1.1.1.1 2007/08/03 18:52:17 Exp $
2 * errtbls.c: Error number conversion tables between various syscall
3 *            OS semantics.
4 *
5 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
6 *
7 * Based upon preliminary work which is:
8 *
9 * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
10 */
11
12#include <asm/bsderrno.h>        /* NetBSD (bsd4.4) errnos */
13#include <asm/solerrno.h>        /* Solaris errnos */
14
15/* Here are tables which convert between Linux/SunOS error number
16 * values to the equivalent in other OSs.  Note that since the Linux
17 * ones have been set up to match exactly those of SunOS, no
18 * translation table is needed for that OS.
19 */
20
21int solaris_errno[] = {
22	0,
23	SOL_EPERM,
24	SOL_ENOENT,
25	SOL_ESRCH,
26	SOL_EINTR,
27	SOL_EIO,
28	SOL_ENXIO,
29	SOL_E2BIG,
30	SOL_ENOEXEC,
31	SOL_EBADF,
32	SOL_ECHILD,
33	SOL_EAGAIN,
34	SOL_ENOMEM,
35	SOL_EACCES,
36	SOL_EFAULT,
37	SOL_NOTBLK,
38	SOL_EBUSY,
39	SOL_EEXIST,
40	SOL_EXDEV,
41	SOL_ENODEV,
42	SOL_ENOTDIR,
43	SOL_EISDIR,
44	SOL_EINVAL,
45	SOL_ENFILE,
46	SOL_EMFILE,
47	SOL_ENOTTY,
48	SOL_ETXTBSY,
49	SOL_EFBIG,
50	SOL_ENOSPC,
51	SOL_ESPIPE,
52	SOL_EROFS,
53	SOL_EMLINK,
54	SOL_EPIPE,
55	SOL_EDOM,
56	SOL_ERANGE,
57	SOL_EWOULDBLOCK,
58	SOL_EINPROGRESS,
59	SOL_EALREADY,
60	SOL_ENOTSOCK,
61	SOL_EDESTADDRREQ,
62	SOL_EMSGSIZE,
63	SOL_EPROTOTYPE,
64	SOL_ENOPROTOOPT,
65	SOL_EPROTONOSUPPORT,
66	SOL_ESOCKTNOSUPPORT,
67	SOL_EOPNOTSUPP,
68	SOL_EPFNOSUPPORT,
69	SOL_EAFNOSUPPORT,
70	SOL_EADDRINUSE,
71	SOL_EADDRNOTAVAIL,
72	SOL_ENETDOWN,
73	SOL_ENETUNREACH,
74	SOL_ENETRESET,
75	SOL_ECONNABORTED,
76	SOL_ECONNRESET,
77	SOL_ENOBUFS,
78	SOL_EISCONN,
79	SOL_ENOTONN,
80	SOL_ESHUTDOWN,
81	SOL_ETOOMANYREFS,
82	SOL_ETIMEDOUT,
83	SOL_ECONNREFUSED,
84	SOL_ELOOP,
85	SOL_ENAMETOOLONG,
86	SOL_EHOSTDOWN,
87	SOL_EHOSTUNREACH,
88	SOL_ENOTEMPTY,
89	SOL_EPROCLIM,
90	SOL_EUSERS,
91	SOL_EDQUOT,
92	SOL_ESTALE,
93	SOL_EREMOTE,
94	SOL_ENOSTR,
95	SOL_ETIME,
96	SOL_ENOSR,
97	SOL_ENOMSG,
98	SOL_EBADMSG,
99	SOL_IDRM,
100	SOL_EDEADLK,
101	SOL_ENOLCK,
102	SOL_ENONET,
103	SOL_ERREMOTE,
104	SOL_ENOLINK,
105	SOL_EADV,
106	SOL_ESRMNT,
107	SOL_ECOMM,
108	SOL_EPROTO,
109	SOL_EMULTIHOP,
110	SOL_EINVAL,
111	SOL_REMCHG,
112	SOL_NOSYS,
113	SOL_STRPIPE,
114	SOL_EOVERFLOW,
115	SOL_EBADFD,
116	SOL_ECHRNG,
117	SOL_EL2NSYNC,
118	SOL_EL3HLT,
119	SOL_EL3RST,
120	SOL_NRNG,
121	SOL_EUNATCH,
122	SOL_ENOCSI,
123	SOL_EL2HLT,
124	SOL_EBADE,
125	SOL_EBADR,
126	SOL_EXFULL,
127	SOL_ENOANO,
128	SOL_EBADRQC,
129	SOL_EBADSLT,
130	SOL_EDEADLOCK,
131	SOL_EBFONT,
132	SOL_ELIBEXEC,
133	SOL_ENODATA,
134	SOL_ELIBBAD,
135	SOL_ENOPKG,
136	SOL_ELIBACC,
137	SOL_ENOTUNIQ,
138	SOL_ERESTART,
139	SOL_EUCLEAN,
140	SOL_ENOTNAM,
141	SOL_ENAVAIL,
142	SOL_EISNAM,
143	SOL_EREMOTEIO,
144	SOL_EILSEQ,
145	SOL_ELIBMAX,
146	SOL_ELIBSCN,
147};
148
149int netbsd_errno[] = {
150	0,
151	BSD_EPERM,
152	BSD_ENOENT,
153	BSD_ESRCH,
154	BSD_EINTR,
155	BSD_EIO,
156	BSD_ENXIO,
157	BSD_E2BIG,
158	BSD_ENOEXEC,
159	BSD_EBADF,
160	BSD_ECHILD,
161	BSD_EAGAIN,
162	BSD_ENOMEM,
163	BSD_EACCES,
164	BSD_EFAULT,
165	BSD_NOTBLK,
166	BSD_EBUSY,
167	BSD_EEXIST,
168	BSD_EXDEV,
169	BSD_ENODEV,
170	BSD_ENOTDIR,
171	BSD_EISDIR,
172	BSD_EINVAL,
173	BSD_ENFILE,
174	BSD_EMFILE,
175	BSD_ENOTTY,
176	BSD_ETXTBSY,
177	BSD_EFBIG,
178	BSD_ENOSPC,
179	BSD_ESPIPE,
180	BSD_EROFS,
181	BSD_EMLINK,
182	BSD_EPIPE,
183	BSD_EDOM,
184	BSD_ERANGE,
185	BSD_EWOULDBLOCK,
186	BSD_EINPROGRESS,
187	BSD_EALREADY,
188	BSD_ENOTSOCK,
189	BSD_EDESTADDRREQ,
190	BSD_EMSGSIZE,
191	BSD_EPROTOTYPE,
192	BSD_ENOPROTOOPT,
193	BSD_EPROTONOSUPPORT,
194	BSD_ESOCKTNOSUPPORT,
195	BSD_EOPNOTSUPP,
196	BSD_EPFNOSUPPORT,
197	BSD_EAFNOSUPPORT,
198	BSD_EADDRINUSE,
199	BSD_EADDRNOTAVAIL,
200	BSD_ENETDOWN,
201	BSD_ENETUNREACH,
202	BSD_ENETRESET,
203	BSD_ECONNABORTED,
204	BSD_ECONNRESET,
205	BSD_ENOBUFS,
206	BSD_EISCONN,
207	BSD_ENOTONN,
208	BSD_ESHUTDOWN,
209	BSD_ETOOMANYREFS,
210	BSD_ETIMEDOUT,
211	BSD_ECONNREFUSED,
212	BSD_ELOOP,
213	BSD_ENAMETOOLONG,
214	BSD_EHOSTDOWN,
215	BSD_EHOSTUNREACH,
216	BSD_ENOTEMPTY,
217	BSD_EPROCLIM,
218	BSD_EUSERS,
219	BSD_EDQUOT,
220	BSD_ESTALE,
221	BSD_EREMOTE,
222	BSD_ENOSTR,
223	BSD_ETIME,
224	BSD_ENOSR,
225	BSD_ENOMSG,
226	BSD_EBADMSG,
227	BSD_IDRM,
228	BSD_EDEADLK,
229	BSD_ENOLCK,
230	BSD_ENONET,
231	BSD_ERREMOTE,
232	BSD_ENOLINK,
233	BSD_EADV,
234	BSD_ESRMNT,
235	BSD_ECOMM,
236	BSD_EPROTO,
237	BSD_EMULTIHOP,
238	BSD_EINVAL,
239	BSD_REMCHG,
240	BSD_NOSYS,
241	BSD_STRPIPE,
242	BSD_EOVERFLOW,
243	BSD_EBADFD,
244	BSD_ECHRNG,
245	BSD_EL2NSYNC,
246	BSD_EL3HLT,
247	BSD_EL3RST,
248	BSD_NRNG,
249	BSD_EUNATCH,
250	BSD_ENOCSI,
251	BSD_EL2HLT,
252	BSD_EBADE,
253	BSD_EBADR,
254	BSD_EXFULL,
255	BSD_ENOANO,
256	BSD_EBADRQC,
257	BSD_EBADSLT,
258	BSD_EDEADLOCK,
259	BSD_EBFONT,
260	BSD_ELIBEXEC,
261	BSD_ENODATA,
262	BSD_ELIBBAD,
263	BSD_ENOPKG,
264	BSD_ELIBACC,
265	BSD_ENOTUNIQ,
266	BSD_ERESTART,
267	BSD_EUCLEAN,
268	BSD_ENOTNAM,
269	BSD_ENAVAIL,
270	BSD_EISNAM,
271	BSD_EREMOTEIO,
272	BSD_EILSEQ,
273	BSD_ELIBMAX,
274	BSD_ELIBSCN,
275};
276