1/* 	$NetBSD: linux_errno.h,v 1.7 2008/04/28 20:23:42 martin Exp $	*/
2
3/*-
4 * Copyright (c) 1998 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Eric Haszlakiewicz.
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 * 1. Redistributions of source code must retain the above copyright
14 *    notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 *    notice, this list of conditions and the following disclaimer in the
17 *    documentation and/or other materials provided with the distribution.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 * POSSIBILITY OF SUCH DAMAGE.
30 */
31
32#ifndef _ALPHA_LINUX_ERRNO_H
33#define _ALPHA_LINUX_ERRNO_H
34
35/*
36 * Linux/Alpha returns negative errors to userland
37 * The libc makes the errno positive.
38 */
39#define LINUX_SCERR_SIGN -
40
41/* Linux switches EDEADLK and EAGAIN. */
42#undef	LINUX_EDEADLK
43#define LINUX_EDEADLK		11
44#undef	LINUX_EAGAIN
45#define LINUX_EAGAIN		35
46
47#define LINUX_EWOULDBLOCK	LINUX_EAGAIN
48#define LINUX_EINPROGRESS	36	/* Operation now in progress */
49#define LINUX_EALREADY		37	/* Operation already in progress */
50#define LINUX_ENOTSOCK		38	/* Socket operation on non-socket */
51#define LINUX_EDESTADDRREQ	39	/* Destination address required */
52#define LINUX_EMSGSIZE		40	/* Message too long */
53#define LINUX_EPROTOTYPE	41	/* Protocol wrong type for socket */
54#define LINUX_ENOPROTOOPT	42	/* Protocol option not available */
55#define LINUX_EPROTONOSUPPORT	43	/* Protocol not supported */
56#define LINUX_ESOCKTNOSUPPORT	44	/* Socket type not supported */
57#define LINUX_EOPNOTSUPP	45	/* Operation not supported on transport endpoint */
58#define LINUX_EPFNOSUPPORT	46	/* Protocol family not supported */
59#define LINUX_EAFNOSUPPORT	47	/* Address family not supported by protocol */
60#define LINUX_EADDRINUSE	48	/* Address already in use */
61#define LINUX_EADDRNOTAVAIL	49	/* Cannot assign requested address */
62#define LINUX_ENETDOWN		50	/* Network is down */
63#define LINUX_ENETUNREACH	51	/* Network is unreachable */
64#define LINUX_ENETRESET		52	/* Network connection reset */
65#define LINUX_ECONNABORTED	53	/* Software caused connection abort */
66#define LINUX_ECONNRESET	54	/* Connection reset by peer */
67#define LINUX_ENOBUFS		55	/* No buffer space available */
68#define LINUX_EISCONN		56	/* Transport endpoint is already connected */
69#define LINUX_ENOTCONN		57	/* Transport endpoint is not connected */
70#define LINUX_ESHUTDOWN		58	/* Cannot send after transport endpoint shutdown */
71#define LINUX_ETOOMANYREFS	59	/* Too many references: cannot splice */
72#define LINUX_ETIMEDOUT		60	/* Connection timed out */
73#define LINUX_ECONNREFUSED	61	/* Connection refused */
74#define LINUX_ELOOP		62	/* Too many symbolic links encountered */
75#define LINUX_ENAMETOOLONG	63	/* File name too long */
76#define LINUX_EHOSTDOWN		64	/* Host is down */
77#define LINUX_EHOSTUNREACH	65	/* No route to host */
78#define LINUX_ENOTEMPTY		66	/* Directory not empty */
79
80#define LINUX_EUSERS		68	/* Too many users */
81#define LINUX_EDQUOT		69	/* Quota exceeded */
82#define LINUX_ESTALE		70	/* Stale NFS file handle */
83#define LINUX_EREMOTE		71	/* Object is remote */
84
85#define LINUX_ENOLCK		77	/* No record locks available */
86#define LINUX_ENOSYS		78	/* Function not implemented */
87
88#define LINUX_ENOMSG		80	/* No message of desired type */
89#define LINUX_EIDRM		81	/* Identifier removed */
90#define LINUX_ENOSR		82	/* Out of streams resources */
91#define LINUX_ETIME		83	/* Timer expired */
92#define LINUX_EBADMSG		84	/* Not a data message */
93#define LINUX_EPROTO		85	/* Protocol error */
94#define LINUX_ENODATA		86	/* No data available */
95#define LINUX_ENOSTR		87	/* Device not a stream */
96
97#define LINUX_ENOPKG		92	/* Package not installed */
98
99#define LINUX_EILSEQ		116	/* Illegal byte sequence */
100
101/* The following are just random noise.. */
102#define LINUX_ECHRNG		88	/* Channel number out of range */
103#define LINUX_EL2NSYNC		89	/* Level 2 not synchronized */
104#define LINUX_EL3HLT		90	/* Level 3 halted */
105#define LINUX_EL3RST		91	/* Level 3 reset */
106
107#define LINUX_ELNRNG		93	/* Link number out of range */
108#define LINUX_EUNATCH		94	/* Protocol driver not attached */
109#define LINUX_ENOCSI		95	/* No CSI structure available */
110#define LINUX_EL2HLT		96	/* Level 2 halted */
111#define LINUX_EBADE		97	/* Invalid exchange */
112#define LINUX_EBADR		98	/* Invalid request descriptor */
113#define LINUX_EXFULL		99	/* Exchange full */
114#define LINUX_ENOANO		100	/* No anode */
115#define LINUX_EBADRQC		101	/* Invalid request code */
116#define LINUX_EBADSLT		102	/* Invalid slot */
117
118#define LINUX_EDEADLOCK	LINUX_EDEADLK
119
120#define LINUX_EBFONT		104	/* Bad font file format */
121#define LINUX_ENONET		105	/* Machine is not on the network */
122#define LINUX_ENOLINK		106	/* Link has been severed */
123#define LINUX_EADV		107	/* Advertise error */
124#define LINUX_ESRMNT		108	/* Srmount error */
125#define LINUX_ECOMM		109	/* Communication error on send */
126#define LINUX_EMULTIHOP		110	/* Multihop attempted */
127#define LINUX_EDOTDOT		111	/* RFS specific error */
128#define LINUX_EOVERFLOW		112	/* Value too large for defined data type */
129#define LINUX_ENOTUNIQ		113	/* Name not unique on network */
130#define LINUX_EBADFD		114	/* File descriptor in bad state */
131#define LINUX_EREMCHG		115	/* Remote address changed */
132
133#define LINUX_EUCLEAN		117	/* Structure needs cleaning */
134#define LINUX_ENOTNAM		118	/* Not a XENIX named type file */
135#define LINUX_ENAVAIL		119	/* No XENIX semaphores available */
136#define LINUX_EISNAM		120	/* Is a named type file */
137#define LINUX_EREMOTEIO		121	/* Remote I/O error */
138
139#define LINUX_ELIBACC		122	/* Can't access a shared library */
140#define LINUX_ELIBBAD		123	/* Accessing a corrupted shared library */
141#define LINUX_ELIBSCN		124	/* .lib section in a.out corrupted */
142#define LINUX_ELIBMAX		125	/* Link in too many shared libraries */
143#define LINUX_ELIBEXEC		126	/* Cannot exec a shared library directly */
144#define LINUX_ERESTART		127	/* Restart interrupted system call */
145#define LINUX_ESTRPIPE		128	/* Streams pipe error */
146
147#define LINUX_ENOMEDIUM		129	/* No medium found */
148#define LINUX_EMEDIUMTYPE	130	/* Wrong medium type */
149#define LINUX_ECANCELED		131	/* Operation Cancelled */
150#define LINUX_ENOKEY		132	/* Required key not available */
151#define LINUX_EKEYEXPIRED	133	/* Key has expired */
152#define LINUX_EKEYREVOKED	134	/* Key has been revoked */
153#define LINUX_EKEYREJECTED	135	/* Key was rejected by service */
154
155#define LINUX_EOWNERDEAD	136	/* Owner died */
156#define LINUX_ENOTRECOVERABLE	137	/* State not recoverable */
157
158#define LINUX_ERFKILL		138	/* Operation not possible due to RF-kill */
159
160#define LINUX_EHWPOISON		139	/* Memory page has hardware error */
161
162#endif /* !_ALPHA_LINUX_ERRNO_H */
163