1/*
2 * @OSF_COPYRIGHT@
3 */
4
5/*
6 * Mach Operating System
7 * Copyright (c) 1991,1990,1989 Carnegie Mellon University
8 * All Rights Reserved.
9 *
10 * Permission to use, copy, modify and distribute this software and its
11 * documentation is hereby granted, provided that both the copyright
12 * notice and this permission notice appear in all copies of the
13 * software, derivative works or modified versions, and any portions
14 * thereof, and that both notices appear in supporting documentation.
15 *
16 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS
17 * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
18 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
19 *
20 * Carnegie Mellon requests users of this software to return to
21 *
22 *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
23 *  School of Computer Science
24 *  Carnegie Mellon University
25 *  Pittsburgh PA 15213-3890
26 *
27 * any improvements or extensions that they make and grant Carnegie the
28 * rights to redistribute these changes.
29 */
30
31/*
32 *	File: 	err_kern.sub
33 *	Author:	Douglas Orr, Carnegie Mellon University
34 *	Date:	Mar, 1988
35 *
36 *	error codes for Mach and Unix kernels
37 */
38
39static const char * const err_codes_kern[] = {
40	"(os/kern) successful",			/* 0 */
41	"(os/kern) invalid address",
42	"(os/kern) protection failure",
43	"(os/kern) no space available",
44	"(os/kern) invalid argument",
45	"(os/kern) failure",			/* 5 */
46	"(os/kern) resource shortage",
47	"(os/kern) not receiver",
48	"(os/kern) no access",
49	"(os/kern) memory failure",
50	"(os/kern) memory error",		/* 10 */
51	"(os/kern) already in set",
52	"(os/kern) not in set",
53	"(os/kern) name exists",
54	"(os/kern) aborted",
55	"(os/kern) invalid name",		/* 15 */
56	"(os/kern) invalid task",
57	"(os/kern) invalid right",
58	"(os/kern) invalid value",
59	"(os/kern) urefs overflow",
60	"(os/kern) invalid capability",		/* 20 */
61	"(os/kern) right exists",
62	"(os/kern) invalid host",
63	"(os/kern) memory present",
64	"(os/kern) memory data moved",
65	"(os/kern) memory restart copy",	/* 25 */
66	"(os/kern) invalid processor set",
67	"(os/kern) policy limit",
68	"(os/kern) invalid policy",
69	"(os/kern) invalid object",
70	"(os/kern) already waiting",		/* 30 */
71	"(os/kern) default set",
72	"(os/kern) exception protected",
73	"(os/kern) invalid ledger",
74	"(os/kern) invalid memory control",
75	"(os/kern) invalid security",		/* 35 */
76	"(os/kern) not depressed",
77	"(os/kern) object terminated",
78	"(os/kern) lock set destroyed",
79	"(os/kern) lock unstable",
80	"(os/kern) lock owned by another",	/* 40 */
81	"(os/kern) lock owned by self",
82	"(os/kern) semaphore destroyed",
83	"(os/kern) RPC terminated",
84	"(os/kern) terminate orphan",
85	"(os/kern) let orphan continue",	/* 45 */
86	"(os/kern) service not supported",
87	"(os/kern) remote node down",
88};
89
90static const char * const err_codes_unix[] = {
91	NO_SUCH_ERROR,
92	"(os/unix) no rights to object",
93	"(os/unix) file or directory does not exist",
94	"(os/unix) no such process",
95	"(os/unix) interrupted system call",
96	"(os/unix) i/o error",
97	"(os/unix) device does not exist",
98	"(os/unix) argument list is too long",
99	"(os/unix) invalid executable object format",
100	"(os/unix) bad file descriptor number",
101	"(os/unix) no child processes are present",
102	"(os/unix) no more processes are available",
103	"(os/unix) insufficient memory",
104	"(os/unix) access denied",
105	"(os/unix) memory access fault",
106	"(os/unix) block device required for operation",
107	"(os/unix) mount device busy",
108	"(os/unix) file already exists",
109	"(os/unix) cross device link",
110	"(os/unix) device does not exist",
111	"(os/unix) object is not a directory",
112	"(os/unix) object is a directory",
113	"(os/unix) invalid argument",
114	"(os/unix) internal file table overflow",
115	"(os/unix) maximum number of open files reached",
116	"(os/unix) object is not a tty-like device",
117	"(os/unix) executable object is in use",
118	"(os/unix) file is too large",
119	"(os/unix) no space is left on device",
120	"(os/unix) illegal seek attempt",
121	"(os/unix) read-only file system",
122	"(os/unix) too many links",
123	"(os/unix) broken pipe",
124	"(os/unix) argument is too large",
125	"(os/unix) result is out of range",
126	"(os/unix) operation on device would block",
127	"(os/unix) operation is now in progress",
128	"(os/unix) operation is already in progress",
129	"(os/unix) socket operation attempted on non-socket object",
130	"(os/unix) destination address is required",
131	"(os/unix) message is too long",
132	"(os/unix) protocol type is incorrect for socket",
133	"(os/unix) protocol type is not availaible",
134	"(os/unix) protocol type is not supported",
135	"(os/unix) socket type is not supported",
136	"(os/unix) operation is not supported on sockets",
137	"(os/unix) protocol family is not supported",
138	"(os/unix) address family is not supported by protocol family",
139	"(os/unix) address is already in use",
140	"(os/unix) can't assign requested address",
141	"(os/unix) network is down",
142	"(os/unix) network is unreachable",
143	"(os/unix) network dropped connection on reset",
144	"(os/unix) software aborted connection",
145	"(os/unix) connection reset by peer",
146	"(os/unix) no buffer space is available",
147	"(os/unix) socket is already connected",
148	"(os/unix) socket is not connected",
149	"(os/unix) can't send after socket shutdown",
150	"(os/unix) too many references; can't splice",
151	"(os/unix) connection timed out",
152	"(os/unix) connection was refused",
153	"(os/unix) too many levels of symbolic links",
154	"(os/unix) file name exceeds system maximum limit",
155	"(os/unix) host is down",
156	"(os/unix) there is no route to host",
157	"(os/unix) directory is not empty",
158	"(os/unix) quota on number of processes exceeded",
159	"(os/unix) quota on number of users exceeded",
160	"(os/unix) quota on available disk space exceeded",
161};
162
163static const struct error_subsystem err_os_sub[] = {
164	{
165	"(os/kern)",
166	errlib_count(err_codes_kern),
167	err_codes_kern,
168	},
169	{
170	"(os/?)",
171	0,
172	},
173	{
174	"(os/?)",
175	0,
176	},
177	{
178	"(os/unix)",
179	errlib_count(err_codes_unix),
180	err_codes_unix,
181	},
182};
183