1/*
2 * Mach Operating System
3 * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the
9 * software, derivative works or modified versions, and any portions
10 * thereof, and that both notices appear in supporting documentation.
11 *
12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS
13 * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 *
16 * Carnegie Mellon requests users of this software to return to
17 *
18 *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
19 *  School of Computer Science
20 *  Carnegie Mellon University
21 *  Pittsburgh PA 15213-3890
22 *
23 * any improvements or extensions that they make and grant Carnegie the
24 * rights to redistribute these changes.
25 */
26/*
27 * HISTORY
28 *
29 * Revision 2.2  92/01/16  00:10:29  rpd
30 * 	Moved from user collection to mk collection.
31 *
32 * Revision 2.3  91/08/29  15:51:39  rpd
33 * 	Fixed err_codes_netname.
34 * 	[91/08/22            rpd]
35 *
36 * Revision 2.2  91/03/27  16:05:51  mrt
37 * 	First checkin
38 *
39 * Revision 2.3  90/10/29  17:27:20  dpj
40 * 	Merged-up to U25
41 * 	[90/09/02  20:00:25  dpj]
42 *
43 */
44/*
45 *	File:	err_server.sub
46 *	Author:	Douglas Orr, Carnegie Mellon University
47 *	Date:	Mar, 1988
48 *
49 *	Definitions of Servers error strings
50 */
51
52static char * err_codes_netname[] = {			/* 0 */
53		"(server/netname) name is not yours",
54		"(server/netname) name not checked in",
55		"(server/netname) no such host",
56		"(server/netname) host not found",
57};
58static char * err_codes_env_mgr[] = {			/* 1 */
59		NO_SUCH_ERROR,
60		"(server/env_mgr) variable not found",
61		"(server/env_mgr) wrong type of variable",
62		"(server/env_mgr) unknown port",
63		"(server/env_mgr) read only environment",
64		"(server/env_mgr) no more connections available",
65		"(server/env_mgr) port table full",
66		"(server/env_mgr) attempting to enter a null port ",
67};
68static char * err_codes_execd[] = {			/* 2 */
69		NO_SUCH_ERROR,
70		"(server/execd) could not find file to run",
71		"(server/execd) userid or password incorrect",
72		"(server/execd) fork failed",
73};
74static char * err_codes_netmemory[] = {			/* 3 */
75		"(server/netmemory) successful",
76		"(server/netmemory) invalid argument",
77		"(server/netmemory) resource shortage",
78};
79static char * err_codes_ufs[] = {			/* 4 */
80		NO_SUCH_ERROR,
81/* XXX		"(server/ufs) invalid port", */
82};
83
84static char * err_codes_task_master[] = {		/* 5 */
85		"(server/task_master) GENERIC ERROR",
86		"(server/task_master) invalid tm_task port",
87		"(server/task_master) invalid task id",
88		"(server/task_master) invalid kernel port",
89		"(server/task_master) invalid job group",
90		"(server/task_master) invalid action",
91};
92
93static char * err_codes_ns[] = {			/* 6 */
94		"(server/ns) GENERIC ERROR",
95		"(server/ns) invalid handle",
96		"(server/ns) name not found",
97		"(server/ns) name already exists",
98		"(server/ns) name too long",
99		"(server/ns) path too long",
100		"(server/ns) invalid name",
101		"(server/ns) not a directory",
102		"(server/ns) is a directory",
103		"(server/ns) directory not empty",
104		"(server/ns) infinite retry loop in resolver",
105		"(server/ns) infinite forwarding loop in resolver",
106		"(server/ns) invalid prefix",
107		"(server/ns) prefix table overflow",
108		"(server/ns) bad format for directory",
109		"(server/ns) unknown entry type",
110		"(server/ns) invalid generation",
111		"(server/ns) entry not reserved",
112};
113
114static char 	* err_codes_io[] = {			/* 7 */
115		"(server/io) GENERIC ERROR",
116		"(server/io) invalid offset",
117		"(server/io) invalid size",
118		"(server/io) invalid mode",
119		"(server/io) invalid strategy",
120		"(server/io) operation rejected under current I/O strategy",
121};
122
123static char * err_codes_auth[] = {			/* 8 */
124		"(server/auth) GENERIC ERROR",
125		"(server/auth) bad private port",
126		"(server/auth) bad name",
127		"(server/auth) not primary",
128		"(server/auth) bad pauthsword",
129		"(server/auth) bad group",
130		"(server/auth) duplicate id",
131		"(server/auth) duplicate name",
132		"(server/auth) not secondary",
133};
134
135static char * err_codes_us[] = {			/* 9 */
136		"(server/us) GENERIC ERROR",
137		"(server/us) unknown error",
138		"(server/us) object not found",
139		"(server/us) object exists",
140		"(server/us) object busy",
141		"(server/us) object not started",
142		"(server/us) object dead",
143		"(server/us) invalid args",
144		"(server/us) invalid access",
145		"(server/us) invalid format",
146		"(server/us) invalid buffer size",
147		"(server/us) access denied",
148		"(server/us) resource exhausted",
149		"(server/us) quota exceeded",
150		"(server/us) limit exceeded",
151		"(server/us) not implemented",
152		"(server/us) not supported",
153		"(server/us) hardware error",
154		"(server/us) retry required",
155		"(server/us) not authenticated",
156		"(server/us) exclusive access",
157		"(server/us) timeout",
158		"(server/us) bad reference count",
159		"(server/us) internal error",
160};
161
162static char * err_codes_sunrpc[] = {			/* 10 */
163		"(server/sunrpc) GENERIC ERROR",
164		"(server/sunrpc) cannot encode arguments",
165		"(server/sunrpc) cannot decode results",
166		"(server/sunrpc) failure in sending call",
167		"(server/sunrpc) failure in receiving result",
168		"(server/sunrpc) call timed out",
169		"(server/sunrpc) rpc versions not compatible",
170		"(server/sunrpc) authentication error",
171		"(server/sunrpc) program not available",
172		"(server/sunrpc) program version mismatched",
173		"(server/sunrpc) procedure unavailable",
174		"(server/sunrpc) decode arguments error",
175		"(server/sunrpc) generic other problem",
176		"(server/sunrpc) unknown host name",
177		"(server/sunrpc) portmapper failed",
178		"(server/sunrpc) remote program not registered",
179		"(server/sunrpc) unspecified error",
180		"(server/sunrpc) unknown protocol",
181};
182
183static char	* err_codes_machobj[] = {		/* 11 */
184		"(server/object system) GENERIC ERROR",
185		"(server/object system) object not found",
186		"(server/object system) no such operation",
187		"(server/object system) undefined ipc method arguments",
188		"(server/object system) too many arguments to method",
189		"(server/object system) bad ipc message format",
190};
191
192static char 	* err_codes_loader[] = {		/* 12 */
193		"(server/loader) GENERIC ERROR",
194		"(server/loader) object file not relocated",
195		"(server/loader) unknown file type",
196		"(server/loader) symbol not found",
197		"(server/loader) symbol multiply defined",
198		"(server/loader) memory region overlap",
199};
200
201
202static char	* err_codes_exception[] = {		/* 13 */
203	"(server/exception) GENERIC ERROR",
204	"(server/exception) invalid access",
205	"(server/exception) invalid instruction",
206	"(server/exception) arithmetic exception",
207	"(server/exception) emulation exception",
208	"(server/exception) software exception",
209	"(server/exception) breakpoint exception",
210};
211
212static char	* err_codes_ux_signal[] = {		/* 14 */
213	"(server/unix-signal) GENERIC ERROR",
214	"(server/unix-signal) hangup",
215	"(server/unix-signal) interrupt",
216	"(server/unix-signal) quit",
217	"(server/unix-signal) undefined",
218	"(server/unix-signal) undefined",
219	"(server/unix-signal) undefined",
220	"(server/unix-signal) undefined",
221	"(server/unix-signal) kill",
222	"(server/unix-signal) undefined",
223	"(server/unix-signal) undefined",
224	"(server/unix-signal) system error",
225	"(server/unix-signal) pipe signal",
226	"(server/unix-signal) alarm",
227	"(server/unix-signal) terminate",
228	"(server/unix-signal) urgent i/o",
229	"(server/unix-signal) stop",
230	"(server/unix-signal) terminal stop",
231	"(server/unix-signal) continue",
232	"(server/unix-signal) child death",
233	"(server/unix-signal) tty input",
234	"(server/unix-signal) tty output",
235	"(server/unix-signal) i/o signal",
236	"(server/unix-signal) cpu time limit exceeded",
237	"(server/unix-signal) file size exceeded",
238	"(server/unix-signal) virtual alarm",
239	"(server/unix-signal) profile signal",
240	"(server/unix-signal) window size change",
241	"(server/unix-signal) user-defined signal 1",
242	"(server/unix-signal) user-defined signal 2",
243};
244
245static char	* err_codes_xkernel[] = {		/* 15 */
246	"(server/xkernel) GENERIC ERROR",
247	"(server/xkernel) map full",
248	"(server/xkernel) inconsistent bind",
249	"(server/xkernel) cannot resolve",
250	"(server/xkernel) cannot unbind",
251	"(server/xkernel) invalid type",
252	"(server/xkernel) invalid opcode",
253	"(server/xkernel) buffer too small",
254	"(server/xkernel) invalid ev code",
255	"(server/xkernel) event not registered",
256	"(server/xkernel) invalid open",
257	"(server/xkernel) already open",
258	"(server/xkernel) bad addr",
259};
260
261
262/*	err_server subsystems      	*/
263static struct error_subsystem err_server_sub[] = {
264	/* server/0; */
265	{
266		"(server/netname)",
267		errlib_count(err_codes_netname),
268		err_codes_netname,
269	},
270	/* server/1; */
271	{
272		"(server/env_mgr)",
273		errlib_count(err_codes_env_mgr),
274		err_codes_env_mgr,
275	},
276	/* server/2; */
277	{
278		"(server/execd)",
279		errlib_count(err_codes_execd),
280		err_codes_execd,
281	},
282	/* server/3; */
283	{
284		"(server/netmemory)",
285		errlib_count(err_codes_netmemory),
286		err_codes_netmemory,
287	},
288	/* server/4; */
289	{
290		"(server/ufs)",
291		errlib_count(err_codes_ufs),
292		err_codes_ufs,
293	},
294	/* server/5; */
295	{
296		"(server/task_master)",
297		errlib_count(err_codes_task_master),
298		err_codes_task_master,
299	},
300	/* server/6; */
301	{
302		"(server/ns)",
303		errlib_count(err_codes_ns),
304		err_codes_ns,
305	},
306
307	/* server/7; i/o subsystem */
308	{
309		"(server/io)",
310		errlib_count(err_codes_io),
311		err_codes_io,
312	},
313
314	/* server/8; authentication server */
315	{
316		"(server/auth)",
317		errlib_count(err_codes_auth),
318		err_codes_auth,
319	},
320
321	/* server/9; generic US system */
322	{
323		"(server/us)",
324		errlib_count(err_codes_us),
325		err_codes_us,
326	},
327
328	/* server/10; SUN RPC package */
329	{
330		"(server/sunrpc)",
331		errlib_count(err_codes_sunrpc),
332		err_codes_sunrpc,
333	},
334
335	/* server/11; MachObject system */
336	{
337		"(server/object system)",
338		errlib_count(err_codes_machobj),
339		err_codes_machobj,
340	},
341
342	/* server/12; loader */
343	{
344		"(server/loader)",
345		errlib_count(err_codes_loader),
346		err_codes_loader,
347	},
348
349	/* server/13; mach exception */
350	{
351		"(server/exception)",
352		errlib_count(err_codes_exception),
353		err_codes_exception,
354	},
355
356	/* server/14; unix signal */
357	{
358		"(server/unix-signal)",
359		errlib_count(err_codes_ux_signal),
360		err_codes_ux_signal,
361	},
362
363	/* server/15; xkernel */
364	{
365		"(server/xkernel)",
366		errlib_count(err_codes_xkernel),
367		err_codes_xkernel,
368	},
369
370};
371