2018-10-21 00:08:58 +02:00
|
|
|
namespace Ryujinx.HLE.Utilities
|
|
|
|
{
|
2018-12-01 18:15:17 +01:00
|
|
|
internal enum LinuxError
|
2018-10-21 00:08:58 +02:00
|
|
|
{
|
2018-12-01 18:15:17 +01:00
|
|
|
Success = 0,
|
|
|
|
Perm = 1 /* Operation not permitted */,
|
|
|
|
NoEnt = 2 /* No such file or directory */,
|
|
|
|
Srch = 3 /* No such process */,
|
|
|
|
Intr = 4 /* Interrupted system call */,
|
|
|
|
Io = 5 /* I/O error */,
|
|
|
|
NxIo = 6 /* No such device or address */,
|
|
|
|
TooBig = 7 /* Argument list too long */,
|
|
|
|
NoExec = 8 /* Exec format error */,
|
|
|
|
BadF = 9 /* Bad file number */,
|
|
|
|
Child = 10 /* No child processes */,
|
|
|
|
Again = 11 /* Try again */,
|
|
|
|
NoMem = 12 /* Out of memory */,
|
|
|
|
Acces = 13 /* Permission denied */,
|
|
|
|
Fault = 14 /* Bad address */,
|
|
|
|
NotBlk = 15 /* Block device required */,
|
|
|
|
Busy = 16 /* Device or resource busy */,
|
|
|
|
Exist = 17 /* File exists */,
|
|
|
|
XDev = 18 /* Cross-device link */,
|
|
|
|
NoDev = 19 /* No such device */,
|
|
|
|
NotDir = 20 /* Not a directory */,
|
|
|
|
IsDir = 21 /* Is a directory */,
|
|
|
|
InVal = 22 /* Invalid argument */,
|
|
|
|
NFile = 23 /* File table overflow */,
|
|
|
|
MFile = 24 /* Too many open files */,
|
|
|
|
NoTty = 25 /* Not a typewriter */,
|
|
|
|
TxtBsy = 26 /* Text file busy */,
|
|
|
|
FBig = 27 /* File too large */,
|
|
|
|
NoSpc = 28 /* No space left on device */,
|
|
|
|
SPipe = 29 /* Illegal seek */,
|
|
|
|
RoFs = 30 /* Read-only file system */,
|
|
|
|
MLink = 31 /* Too many links */,
|
|
|
|
Pipe = 32 /* Broken pipe */,
|
|
|
|
Dom = 33 /* Math argument out of domain of func */,
|
|
|
|
Range = 34 /* Math result not representable */,
|
|
|
|
DeadLk = 35 /* Resource deadlock would occur */,
|
|
|
|
NameTooLong = 36 /* File name too long */,
|
|
|
|
NoLck = 37 /* No record locks available */,
|
2018-10-21 00:08:58 +02:00
|
|
|
|
|
|
|
/*
|
|
|
|
* This error code is special: arch syscall entry code will return
|
|
|
|
* -ENOSYS if users try to call a syscall that doesn't exist. To keep
|
|
|
|
* failures of syscalls that really do exist distinguishable from
|
|
|
|
* failures due to attempts to use a nonexistent syscall, syscall
|
|
|
|
* implementations should refrain from returning -ENOSYS.
|
|
|
|
*/
|
2018-12-01 18:15:17 +01:00
|
|
|
NoSys = 38 /* Invalid system call number */,
|
|
|
|
NotEmpty = 39 /* Directory not empty */,
|
|
|
|
Loop = 40 /* Too many symbolic links encountered */,
|
|
|
|
WouldBlock = Again /* Operation would block */,
|
|
|
|
NoMsg = 42 /* No message of desired type */,
|
|
|
|
IdRm = 43 /* Identifier removed */,
|
|
|
|
ChRng = 44 /* Channel number out of range */,
|
|
|
|
L2NSync = 45 /* Level 2 not synchronized */,
|
|
|
|
L3Hlt = 46 /* Level 3 halted */,
|
|
|
|
L3Rst = 47 /* Level 3 reset */,
|
|
|
|
LnRng = 48 /* Link number out of range */,
|
|
|
|
UnAtch = 49 /* Protocol driver not attached */,
|
|
|
|
NoCsi = 50 /* No CSI structure available */,
|
|
|
|
L2Hlt = 51 /* Level 2 halted */,
|
|
|
|
BadE = 52 /* Invalid exchange */,
|
|
|
|
BadR = 53 /* Invalid request descriptor */,
|
|
|
|
XFull = 54 /* Exchange full */,
|
|
|
|
NoAno = 55 /* No anode */,
|
|
|
|
BadRqC = 56 /* Invalid request code */,
|
|
|
|
BadSlt = 57 /* Invalid slot */,
|
|
|
|
DeadLock = DeadLk,
|
|
|
|
BFont = 59 /* Bad font file format */,
|
|
|
|
NoStr = 60 /* Device not a stream */,
|
|
|
|
NoData = 61 /* No data available */,
|
|
|
|
Time = 62 /* Timer expired */,
|
|
|
|
NoSr = 63 /* Out of streams resources */,
|
|
|
|
NoNet = 64 /* Machine is not on the network */,
|
|
|
|
NoPkg = 65 /* Package not installed */,
|
|
|
|
Remote = 66 /* Object is remote */,
|
|
|
|
NoLink = 67 /* Link has been severed */,
|
|
|
|
Adv = 68 /* Advertise error */,
|
|
|
|
Stmnt = 69 /* Srmount error */,
|
|
|
|
Comm = 70 /* Communication error on send */,
|
|
|
|
Proto = 71 /* Protocol error */,
|
|
|
|
Multihop = 72 /* Multihop attempted */,
|
|
|
|
DotDot = 73 /* RFS specific error */,
|
|
|
|
BadMsg = 74 /* Not a data message */,
|
|
|
|
Overflow = 75 /* Value too large for defined data type */,
|
|
|
|
NotUniq = 76 /* Name not unique on network */,
|
|
|
|
BadFd = 77 /* File descriptor in bad state */,
|
|
|
|
RemChg = 78 /* Remote address changed */,
|
|
|
|
LibAcc = 79 /* Can not access a needed shared library */,
|
|
|
|
LibBad = 80 /* Accessing a corrupted shared library */,
|
|
|
|
LibScn = 81 /* .lib section in a.out corrupted */,
|
|
|
|
LibMax = 82 /* Attempting to link in too many shared libraries */,
|
|
|
|
LibExec = 83 /* Cannot exec a shared library directly */,
|
|
|
|
IlSeq = 84 /* Illegal byte sequence */,
|
|
|
|
Restart = 85 /* Interrupted system call should be restarted */,
|
|
|
|
StrPipe = 86 /* Streams pipe error */,
|
|
|
|
Users = 87 /* Too many users */,
|
|
|
|
NotSock = 88 /* Socket operation on non-socket */,
|
|
|
|
DestAddrReq = 89 /* Destination address required */,
|
|
|
|
MsgSize = 90 /* Message too long */,
|
|
|
|
ProtoType = 91 /* Protocol wrong type for socket */,
|
|
|
|
NoProtoOpt = 92 /* Protocol not available */,
|
|
|
|
ProtoNoSupport = 93 /* Protocol not supported */,
|
|
|
|
SocktNoSupport = 94 /* Socket type not supported */,
|
|
|
|
OpNotSupp = 95 /* Operation not supported on transport endpoint */,
|
|
|
|
PfNoSupport = 96 /* Protocol family not supported */,
|
|
|
|
AfNoSupport = 97 /* Address family not supported by protocol */,
|
|
|
|
AddrInUse = 98 /* Address already in use */,
|
|
|
|
AddrNotAvail = 99 /* Cannot assign requested address */,
|
|
|
|
NetDown = 100 /* Network is down */,
|
|
|
|
NetUnReach = 101 /* Network is unreachable */,
|
|
|
|
NetReset = 102 /* Network dropped connection because of reset */,
|
|
|
|
ConnAborted = 103 /* Software caused connection abort */,
|
|
|
|
ConnReset = 104 /* Connection reset by peer */,
|
|
|
|
NoBufs = 105 /* No buffer space available */,
|
|
|
|
IsConn = 106 /* Transport endpoint is already connected */,
|
|
|
|
NotConn = 107 /* Transport endpoint is not connected */,
|
|
|
|
Shutdown = 108 /* Cannot send after transport endpoint shutdown */,
|
|
|
|
TooManyRefs = 109 /* Too many references: cannot splice */,
|
|
|
|
TimedOut = 110 /* Connection timed out */,
|
|
|
|
ConnRefused = 111 /* Connection refused */,
|
|
|
|
HostDown = 112 /* Host is down */,
|
|
|
|
HostUnReach = 113 /* No route to host */,
|
|
|
|
Already = 114 /* Operation already in progress */,
|
|
|
|
InProgress = 115 /* Operation now in progress */,
|
|
|
|
Stale = 116 /* Stale file handle */,
|
|
|
|
UClean = 117 /* Structure needs cleaning */,
|
|
|
|
NotNam = 118 /* Not a XENIX named type file */,
|
|
|
|
NAvail = 119 /* No XENIX semaphores available */,
|
|
|
|
IsNam = 120 /* Is a named type file */,
|
|
|
|
RemoteIo = 121 /* Remote I/O error */,
|
|
|
|
DQuot = 122 /* Quota exceeded */,
|
|
|
|
NoMedium = 123 /* No medium found */,
|
|
|
|
MediumType = 124 /* Wrong medium type */,
|
|
|
|
Canceled = 125 /* Operation Canceled */,
|
|
|
|
NoKey = 126 /* Required key not available */,
|
|
|
|
KeyExpired = 127 /* Key has expired */,
|
|
|
|
KeyRevoked = 128 /* Key has been revoked */,
|
|
|
|
KeyRejected = 129 /* Key was rejected by service */,
|
2018-10-21 00:08:58 +02:00
|
|
|
|
|
|
|
/* for robust mutexes */
|
2018-12-01 18:15:17 +01:00
|
|
|
OwnerDead = 130 /* Owner died */,
|
|
|
|
NotRecoverable = 131 /* State not recoverable */,
|
2018-10-21 00:08:58 +02:00
|
|
|
|
2018-12-01 18:15:17 +01:00
|
|
|
RfKill = 132 /* Operation not possible due to RF-kill */,
|
2018-10-21 00:08:58 +02:00
|
|
|
|
2018-12-01 18:15:17 +01:00
|
|
|
HwPoison = 133 /* Memory page has hardware error */,
|
2018-10-21 00:08:58 +02:00
|
|
|
}
|
|
|
|
}
|