Fix mdoc(7)/man(7) mix up.
[netbsd-mini2440.git] / lib / libc / gen / errlist.c
blob5ebf1fce9f52cfccf5e0be69f8a87e0b566ec75a
1 /* $NetBSD: errlist.c,v 1.16 2006/02/20 17:33:47 christos Exp $ */
3 /*
4 * Copyright (c) 1982, 1985, 1993
5 * The Regents of the University of California. All rights reserved.
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. Neither the name of the University nor the names of its contributors
16 * may be used to endorse or promote products derived from this software
17 * without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 * SUCH DAMAGE.
32 #include <sys/cdefs.h>
33 #if defined(LIBC_SCCS) && !defined(lint)
34 #if 0
35 static char sccsid[] = "@(#)errlst.c 8.2 (Berkeley) 11/16/93";
36 #else
37 __RCSID("$NetBSD: errlist.c,v 1.16 2006/02/20 17:33:47 christos Exp $");
38 #endif
39 #endif /* LIBC_SCCS and not lint */
41 #include <errno.h>
43 static const char *const errlist[] = {
44 "Undefined error: 0", /* 0 - ENOERROR */
45 "Operation not permitted", /* 1 - EPERM */
46 "No such file or directory", /* 2 - ENOENT */
47 "No such process", /* 3 - ESRCH */
48 "Interrupted system call", /* 4 - EINTR */
49 "Input/output error", /* 5 - EIO */
50 "Device not configured", /* 6 - ENXIO */
51 "Argument list too long", /* 7 - E2BIG */
52 "Exec format error", /* 8 - ENOEXEC */
53 "Bad file descriptor", /* 9 - EBADF */
54 "No child processes", /* 10 - ECHILD */
55 "Resource deadlock avoided", /* 11 - EDEADLK */
56 "Cannot allocate memory", /* 12 - ENOMEM */
57 "Permission denied", /* 13 - EACCES */
58 "Bad address", /* 14 - EFAULT */
59 "Block device required", /* 15 - ENOTBLK */
60 "Device busy", /* 16 - EBUSY */
61 "File exists", /* 17 - EEXIST */
62 "Cross-device link", /* 18 - EXDEV */
63 "Operation not supported by device", /* 19 - ENODEV */
64 "Not a directory", /* 20 - ENOTDIR */
65 "Is a directory", /* 21 - EISDIR */
66 "Invalid argument", /* 22 - EINVAL */
67 "Too many open files in system", /* 23 - ENFILE */
68 "Too many open files", /* 24 - EMFILE */
69 "Inappropriate ioctl for device", /* 25 - ENOTTY */
70 "Text file busy", /* 26 - ETXTBSY */
71 "File too large", /* 27 - EFBIG */
72 "No space left on device", /* 28 - ENOSPC */
73 "Illegal seek", /* 29 - ESPIPE */
74 "Read-only file system", /* 30 - EROFS */
75 "Too many links", /* 31 - EMLINK */
76 "Broken pipe", /* 32 - EPIPE */
78 /* math software */
79 "Numerical argument out of domain", /* 33 - EDOM */
80 "Result too large or too small", /* 34 - ERANGE */
82 /* non-blocking and interrupt i/o */
83 "Resource temporarily unavailable", /* 35 - EAGAIN */
84 /* 35 - EWOULDBLOCK */
85 "Operation now in progress", /* 36 - EINPROGRESS */
86 "Operation already in progress", /* 37 - EALREADY */
88 /* ipc/network software -- argument errors */
89 "Socket operation on non-socket", /* 38 - ENOTSOCK */
90 "Destination address required", /* 39 - EDESTADDRREQ */
91 "Message too long", /* 40 - EMSGSIZE */
92 "Protocol wrong type for socket", /* 41 - EPROTOTYPE */
93 "Protocol option not available", /* 42 - ENOPROTOOPT */
94 "Protocol not supported", /* 43 - EPROTONOSUPPORT */
95 "Socket type not supported", /* 44 - ESOCKTNOSUPPORT */
96 "Operation not supported", /* 45 - EOPNOTSUPP */
97 "Protocol family not supported", /* 46 - EPFNOSUPPORT */
98 /* 47 - EAFNOSUPPORT */
99 "Address family not supported by protocol family",
100 "Address already in use", /* 48 - EADDRINUSE */
101 "Can't assign requested address", /* 49 - EADDRNOTAVAIL */
103 /* ipc/network software -- operational errors */
104 "Network is down", /* 50 - ENETDOWN */
105 "Network is unreachable", /* 51 - ENETUNREACH */
106 "Network dropped connection on reset", /* 52 - ENETRESET */
107 "Software caused connection abort", /* 53 - ECONNABORTED */
108 "Connection reset by peer", /* 54 - ECONNRESET */
109 "No buffer space available", /* 55 - ENOBUFS */
110 "Socket is already connected", /* 56 - EISCONN */
111 "Socket is not connected", /* 57 - ENOTCONN */
112 "Can't send after socket shutdown", /* 58 - ESHUTDOWN */
113 "Too many references: can't splice", /* 59 - ETOOMANYREFS */
114 "Operation timed out", /* 60 - ETIMEDOUT */
115 "Connection refused", /* 61 - ECONNREFUSED */
117 "Too many levels of symbolic links", /* 62 - ELOOP */
118 "File name too long", /* 63 - ENAMETOOLONG */
120 /* should be rearranged */
121 "Host is down", /* 64 - EHOSTDOWN */
122 "No route to host", /* 65 - EHOSTUNREACH */
123 "Directory not empty", /* 66 - ENOTEMPTY */
125 /* quotas & mush */
126 "Too many processes", /* 67 - EPROCLIM */
127 "Too many users", /* 68 - EUSERS */
128 "Disc quota exceeded", /* 69 - EDQUOT */
130 /* Network File System */
131 "Stale NFS file handle", /* 70 - ESTALE */
132 "Too many levels of remote in path", /* 71 - EREMOTE */
133 "RPC struct is bad", /* 72 - EBADRPC */
134 "RPC version wrong", /* 73 - ERPCMISMATCH */
135 "RPC prog. not avail", /* 74 - EPROGUNAVAIL */
136 "Program version wrong", /* 75 - EPROGMISMATCH */
137 "Bad procedure for program", /* 76 - EPROCUNAVAIL */
139 "No locks available", /* 77 - ENOLCK */
140 "Function not implemented", /* 78 - ENOSYS */
142 "Inappropriate file type or format", /* 79 - EFTYPE */
143 "Authentication error", /* 80 - EAUTH */
144 "Need authenticator", /* 81 - ENEEDAUTH */
146 /* SystemV IPC */
147 "Identifier removed", /* 82 - EIDRM */
148 "No message of desired type", /* 83 - ENOMSG */
149 /* 84 - EOVERFLOW */
150 "Value too large to be stored in data type",
152 /* Wide/multibyte-character handling, ISO/IEC 9899/AMD1:1995 */
153 "Illegal byte sequence", /* 85 - EILSEQ */
155 /* Base, Realtime, Threads or Thread Priority Scheduling option errors */
156 "Not supported", /* 86 - ENOTSUP */
158 /* Realtime option errors */
159 "Operation Canceled", /* 87 - ECANCELED */
161 /* Realtime, XSI STREAMS option errors */
162 "Bad or Corrupt message", /* 88 - EBADMSG */
164 /* XSI STREAMS option errors */
165 "No message available", /* 89 - ENODATA */
166 "No STREAM resources", /* 90 - ENOSR */
167 "Not a STREAM", /* 91 - ENOSTR */
168 "STREAM ioctl timeout", /* 92 - ETIME */
170 /* File system extended attribute errors */
171 "Attribute not found", /* 93 - ENOATTR */
173 "Multihop attempted", /* 94 - EMULTIHOP */
174 "Link has been severed", /* 95 - ENOLINK */
175 "Protocol error" /* 96 - EPROTO */
178 const int sys_nerr = sizeof(errlist) / sizeof(errlist[0]);
180 const char * const *sys_errlist = errlist;