1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _SPARC_ERRNO_H
3#define _SPARC_ERRNO_H
4
5/* These match the SunOS error numbering scheme. */
6
7#include <asm-generic/errno-base.h>
8
9#define EWOULDBLOCK EAGAIN /* Operation would block */
10#define EINPROGRESS 36 /* Operation now in progress */
11#define EALREADY 37 /* Operation already in progress */
12#define ENOTSOCK 38 /* Socket operation on non-socket */
13#define EDESTADDRREQ 39 /* Destination address required */
14#define EMSGSIZE 40 /* Message too long */
15#define EPROTOTYPE 41 /* Protocol wrong type for socket */
16#define ENOPROTOOPT 42 /* Protocol not available */
17#define EPROTONOSUPPORT 43 /* Protocol not supported */
18#define ESOCKTNOSUPPORT 44 /* Socket type not supported */
19#define EOPNOTSUPP 45 /* Op not supported on transport endpoint */
20#define EPFNOSUPPORT 46 /* Protocol family not supported */
21#define EAFNOSUPPORT 47 /* Address family not supported by protocol */
22#define EADDRINUSE 48 /* Address already in use */
23#define EADDRNOTAVAIL 49 /* Cannot assign requested address */
24#define ENETDOWN 50 /* Network is down */
25#define ENETUNREACH 51 /* Network is unreachable */
26#define ENETRESET 52 /* Net dropped connection because of reset */
27#define ECONNABORTED 53 /* Software caused connection abort */
28#define ECONNRESET 54 /* Connection reset by peer */
29#define ENOBUFS 55 /* No buffer space available */
30#define EISCONN 56 /* Transport endpoint is already connected */
31#define ENOTCONN 57 /* Transport endpoint is not connected */
32#define ESHUTDOWN 58 /* No send after transport endpoint shutdown */
33#define ETOOMANYREFS 59 /* Too many references: cannot splice */
34#define ETIMEDOUT 60 /* Connection timed out */
35#define ECONNREFUSED 61 /* Connection refused */
36#define ELOOP 62 /* Too many symbolic links encountered */
37#define ENAMETOOLONG 63 /* File name too long */
38#define EHOSTDOWN 64 /* Host is down */
39#define EHOSTUNREACH 65 /* No route to host */
40#define ENOTEMPTY 66 /* Directory not empty */
41#define EPROCLIM 67 /* SUNOS: Too many processes */
42#define EUSERS 68 /* Too many users */
43#define EDQUOT 69 /* Quota exceeded */
44#define ESTALE 70 /* Stale file handle */
45#define EREMOTE 71 /* Object is remote */
46#define ENOSTR 72 /* Device not a stream */
47#define ETIME 73 /* Timer expired */
48#define ENOSR 74 /* Out of streams resources */
49#define ENOMSG 75 /* No message of desired type */
50#define EBADMSG 76 /* Not a data message */
51#define EFSBADCRC EBADMSG /* Bad CRC detected */
52#define EIDRM 77 /* Identifier removed */
53#define EDEADLK 78 /* Resource deadlock would occur */
54#define ENOLCK 79 /* No record locks available */
55#define ENONET 80 /* Machine is not on the network */
56#define ERREMOTE 81 /* SunOS: Too many lvls of remote in path */
57#define ENOLINK 82 /* Link has been severed */
58#define EADV 83 /* Advertise error */
59#define ESRMNT 84 /* Srmount error */
60#define ECOMM 85 /* Communication error on send */
61#define EPROTO 86 /* Protocol error */
62#define EMULTIHOP 87 /* Multihop attempted */
63#define EDOTDOT 88 /* RFS specific error */
64#define EREMCHG 89 /* Remote address changed */
65#define ENOSYS 90 /* Function not implemented */
66
67/* The rest have no SunOS equivalent. */
68#define ESTRPIPE 91 /* Streams pipe error */
69#define EOVERFLOW 92 /* Value too large for defined data type */
70#define EBADFD 93 /* File descriptor in bad state */
71#define ECHRNG 94 /* Channel number out of range */
72#define EL2NSYNC 95 /* Level 2 not synchronized */
73#define EL3HLT 96 /* Level 3 halted */
74#define EL3RST 97 /* Level 3 reset */
75#define ELNRNG 98 /* Link number out of range */
76#define EUNATCH 99 /* Protocol driver not attached */
77#define ENOCSI 100 /* No CSI structure available */
78#define EL2HLT 101 /* Level 2 halted */
79#define EBADE 102 /* Invalid exchange */
80#define EBADR 103 /* Invalid request descriptor */
81#define EXFULL 104 /* Exchange full */
82#define ENOANO 105 /* No anode */
83#define EBADRQC 106 /* Invalid request code */
84#define EBADSLT 107 /* Invalid slot */
85#define EDEADLOCK 108 /* File locking deadlock error */
86#define EBFONT 109 /* Bad font file format */
87#define ELIBEXEC 110 /* Cannot exec a shared library directly */
88#define ENODATA 111 /* No data available */
89#define ELIBBAD 112 /* Accessing a corrupted shared library */
90#define ENOPKG 113 /* Package not installed */
91#define ELIBACC 114 /* Can not access a needed shared library */
92#define ENOTUNIQ 115 /* Name not unique on network */
93#define ERESTART 116 /* Interrupted syscall should be restarted */
94#define EUCLEAN 117 /* Structure needs cleaning */
95#define EFSCORRUPTED EUCLEAN /* Filesystem is corrupted */
96#define ENOTNAM 118 /* Not a XENIX named type file */
97#define ENAVAIL 119 /* No XENIX semaphores available */
98#define EISNAM 120 /* Is a named type file */
99#define EREMOTEIO 121 /* Remote I/O error */
100#define EILSEQ 122 /* Illegal byte sequence */
101#define ELIBMAX 123 /* Atmpt to link in too many shared libs */
102#define ELIBSCN 124 /* .lib section in a.out corrupted */
103
104#define ENOMEDIUM 125 /* No medium found */
105#define EMEDIUMTYPE 126 /* Wrong medium type */
106#define ECANCELED 127 /* Operation Cancelled */
107#define ENOKEY 128 /* Required key not available */
108#define EKEYEXPIRED 129 /* Key has expired */
109#define EKEYREVOKED 130 /* Key has been revoked */
110#define EKEYREJECTED 131 /* Key was rejected by service */
111
112/* for robust mutexes */
113#define EOWNERDEAD 132 /* Owner died */
114#define ENOTRECOVERABLE 133 /* State not recoverable */
115
116#define ERFKILL 134 /* Operation not possible due to RF-kill */
117
118#define EHWPOISON 135 /* Memory page has hardware error */
119
120#define EFTYPE 136 /* Wrong file type for the intended operation */
121
122#endif