1 module tango.sys.linux.consts.errno;
2 version(X86) {
3     version=X86_CPU;
4 } else version(X86_64) {
5     version=X86_CPU;
6 } else version ( PPC64 )
7 {
8     version=PPC_CPU;
9 } else version ( PPC ) {
10     version=PPC_CPU;
11 } else version(ARM){
12 } else version(SPARC){
13 } else {
14     static assert(0,"unknown cpu family");
15 }
16 
17 enum {
18     E2BIG = 7, // Argument list too long
19     EACCES = 13, // Permission denied
20     EADDRINUSE = 98, // Address already in use
21     EADDRNOTAVAIL = 99, // Can't assign requested address
22     EADV = 68, // Advertise error
23     EAFNOSUPPORT = 97, // Address family not supported by protocol family
24     EAGAIN = 11, // Resource temporarily unavailable
25     EALREADY = 114, // Operation already in progress
26     EBADE = 52, // Invalid exchange
27     EBADF = 9, // Bad file descriptor
28     EBADFD = 77, // File descriptor in bad state
29     EBADMSG = 74, // Bad message
30     EBADR = 53, // Invalid request descriptor
31     EBADRQC = 56, // Invalid request code
32     EBADSLT = 57, // Invalid slot
33     EBFONT = 59, // Bad font file format
34     EBUSY = 16, // Device busy
35     ECANCELED = 125, // Operation canceled
36     ECHILD = 10, // No child processes
37     ECHRNG = 44, // Channel number out of range
38     ECOMM = 70, // Communication error on send
39     ECONNABORTED = 103, // Software caused connection abort
40     ECONNREFUSED = 111, // Connection refused
41     ECONNRESET = 104, // Connection reset by peer
42     EDEADLK = 35, // Resource deadlock avoided
43     EDESTADDRREQ = 89, // Destination address required
44     EDOM = 33, // Numerical argument out of domain
45     EDOTDOT = 73, // RFS specific error
46     EDQUOT = 122, // Disc quota exceeded
47     EEXIST = 17, // File exists
48     EFAULT = 14, // Bad address
49     EFBIG = 27, // File too large
50     EHOSTDOWN = 112, // Host is down
51     EHOSTUNREACH = 113, // No route to host
52     EIDRM = 43, // Itendifier removed
53     EILSEQ = 84, // Illegal byte sequence
54     EINPROGRESS = 115, // Operation now in progress
55     EINTR = 4, // Interrupted system call
56     EINVAL = 22, // Invalid argument
57     EIO = 5, // Input/output error
58     EISCONN = 106, // Socket is already connected
59     EISDIR = 21, // Is a directory
60     EISNAM = 120, // Is a named type file
61     EKEYEXPIRED = 127, // Key has expired
62     EKEYREJECTED = 129, // Key was rejected by service
63     EKEYREVOKED = 128, // Key has been revoked
64     EL2HLT = 51, // Level 2 halted
65     EL2NSYNC = 45, // Level 2 not synchronized
66     EL3HLT = 46, // Level 3 halted
67     EL3RST = 47, // Level 3 reset
68     ELIBACC = 79, // Can not access a needed shared library
69     ELIBBAD = 80, // Accessing a corrupted shared library
70     ELIBEXEC = 83, // Cannot exec a shared library directly
71     ELIBMAX = 82, // Attempting to link in too many shared libraries
72     ELIBSCN = 81, // .lib section in a.out corrupted
73     ELNRNG = 48, // Link number out of range
74     ELOOP = 40, // Too many levels of symbolic links
75     EMEDIUMTYPE = 124, // Wrong medium type
76     EMFILE = 24, // Too many open files
77     EMLINK = 31, // Too many links
78     EMSGSIZE = 90, // Message too long
79     EMULTIHOP = 72, // Multihop attempted
80     ENAMETOOLONG = 36, // File name too long
81     ENAVAIL = 119, // No XENIX semaphores available
82     ENETDOWN = 100, // Network is down
83     ENETRESET = 102, // Network dropped connection on reset
84     ENETUNREACH = 101, // Network is unreachable
85     ENFILE = 23, // Too many open files in system
86     ENOANO = 55, // No anode
87     ENOBUFS = 105, // No buffer space available
88     ENOCSI = 50, // No CSI structure available
89     ENODATA = 61, // No message available on STREAM
90     ENODEV = 19, // Operation not supported by device
91     ENOENT = 2, // No such file or directory
92     ENOEXEC = 8, // Exec format error
93     ENOKEY = 126, // Required key not available
94     ENOLCK = 37, // No locks available
95     ENOLINK = 67, // Link has been severed
96     ENOMEDIUM = 123, // No medium found
97     ENOMEM = 12, // Cannot allocate memory
98     ENOMSG = 42, // No message of desired type
99     ENONET = 64, // Machine is not on the network
100     ENOPKG = 65, // Package not installed
101     ENOPROTOOPT = 92, // Protocol not available
102     ENOSPC = 28, // No space left on device
103     ENOSR = 63, // No STREAM resources
104     ENOSTR = 60, // Not a STREAM
105     ENOSYS = 38, // Function not implemented
106     ENOTBLK = 15, // Block device required
107     ENOTCONN = 107, // Socket is not connected
108     ENOTDIR = 20, // Not a directory
109     ENOTEMPTY = 39, // Directory not empty
110     ENOTNAM = 118, // Not a XENIX named type file
111     ENOTRECOVERABLE = 131, // State not recoverable
112     ENOTSOCK = 88, // Socket operation on non-socket
113     ENOTSUP = 95, // Operation not supported
114     ENOTTY = 25, // Inappropriate ioctl for device
115     ENOTUNIQ = 76, // Name not unique on network
116     ENXIO = 6, // Device not configured
117     EOPNOTSUPP = 95, // Operation not supported on socket
118     EOVERFLOW = 75, // Value too large to be stored in data type
119     EOWNERDEAD = 130, // Owner died
120     EPERM = 1, // Operation not permitted
121     EPFNOSUPPORT = 96, // Protocol family not supported
122     EPIPE = 32, // Broken pipe
123     EPROTO = 71, // Protocol error
124     EPROTONOSUPPORT = 93, // Protocol not supported
125     EPROTOTYPE = 91, // Protocol wrong type for socket
126     ERANGE = 34, // Result too large
127     EREMCHG = 78, // Remote address changed
128     EREMOTE = 66, // Too many levels of remote in path
129     EREMOTEIO = 121, // Remote I/O error
130     ERESTART = 85, // Interrupted system call should be restarted
131     EROFS = 30, // Read-only file system
132     ESHUTDOWN = 108, // Can't send after socket shutdown
133     ESOCKTNOSUPPORT = 94, // Socket type not supported
134     ESPIPE = 29, // Illegal seek
135     ESRCH = 3, // No such process
136     ESRMNT = 69, // Srmount error
137     ESTALE = 116, // Stale NFS file handle
138     ESTRPIPE = 86, // Streams pipe error
139     ETIME = 62, // STREAM ioctl timeout
140     ETIMEDOUT = 110, // Operation timed out
141     ETOOMANYREFS = 109, // Too many refrences, can't splice
142     ETXTBSY = 26, // Text file busy
143     EUCLEAN = 117, // Structure needs cleaning
144     EUNATCH = 49, // Protocol driver not attached
145     EUSERS = 87, // Too many users
146     EWOULDBLOCK = 11, // Operation would block
147     EXDEV = 18, // Cross-device link
148     EXFULL = 54, // Exchange full
149 }
150 version(X86_CPU)
151     enum { EDEADLOCK = 35, }
152 else version(PPC_CPU)
153     enum { EDEADLOCK = 58, }
154 else static assert(0);