1 /* $OpenBSD: osf1_cvt_errno.c,v 1.1 2000/08/04 15:47:54 ericj Exp $ */
2 /* $NetBSD: osf1_cvt_errno.c,v 1.4 1999/05/01 02:16:01 cgd Exp $ */
3
4 /*
5 * Copyright (c) 1999 Christopher G. Demetriou. All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * 3. All advertising materials mentioning features or use of this software
16 * must display the following acknowledgement:
17 * This product includes software developed by Christopher G. Demetriou
18 * for the NetBSD Project.
19 * 4. The name of the author may not be used to endorse or promote products
20 * derived from this software without specific prior written permission
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
23 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
24 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
25 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
26 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
27 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
31 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 */
33
34 #include <compat/osf1/osf1.h>
35 #include <compat/osf1/osf1_cvt.h>
36
37 /*
38 * This table is used to translate NetBSD errnos to OSF/1 errnos
39 * when returning from a system call.
40 *
41 * It is up to date as of Digital UNIX V4.0 and NetBSD 1.4.
42 */
43
44 const int osf1_errno_rxlist[] = {
45 0,
46 OSF1_EPERM, /* EPERM (1) -> 1 */
47 OSF1_ENOENT, /* ENOENT (2) -> 2 */
48 OSF1_ESRCH, /* ESRCH (3) -> 3 */
49 OSF1_EINTR, /* EINTR (4) -> 4 */
50 OSF1_EIO, /* EIO (5) -> 5 */
51 OSF1_ENXIO, /* ENXIO (6) -> 6 */
52 OSF1_E2BIG, /* E2BIG (7) -> 7 */
53 OSF1_ENOEXEC, /* ENOEXEC (8) -> 8 */
54 OSF1_EBADF, /* EBADF (9) -> 9 */
55 OSF1_ECHILD, /* ECHILD (10) -> 10 */
56 OSF1_EDEADLK, /* EDEADLK (11) -> 11 */
57 OSF1_ENOMEM, /* ENOMEM (12) -> 12 */
58 OSF1_EACCES, /* EACCES (13) -> 13 */
59 OSF1_EFAULT, /* EFAULT (14) -> 14 */
60 OSF1_ENOTBLK, /* ENOTBLK (15) -> 15 */
61 OSF1_EBUSY, /* EBUSY (16) -> 16 */
62 OSF1_EEXIST, /* EEXIST (17) -> 17 */
63 OSF1_EXDEV, /* EXDEV (18) -> 18 */
64 OSF1_ENODEV, /* ENODEV (19) -> 19 */
65 OSF1_ENOTDIR, /* ENOTDIR (20) -> 20 */
66 OSF1_EISDIR, /* EISDIR (21) -> 21 */
67 OSF1_EINVAL, /* EINVAL (22) -> 22 */
68 OSF1_ENFILE, /* ENFILE (23) -> 23 */
69 OSF1_EMFILE, /* EMFILE (24) -> 24 */
70 OSF1_ENOTTY, /* ENOTTY (25) -> 25 */
71 OSF1_ETXTBSY, /* ETXTBSY (26) -> 26 */
72 OSF1_EFBIG, /* EFBIG (27) -> 27 */
73 OSF1_ENOSPC, /* ENOSPC (28) -> 28 */
74 OSF1_ESPIPE, /* ESPIPE (29) -> 29 */
75 OSF1_EROFS, /* EROFS (30) -> 30 */
76 OSF1_EMLINK, /* EMLINK (31) -> 31 */
77 OSF1_EPIPE, /* EPIPE (32) -> 32 */
78 OSF1_EDOM, /* EDOM (33) -> 33 */
79 OSF1_ERANGE, /* ERANGE (34) -> 34 */
80 OSF1_EWOULDBLOCK, /* EAGAIN (35) -> OSF1_EWOULDBLOCK (35) */
81 OSF1_EINPROGRESS, /* EINPROGRESS (36) -> 36 */
82 OSF1_EALREADY, /* EALREADY (37) -> 37 */
83 OSF1_ENOTSOCK, /* ENOTSOCK (38) -> 38 */
84 OSF1_EDESTADDRREQ, /* EDESTADDRREQ (39) -> 39 */
85 OSF1_EMSGSIZE, /* EMSGSIZE (40) -> 40 */
86 OSF1_EPROTOTYPE, /* EPROTOTYPE (41) -> 41 */
87 OSF1_ENOPROTOOPT, /* ENOPROTOOPT (42) -> 42 */
88 OSF1_EPROTONOSUPPORT, /* EPROTONOSUPPORT (43) -> 43 */
89 OSF1_ESOCKTNOSUPPORT, /* ESOCKTNOSUPPORT (44) -> 44 */
90 OSF1_EOPNOTSUPP, /* EOPNOTSUPP (45) -> 45 */
91 OSF1_EPFNOSUPPORT, /* EPFNOSUPPORT (46) -> 46 */
92 OSF1_EAFNOSUPPORT, /* EAFNOSUPPORT (47) -> 47 */
93 OSF1_EADDRINUSE, /* EADDRINUSE (48) -> 48 */
94 OSF1_EADDRNOTAVAIL, /* EADDRNOTAVAIL (49) -> 49 */
95 OSF1_ENETDOWN, /* ENETDOWN (50) -> 50 */
96 OSF1_ENETUNREACH, /* ENETUNREACH (51) -> 51 */
97 OSF1_ENETRESET, /* ENETRESET (52) -> 52 */
98 OSF1_ECONNABORTED, /* ECONNABORTED (53) -> 53 */
99 OSF1_ECONNRESET, /* ECONNRESET (54) -> 54 */
100 OSF1_ENOBUFS, /* ENOBUFS (55) -> 55 */
101 OSF1_EISCONN, /* EISCONN (56) -> 56 */
102 OSF1_ENOTCONN, /* ENOTCONN (57) -> 57 */
103 OSF1_ESHUTDOWN, /* ESHUTDOWN (58) -> 58 */
104 OSF1_ETOOMANYREFS, /* ETOOMANYREFS (59) -> 59 */
105 OSF1_ETIMEDOUT, /* ETIMEDOUT (60) -> 60 */
106 OSF1_ECONNREFUSED, /* ECONNREFUSED (61) -> 61 */
107 OSF1_ELOOP, /* ELOOP (62) -> 62 */
108 OSF1_ENAMETOOLONG, /* ENAMETOOLONG (63) -> 63 */
109 OSF1_EHOSTDOWN, /* EHOSTDOWN (64) -> 64 */
110 OSF1_EHOSTUNREACH, /* EHOSTUNREACH (65) -> 65 */
111 OSF1_ENOTEMPTY, /* ENOTEMPTY (66) -> 66 */
112 OSF1_EPROCLIM, /* EPROCLIM (67) -> 67 */
113 OSF1_EUSERS, /* EUSERS (68) -> 68 */
114 OSF1_EDQUOT, /* EDQUOT (69) -> 69 */
115 OSF1_ESTALE, /* ESTALE (70) -> 70 */
116 OSF1_EREMOTE, /* EREMOTE (71) -> 71 */
117 OSF1_EBADRPC, /* EBADRPC (72) -> 72 */
118 OSF1_ERPCMISMATCH, /* ERPCMISMATCH (73) -> 73 */
119 OSF1_EPROGUNAVAIL, /* EPROGUNAVAIL (74) -> 74 */
120 OSF1_EPROGMISMATCH, /* EPROGMISMATCH (75) -> 75 */
121 OSF1_EPROCUNAVAIL, /* EPROCUNAVAIL (76) -> 76 */
122 OSF1_ENOLCK, /* ENOLCK (77) -> 77 */
123 OSF1_ENOSYS, /* ENOSYS (78) -> 78 */
124 OSF1_EFTYPE, /* EFTYPE (79) -> 79 */
125 OSF1_ENOSYS, /* EAUTH (80) has no equivalent */
126 OSF1_ENOSYS, /* ENEEDAUTH (81) has no equivalent */
127 OSF1_EIDRM, /* EIDRM (82) -> 81 */
128 OSF1_ENOMSG, /* ENOMSG (83) -> 80 */
129 OSF1_EOVERFLOW, /* EOVERFLOW (84) -> 103 */
130 };