aboutsummaryrefslogtreecommitdiff
blob: d5290b4e9bda0554d785b0464eb7ac13919acf7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
/* 
 * Mach Operating System
 * Copyright (c) 1991,1990,1989 Carnegie Mellon University
 * All Rights Reserved.
 * 
 * Permission to use, copy, modify and distribute this software and its
 * documentation is hereby granted, provided that both the copyright
 * notice and this permission notice appear in all copies of the
 * software, derivative works or modified versions, and any portions
 * thereof, and that both notices appear in supporting documentation.
 * 
 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS 
 * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
 * 
 * Carnegie Mellon requests users of this software to return to
 * 
 *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
 *  School of Computer Science
 *  Carnegie Mellon University
 *  Pittsburgh PA 15213-3890
 * 
 * any improvements or extensions that they make and grant Carnegie the
 * rights to redistribute these changes.
 */
/*
 * HISTORY
 * $Log$
 * Revision 1.4  1993/12/17 06:14:52  mib
 * entered into RCS
 *
 * Revision 2.3  92/04/01  19:38:02  rpd
 * 	Added err_codes_device.
 * 	[92/03/09            rpd]
 * 
 * Revision 2.2  92/01/16  00:08:50  rpd
 * 	Moved from user collection to mk collection.
 * 
 * Revision 2.3  91/08/29  15:51:22  rpd
 * 	Updated err_codes_kern.
 * 	[91/08/15            rpd]
 * 
 * Revision 2.2  91/03/27  16:05:27  mrt
 * 	First checkin
 * 
 */
/*
 *	File: 	err_kern.sub
 *	Author:	Douglas Orr, Carnegie Mellon University
 *	Date:	Mar, 1988
 *
 *	error codes for Mach and Unix kernels
 */

static char * err_codes_kern[] = {
	"(os/kern) successful",
	"(os/kern) invalid address",
	"(os/kern) protection failure",
	"(os/kern) no space available",
	"(os/kern) invalid argument",
	"(os/kern) failure",
	"(os/kern) resource shortage",
	"(os/kern) not receiver",
	"(os/kern) no access",
	"(os/kern) memory failure",
	"(os/kern) memory error",
	"(os/kern) already in set",
	"(os/kern) not in set",
	"(os/kern) name exists",
	"(os/kern) aborted",
	"(os/kern) invalid name",
	"(os/kern) invalid task",
	"(os/kern) invalid right",
	"(os/kern) invalid value",
	"(os/kern) urefs overflow",
	"(os/kern) invalid capability",
	"(os/kern) right exists",
	"(os/kern) invalid host",
	"(os/kern) memory present",
};

static char * err_codes_device[] = {
	"(os/device) hardware IO error",
	"(os/device) operation would block",
	"(os/device) no such device",
	"(os/device) device already open",
	"(os/device) device is shut down",
	"(os/device) invalid operation",
	"(os/device) invalid record number",
	"(os/device) invalid IO size",
	"(os/device) memory allocation failure",
	"(os/device) read only",
};

static char * err_codes_unix[] = {
	NO_SUCH_ERROR,
	"(os/unix) no rights to object",
	"(os/unix) file or directory does not exist",
	"(os/unix) no such process",
	"(os/unix) interrupted system call",
	"(os/unix) i/o error",
	"(os/unix) device does not exist",
	"(os/unix) argument list is too long",
	"(os/unix) invalid executable object format",
	"(os/unix) bad file descriptor number",
	"(os/unix) no child processes are present",
	"(os/unix) no more processes are available",
	"(os/unix) insufficient memory",
	"(os/unix) access denied",
	"(os/unix) memory access fault",
	"(os/unix) block device required for operation",
	"(os/unix) mount device busy",
	"(os/unix) file already exists",
	"(os/unix) cross device link",
	"(os/unix) device does not exist",
	"(os/unix) object is not a directory",
	"(os/unix) object is a directory",
	"(os/unix) invalid argument",
	"(os/unix) internal file table overflow",
	"(os/unix) maximum number of open files reached",
	"(os/unix) object is not a tty-like device",
	"(os/unix) executable object is in use",
	"(os/unix) file is too large",
	"(os/unix) no space is left on device",
	"(os/unix) illegal seek attempt",
	"(os/unix) read-only file system",
	"(os/unix) too many links",
	"(os/unix) broken pipe",
	"(os/unix) argument is too large",
	"(os/unix) result is out of range",
	"(os/unix) operation on device would block",
	"(os/unix) operation is now in progress",
	"(os/unix) operation is already in progress",	
	"(os/unix) socket operation attempted on non-socket object",
	"(os/unix) destination address is required",
	"(os/unix) message is too long",
	"(os/unix) protocol type is incorrect for socket",
	"(os/unix) protocol type is not availaible",
	"(os/unix) protocol type is not supported",
	"(os/unix) socket type is not supported",
	"(os/unix) operation is not supported on sockets",
	"(os/unix) protocol family is not supported",
	"(os/unix) address family is not supported by protocol family",
	"(os/unix) address is already in use",
	"(os/unix) can't assign requested address",
	"(os/unix) network is down",
	"(os/unix) network is unreachable",
	"(os/unix) network dropped connection on reset",
	"(os/unix) software aborted connection",
	"(os/unix) connection reset by peer",
	"(os/unix) no buffer space is available",
	"(os/unix) socket is already connected",
	"(os/unix) socket is not connected",
	"(os/unix) can't send after socket shutdown",
	"(os/unix) too many references; can't splice",
	"(os/unix) connection timed out",
	"(os/unix) connection was refused",
	"(os/unix) too many levels of symbolic links",
	"(os/unix) file name exceeds system maximum limit",
	"(os/unix) host is down",
	"(os/unix) there is no route to host",
	"(os/unix) directory is not empty",
	"(os/unix) quota on number of processes exceeded",
	"(os/unix) quota on number of users exceeded",
	"(os/unix) quota on available disk space exceeded",
};

static struct error_subsystem err_kern_sub[] = {
	{
	"(os/kern)",
	errlib_count(err_codes_kern),
	err_codes_kern,
	},
	{
	"(os/device)",
	errlib_count(err_codes_device),
	err_codes_device,
	},
	{
	"(os/?)",
	0,
	},
	{
	"(os/unix)",
	errlib_count(err_codes_unix),
	err_codes_unix,
	},
};