sdk-core v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
Loading...
Searching...
No Matches
errno.h
Go to the documentation of this file.
1/*
2# _____ ___ ____ ___ ____
3# ____| | ____| | | |____|
4# | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5#-----------------------------------------------------------------------
6# Copyright ps2dev - http://www.ps2dev.org
7# Licenced under Academic Free License version 2.0
8# Review ps2sdk README & LICENSE files for further details.
9*/
10
18
19#ifdef _EE
20#ifndef __LINUX_ERRNO_EXTENSIONS__
21#define __LINUX_ERRNO_EXTENSIONS__ 1
22#endif
23#include_next <errno.h>
24#else
25
26#ifndef __ERRNO_H__
27#define __ERRNO_H__
28
30#define EPERM 1
32#define ENOENT 2
34#define ESRCH 3
36#define EINTR 4
38#define EIO 5
40#define ENXIO 6
42#define E2BIG 7
44#define ENOEXEC 8
46#define EBADF 9
48#define ECHILD 10
50#define EAGAIN 11
52#define ENOMEM 12
54#define EACCES 13
56#define EFAULT 14
58#define ENOTBLK 15
60#define EBUSY 16
62#define EEXIST 17
64#define EXDEV 18
66#define ENODEV 19
68#define ENOTDIR 20
70#define EISDIR 21
72#define EINVAL 22
74#define ENFILE 23
76#define EMFILE 24
78#define ENOTTY 25
80#define ETXTBSY 26
82#define EFBIG 27
84#define ENOSPC 28
86#define ESPIPE 29
88#define EROFS 30
90#define EMLINK 31
92#define EPIPE 32
94#define EDOM 33
96#define ERANGE 34
98#define ENOMSG 35
100#define EIDRM 36
102#define ECHRNG 37
104#define EL2NSYNC 38
106#define EL3HLT 39
108#define EL3RST 40
110#define EWOULDBLOCK EAGAIN
112#define ELNRNG 41
114#define EUNATCH 42
116#define ENOCSI 43
118#define EL2HLT 44
120#define EDEADLK 45
122#define ENOLCK 46
124#define EFORMAT 47
126#define EUNSUP 48
128#define EBADE 50
130#define EBADR 51
132#define EXFULL 52
134#define ENOANO 53
136#define EBADRQC 54
138#define EBADSLT 55
140#define EDEADLOCK 56
142#define EBFONT 57
144#define ENOSTR 60
146#define ENODATA 61
148#define ETIME 62
150#define ENOSR 63
152#define ENONET 64
154#define ENOPKG 65
156#define EREMOTE 66
158#define ENOLINK 67
160#define EADV 68
162#define ESRMNT 69
164#define ECOMM 70
166#define EPROTO 71
168#define EMULTIHOP 74
170#define ELBIN 75
172#define EDOTDOT 76
174#define EBADMSG 77
176#define EFTYPE 79
178#define ENOTUNIQ 80
180#define EBADFD 81
182#define EREMCHG 82
184#define ELIBACC 83
186#define ELIBBAD 84
188#define ELIBSCN 85
190#define ELIBMAX 86
192#define ELIBEXEC 87
194#define ENOSYS 88
196#define ENMFILE 89
198#define ENOTEMPTY 90
200#define ENAMETOOLONG 91
202#define ELOOP 92
204#define EOPNOTSUPP 95
206#define EPFNOSUPPORT 96
208#define ECONNRESET 104
210#define ENOBUFS 105
212#define EAFNOSUPPORT 106
214#define EPROTOTYPE 107
216#define ENOTSOCK 108
218#define ENOPROTOOPT 109
220#define ESHUTDOWN 110
222#define ECONNREFUSED 111
224#define EADDRINUSE 112
226#define ECONNABORTED 113
228#define ENETUNREACH 114
230#define ENETDOWN 115
232#define ETIMEDOUT 116
234#define EHOSTDOWN 117
236#define EHOSTUNREACH 118
238#define EINPROGRESS 119
240#define EALREADY 120
242#define EDESTADDRREQ 121
244#define EMSGSIZE 122
246#define EPROTONOSUPPORT 123
248#define ESOCKTNOSUPPORT 124
250#define EADDRNOTAVAIL 125
252#define ENETRESET 126
254#define EISCONN 127
256#define ENOTCONN 128
258#define ETOOMANYREFS 129
260#define EPROCLIM 130
262#define EUSERS 131
264#define EDQUOT 132
266#define ESTALE 133
268#define ENOTSUP 134
270#define ENOMEDIUM 135
272#define ENOSHARE 136
274#define ECASECLASH 137
276#define EILSEQ 138
278#define EOVERFLOW 139
280#define ECANCELED 140
282#define ENOTRECOVERABLE 141
284#define EOWNERDEAD 142
286#define ESTRPIPE 143
287
288#ifndef E_USE_NAMES
289#define error_to_string(errnum) ("")
290#else
291char *file_errors[] = {
292 "Success", /* 0 */
293 "Not owner", /* 1 */
294 "No such file or directory", /* 2 */
295 "No such process", /* 3 */
296 "Interrupted system call", /* 4 */
297 "I/O error", /* 5 */
298 "No such device or address", /* 6 */
299 "Arg list too long", /* 7 */
300 "Exec format error", /* 8 */
301 "Bad file number", /* 9 */
302 "No children", /* 10 */
303 "No more processes", /* 11 */
304 "Not enough space", /* 12 */
305 "Permission denied", /* 13 */
306 "Bad address", /* 14 */
307 "Block device required", /* 15 */
308 "Device or resource busy", /* 16 */
309 "File exists", /* 17 */
310 "Cross-device link", /* 18 */
311 "No such device", /* 19 */
312 "Not a directory", /* 20 */
313 "Is a directory", /* 21 */
314 "Invalid argument", /* 22 */
315 "Too many open files in system", /* 23 */
316 "File descriptor value too large", /* 24 */
317 "Not a character device", /* 25 */
318 "Text file busy", /* 26 */
319 "File too large", /* 27 */
320 "No space left on device", /* 28 */
321 "Illegal seek", /* 29 */
322 "Read-only file system", /* 30 */
323 "Too many links", /* 31 */
324 "Broken pipe", /* 32 */
325 "Mathematics argument out of domain of function", /* 33 */
326 "Result too large", /* 34 */
327 "No message of desired type", /* 35 */
328 "Identifier removed", /* 36 */
329 "Channel number out of range", /* 37 */
330 "Level 2 not synchronized", /* 38 */
331 "Level 3 halted", /* 39 */
332 "Level 3 reset", /* 40 */
333 "Link number out of range", /* 41 */
334 "Protocol driver not attached", /* 42 */
335 "No CSI structure available", /* 43 */
336 "Level 2 halted", /* 44 */
337 "Deadlock", /* 45 */
338 "No lock", /* 46 */
339 "Bad file format", /* 47 */
340 "Operation unsupported by device", /* 48 */
341 "",
342 "Invalid exchange", /* 50 */
343 "Invalid request descriptor", /* 51 */
344 "Exchange full", /* 52 */
345 "No anode", /* 53 */
346 "Invalid request code", /* 54 */
347 "Invalid slot", /* 55 */
348 "File locking deadlock error", /* 56 */
349 "Bad font file fmt", /* 57 */
350 "",
351 "",
352 "Not a stream", /* 60 */
353 "No data (for no delay io)", /* 61 */
354 "Stream ioctl timeout", /* 62 */
355 "No stream resources", /* 63 */
356 "Machine is not on the network", /* 64 */
357 "Package not installed", /* 65 */
358 "The object is remote", /* 66 */
359 "Virtual circuit is gone", /* 67 */
360 "Advertise error", /* 68 */
361 "Srmount error", /* 69 */
362 "Communication error on send", /* 70 */
363 "Protocol error", /* 71 */
364 "",
365 "",
366 "Multihop attempted", /* 74 */
367 "Inode is remote (not really error)", /* 75 */
368 "Cross mount point (not really error)", /* 76 */
369 "Bad message", /* 77 */
370 "",
371 "Inappropriate file type or format", /* 79 */
372 "Given log. name not unique", /* 80 */
373 "f.d. invalid for this operation", /* 81 */
374 "Remote address changed", /* 82 */
375 "Can't access a needed shared lib", /* 83 */
376 "Accessing a corrupted shared lib", /* 84 */
377 ".lib section in a.out corrupted", /* 85 */
378 "Attempting to link in too many libs", /* 86 */
379 "Attempting to exec a shared library", /* 87 */
380 "Function not implemented", /* 88 */
381 "No more files", /* 89 */
382 "Directory not empty", /* 90 */
383 "File or path name too long", /* 91 */
384 "Too many symbolic links", /* 92 */
385 "",
386 "",
387 "Operation not supported on socket", /* 95 */
388 "Protocol family not supported", /* 96 */
389 "",
390 "",
391 "",
392 "",
393 "",
394 "",
395 "",
396 "Connection reset by peer", /* 104 */
397 "No buffer space available", /* 105 */
398 "Address family not supported by protocol family", /* 106 */
399 "Protocol wrong type for socket", /* 107 */
400 "Socket operation on non-socket", /* 108 */
401 "Protocol not available", /* 109 */
402 "Can't send after socket shutdown", /* 110 */
403 "Connection refused", /* 111 */
404 "Address already in use", /* 112 */
405 "Software caused connection abort", /* 113 */
406 "Network is unreachable", /* 114 */
407 "Network interface is not configured", /* 115 */
408 "Connection timed out", /* 116 */
409 "Host is down", /* 117 */
410 "Host is unreachable", /* 118 */
411 "Connection already in progress", /* 119 */
412 "Socket already connected", /* 120 */
413 "Destination address required", /* 121 */
414 "Message too long", /* 122 */
415 "Unknown protocol", /* 123 */
416 "Socket type not supported", /* 124 */
417 "Address not available", /* 125 */
418 "Connection aborted by network", /* 126 */
419 "Socket is already connected", /* 127 */
420 "Socket is not connected", /* 128 */
421 "Too many references: cannot splice", /* 129 */
422 "Too many processes", /* 130 */
423 "Too many users", /* 131 */
424 "Disk quota exceeded", /* 132 */
425 "Stale file handle", /* 133 */
426 "Not supported", /* 134 */
427 "No medium (in tape drive)", /* 135 */
428 "No such host or network path", /* 136 */
429 "Filename exists with different case", /* 137 */
430 "Illegal byte sequence", /* 138 */
431 "Value too large for defined data type", /* 139 */
432 "Operation canceled", /* 140 */
433 "State not recoverable", /* 141 */
434 "Previous owner died", /* 142 */
435 "Streams pipe error", /* 143 */
436};
437#define error_to_string(errnum) (file_errors[errnum * -1])
438#endif
439
440extern int errno __attribute__((section(".data")));
441
442#endif /* __ERRNO_H__ */
443
444#endif /* _EE */