From 34b433628c8201f3dd05d8929362b93547d0039c Mon Sep 17 00:00:00 2001 From: Alex Barney Date: Tue, 4 Dec 2018 11:55:52 -0600 Subject: [PATCH] Revert external enum renaming --- Ryujinx.HLE/HOS/Kernel/HleProcessDebugger.cs | 8 +- Ryujinx.HLE/HOS/Services/Bsd/IClient.cs | 203 +++++++------- Ryujinx.HLE/Loaders/Elf/ElfDynamicTag.cs | 137 +++++----- Ryujinx.HLE/Utilities/LinuxError.cs | 273 ++++++++++--------- Ryujinx.HLE/Utilities/WSAError.cs | 155 +++++------ 5 files changed, 392 insertions(+), 384 deletions(-) diff --git a/Ryujinx.HLE/HOS/Kernel/HleProcessDebugger.cs b/Ryujinx.HLE/HOS/Kernel/HleProcessDebugger.cs index 35e1391432..fd3ac1f5a2 100644 --- a/Ryujinx.HLE/HOS/Kernel/HleProcessDebugger.cs +++ b/Ryujinx.HLE/HOS/Kernel/HleProcessDebugger.cs @@ -253,7 +253,7 @@ namespace Ryujinx.HLE.HOS.Kernel ElfDynamicTag tag = (ElfDynamicTag)tagVal; - if (tag == ElfDynamicTag.Null) + if (tag == ElfDynamicTag.DT_NULL) { break; } @@ -261,9 +261,9 @@ namespace Ryujinx.HLE.HOS.Kernel dynamic[tag] = value; } - if (!dynamic.TryGetValue(ElfDynamicTag.StrTab, out long strTab) || - !dynamic.TryGetValue(ElfDynamicTag.SymTab, out long symTab) || - !dynamic.TryGetValue(ElfDynamicTag.SymEnt, out long symEntSize)) + if (!dynamic.TryGetValue(ElfDynamicTag.DT_STRTAB, out long strTab) || + !dynamic.TryGetValue(ElfDynamicTag.DT_SYMTAB, out long symTab) || + !dynamic.TryGetValue(ElfDynamicTag.DT_SYMENT, out long symEntSize)) { return; } diff --git a/Ryujinx.HLE/HOS/Services/Bsd/IClient.cs b/Ryujinx.HLE/HOS/Services/Bsd/IClient.cs index 9b668b5b96..aac85021c0 100644 --- a/Ryujinx.HLE/HOS/Services/Bsd/IClient.cs +++ b/Ryujinx.HLE/HOS/Services/Bsd/IClient.cs @@ -14,83 +14,83 @@ namespace Ryujinx.HLE.HOS.Services.Bsd private static Dictionary _errorMap = new Dictionary { // WSAEINTR - {WsaError.Interrupted, LinuxError.Intr}, + {WsaError.WSAEINTR, LinuxError.EINTR}, // WSAEWOULDBLOCK - {WsaError.WouldBlock, LinuxError.WouldBlock}, + {WsaError.WSAEWOULDBLOCK, LinuxError.EWOULDBLOCK}, // WSAEINPROGRESS - {WsaError.InProgress, LinuxError.InProgress}, + {WsaError.WSAEINPROGRESS, LinuxError.EINPROGRESS}, // WSAEALREADY - {WsaError.AlreadyInProgress, LinuxError.Already}, + {WsaError.WSAEALREADY, LinuxError.EALREADY}, // WSAENOTSOCK - {WsaError.NotSocket, LinuxError.NotSock}, + {WsaError.WSAENOTSOCK, LinuxError.ENOTSOCK}, // WSAEDESTADDRREQ - {WsaError.DestinationAddressRequired, LinuxError.DestAddrReq}, + {WsaError.WSAEDESTADDRREQ, LinuxError.EDESTADDRREQ}, // WSAEMSGSIZE - {WsaError.MessageSize, LinuxError.MsgSize}, + {WsaError.WSAEMSGSIZE, LinuxError.EMSGSIZE}, // WSAEPROTOTYPE - {WsaError.ProtocolType, LinuxError.ProtoType}, + {WsaError.WSAEPROTOTYPE, LinuxError.EPROTOTYPE}, // WSAENOPROTOOPT - {WsaError.ProtocolOption, LinuxError.NoProtoOpt}, + {WsaError.WSAENOPROTOOPT, LinuxError.ENOPROTOOPT}, // WSAEPROTONOSUPPORT - {WsaError.ProtocolNotSupported, LinuxError.ProtoNoSupport}, + {WsaError.WSAEPROTONOSUPPORT, LinuxError.EPROTONOSUPPORT}, // WSAESOCKTNOSUPPORT - {WsaError.SocketNotSupported, LinuxError.SocktNoSupport}, + {WsaError.WSAESOCKTNOSUPPORT, LinuxError.ESOCKTNOSUPPORT}, // WSAEOPNOTSUPP - {WsaError.OperationNotSupported, LinuxError.OpNotSupp}, + {WsaError.WSAEOPNOTSUPP, LinuxError.EOPNOTSUPP}, // WSAEPFNOSUPPORT - {WsaError.ProtocolFamilyNotSupported, LinuxError.PfNoSupport}, + {WsaError.WSAEPFNOSUPPORT, LinuxError.EPFNOSUPPORT}, // WSAEAFNOSUPPORT - {WsaError.AddressFamilyNotSupported, LinuxError.AfNoSupport}, + {WsaError.WSAEAFNOSUPPORT, LinuxError.EAFNOSUPPORT}, // WSAEADDRINUSE - {WsaError.AddressAlreadyInUse, LinuxError.AddrInUse}, + {WsaError.WSAEADDRINUSE, LinuxError.EADDRINUSE}, // WSAEADDRNOTAVAIL - {WsaError.AddressNotAvailable, LinuxError.AddrNotAvail}, + {WsaError.WSAEADDRNOTAVAIL, LinuxError.EADDRNOTAVAIL}, // WSAENETDOWN - {WsaError.NetworkDown, LinuxError.NetDown}, + {WsaError.WSAENETDOWN, LinuxError.ENETDOWN}, // WSAENETUNREACH - {WsaError.NetworkUnreachable, LinuxError.NetUnReach}, + {WsaError.WSAENETUNREACH, LinuxError.ENETUNREACH}, // WSAENETRESET - {WsaError.NetworkReset, LinuxError.NetReset}, + {WsaError.WSAENETRESET, LinuxError.ENETRESET}, // WSAECONNABORTED - {WsaError.ConnectionAborted, LinuxError.ConnAborted}, + {WsaError.WSAECONNABORTED, LinuxError.ECONNABORTED}, // WSAECONNRESET - {WsaError.ConnectionReset, LinuxError.ConnReset}, + {WsaError.WSAECONNRESET, LinuxError.ECONNRESET}, // WSAENOBUFS - {WsaError.NoBufferSpaceAvailable, LinuxError.NoBufs}, + {WsaError.WSAENOBUFS, LinuxError.ENOBUFS}, // WSAEISCONN - {WsaError.IsConnected, LinuxError.IsConn}, + {WsaError.WSAEISCONN, LinuxError.EISCONN}, // WSAENOTCONN - {WsaError.NotConnected, LinuxError.NotConn}, + {WsaError.WSAENOTCONN, LinuxError.ENOTCONN}, // WSAESHUTDOWN - {WsaError.Shutdown, LinuxError.Shutdown}, + {WsaError.WSAESHUTDOWN, LinuxError.ESHUTDOWN}, // WSAETOOMANYREFS - {WsaError.TooManyReferences, LinuxError.TooManyRefs}, + {WsaError.WSAETOOMANYREFS, LinuxError.ETOOMANYREFS}, // WSAETIMEDOUT - {WsaError.TimedOut, LinuxError.TimedOut}, + {WsaError.WSAETIMEDOUT, LinuxError.ETIMEDOUT}, // WSAECONNREFUSED - {WsaError.ConnectionRefused, LinuxError.ConnRefused}, + {WsaError.WSAECONNREFUSED, LinuxError.ECONNREFUSED}, // WSAELOOP - {WsaError.Loop, LinuxError.Loop}, + {WsaError.WSAELOOP, LinuxError.ELOOP}, // WSAENAMETOOLONG - {WsaError.NameTooLong, LinuxError.NameTooLong}, + {WsaError.WSAENAMETOOLONG, LinuxError.ENAMETOOLONG}, // WSAEHOSTDOWN - {WsaError.HostDown, LinuxError.HostDown}, + {WsaError.WSAEHOSTDOWN, LinuxError.EHOSTDOWN}, // WSAEHOSTUNREACH - {WsaError.HostUnreachable, LinuxError.HostUnReach}, + {WsaError.WSAEHOSTUNREACH, LinuxError.EHOSTUNREACH}, // WSAENOTEMPTY - {WsaError.NotEmpty, LinuxError.NotEmpty}, + {WsaError.WSAENOTEMPTY, LinuxError.ENOTEMPTY}, // WSAEUSERS - {WsaError.UserQuota, LinuxError.Users}, + {WsaError.WSAEUSERS, LinuxError.EUSERS}, // WSAEDQUOT - {WsaError.DiskQuota, LinuxError.DQuot}, + {WsaError.WSAEDQUOT, LinuxError.EDQUOT}, // WSAESTALE - {WsaError.Stale, LinuxError.Stale}, + {WsaError.WSAESTALE, LinuxError.ESTALE}, // WSAEREMOTE - {WsaError.Remote, LinuxError.Remote}, + {WsaError.WSAEREMOTE, LinuxError.EREMOTE}, // WSAEINVAL - {WsaError.InvalidArgument, LinuxError.InVal}, + {WsaError.WSAEINVAL, LinuxError.EINVAL}, // WSAEFAULT - {WsaError.Fault, LinuxError.Fault}, + {WsaError.WSAEFAULT, LinuxError.EFAULT}, // NOERROR {0, 0} }; @@ -159,7 +159,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd private long WriteBsdResult(ServiceCtx context, int result, LinuxError errorCode = 0) { - if (errorCode != LinuxError.Success) + if (errorCode != LinuxError.SUCCESS) { result = -1; } @@ -182,7 +182,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd private LinuxError SetResultErrno(Socket socket, int result) { - return result == 0 && !socket.Blocking ? LinuxError.WouldBlock : LinuxError.Success; + return result == 0 && !socket.Blocking ? LinuxError.EWOULDBLOCK : LinuxError.SUCCESS; } private AddressFamily ConvertFromBsd(int domain) @@ -204,13 +204,13 @@ namespace Ryujinx.HLE.HOS.Services.Bsd if (domain == AddressFamily.Unknown) { - return WriteBsdResult(context, -1, LinuxError.ProtoNoSupport); + return WriteBsdResult(context, -1, LinuxError.EPROTONOSUPPORT); } else if ((type == SocketType.Seqpacket || type == SocketType.Raw) && !_isPrivileged) { if (domain != AddressFamily.InterNetwork || type != SocketType.Raw || protocol != ProtocolType.Icmp) { - return WriteBsdResult(context, -1, LinuxError.NoEnt); + return WriteBsdResult(context, -1, LinuxError.ENOENT); } } @@ -314,7 +314,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd byte[] rawPath = context.Memory.ReadBytes(bufferPosition, bufferSize); string path = Encoding.ASCII.GetString(rawPath); - WriteBsdResult(context, -1, LinuxError.OpNotSupp); + WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); Logger.PrintStub(LogClass.ServiceBsd, $"Stubbed. Path: {path} - " + $"Flags: {flags}"); @@ -325,7 +325,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd // Select(u32 nfds, nn::socket::timeout timeout, buffer readfds_in, buffer writefds_in, buffer errorfds_in) -> (i32 ret, u32 bsd_errno, buffer readfds_out, buffer writefds_out, buffer errorfds_out) public long Select(ServiceCtx context) { - WriteBsdResult(context, -1, LinuxError.OpNotSupp); + WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); Logger.PrintStub(LogClass.ServiceBsd, $"Stubbed."); @@ -343,7 +343,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd if (timeout < -1 || fdsCount < 0 || (fdsCount * 8) > bufferSize) { - return WriteBsdResult(context, -1, LinuxError.InVal); + return WriteBsdResult(context, -1, LinuxError.EINVAL); } PollEvent[] events = new PollEvent[fdsCount]; @@ -356,8 +356,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd if (socket == null) { - return WriteBsdResult(context, -1, LinuxError.BadF); - } + return WriteBsdResult(context, -1, LinuxError.EBADF);} PollEvent.EventTypeMask inputEvents = (PollEvent.EventTypeMask)context.Memory.ReadInt16(bufferPosition + i * 8 + 4); PollEvent.EventTypeMask outputEvents = (PollEvent.EventTypeMask)context.Memory.ReadInt16(bufferPosition + i * 8 + 6); @@ -406,7 +405,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd if (!isValidEvent) { Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Poll input event type: {Event.InputEvents}"); - return WriteBsdResult(context, -1, LinuxError.InVal); + return WriteBsdResult(context, -1, LinuxError.EINVAL); } } @@ -455,13 +454,13 @@ namespace Ryujinx.HLE.HOS.Services.Bsd context.Memory.WriteInt16(bufferPosition + i * 8 + 6, (short)outputEvents); } - return WriteBsdResult(context, readEvents.Count + writeEvents.Count + errorEvents.Count, LinuxError.Success); + return WriteBsdResult(context, readEvents.Count + writeEvents.Count + errorEvents.Count, LinuxError.SUCCESS); } // Sysctl(buffer, buffer) -> (i32 ret, u32 bsd_errno, u32, buffer) public long Sysctl(ServiceCtx context) { - WriteBsdResult(context, -1, LinuxError.OpNotSupp); + WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); Logger.PrintStub(LogClass.ServiceBsd, $"Stubbed."); @@ -476,7 +475,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long receivePosition, long receiveLength) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -486,7 +485,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd && (socketFlags & SocketFlags.Peek) == 0) { Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Recv flags: {socketFlags}"); - return WriteBsdResult(context, -1, LinuxError.OpNotSupp); + return WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); } byte[] receivedBuffer = new byte[receiveLength]; @@ -517,7 +516,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long sockAddrInPosition, long sockAddrInSize) = context.Request.GetBufferType0x21(); (long sockAddrOutPosition, long sockAddrOutSize) = context.Request.GetBufferType0x22(1); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -528,7 +527,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd { Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Recv flags: {socketFlags}"); - return WriteBsdResult(context, -1, LinuxError.OpNotSupp); + return WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); } byte[] receivedBuffer = new byte[receiveLength]; @@ -559,7 +558,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long sendPosition, long sendSize) = context.Request.GetBufferType0x21(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -570,7 +569,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd { Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Send flags: {socketFlags}"); - return WriteBsdResult(context, -1, LinuxError.OpNotSupp); + return WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); } byte[] sendBuffer = context.Memory.ReadBytes(sendPosition, sendSize); @@ -599,7 +598,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long sendPosition, long sendSize) = context.Request.GetBufferType0x21(); (long bufferPosition, long bufferSize) = context.Request.GetBufferType0x21(1); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -610,7 +609,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd { Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Send flags: {socketFlags}"); - return WriteBsdResult(context, -1, LinuxError.OpNotSupp); + return WriteBsdResult(context, -1, LinuxError.EOPNOTSUPP); } byte[] sendBuffer = context.Memory.ReadBytes(sendPosition, sendSize); @@ -638,12 +637,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; Socket newSocket = null; @@ -656,11 +655,11 @@ namespace Ryujinx.HLE.HOS.Services.Bsd errno = ConvertError((WsaError)exception.ErrorCode); } - if (newSocket == null && errno == LinuxError.Success) + if (newSocket == null && errno == LinuxError.SUCCESS) { - errno = LinuxError.WouldBlock; + errno = LinuxError.EWOULDBLOCK; } - else if (errno == LinuxError.Success) + else if (errno == LinuxError.SUCCESS) { BsdSocket newBsdSocket = new BsdSocket { @@ -692,12 +691,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x21(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; try { @@ -721,12 +720,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x21(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; try { IPEndPoint endPoint = ParseSockAddr(context, bufferPos, bufferSize); @@ -749,12 +748,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; WriteSockAddr(context, bufferPos, socket, true); WriteBsdResult(context, 0, errno); @@ -771,12 +770,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; WriteSockAddr(context, bufferPos, socket, false); WriteBsdResult(context, 0, errno); @@ -795,12 +794,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPosition, long bufferSize) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.NoProtoOpt; + errno = LinuxError.ENOPROTOOPT; if (level == 0xFFFF) { @@ -821,12 +820,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd int socketFd = context.RequestData.ReadInt32(); int backlog = context.RequestData.ReadInt32(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; try { @@ -848,7 +847,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd BsdIoctl cmd = (BsdIoctl)context.RequestData.ReadInt32(); int bufferCount = context.RequestData.ReadInt32(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) @@ -856,7 +855,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd switch (cmd) { case BsdIoctl.AtMark: - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; (long bufferPosition, long bufferSize) = context.Request.GetBufferType0x22(); @@ -865,7 +864,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd break; default: - errno = LinuxError.OpNotSupp; + errno = LinuxError.EOPNOTSUPP; Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported Ioctl Cmd: {cmd}"); break; @@ -883,12 +882,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd int arg = context.RequestData.ReadInt32(); int result = 0; - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; if (cmd == 0x3) { @@ -901,7 +900,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd } else { - errno = LinuxError.OpNotSupp; + errno = LinuxError.EOPNOTSUPP; } } @@ -931,18 +930,18 @@ namespace Ryujinx.HLE.HOS.Services.Bsd socket.Handle.GetSocketOption(SocketOptionLevel.Socket, optionName, optionValue); context.Memory.WriteBytes(optionValuePosition, optionValue); - return LinuxError.Success; + return LinuxError.SUCCESS; case (SocketOptionName)0x200: socket.Handle.GetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, optionValue); context.Memory.WriteBytes(optionValuePosition, optionValue); - return LinuxError.Success; + return LinuxError.SUCCESS; default: Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported SetSockOpt OptionName: {optionName}"); - return LinuxError.OpNotSupp; + return LinuxError.EOPNOTSUPP; } } catch (SocketException exception) @@ -971,23 +970,23 @@ namespace Ryujinx.HLE.HOS.Services.Bsd case SocketOptionName.ReuseAddress: socket.Handle.SetSocketOption(SocketOptionLevel.Socket, optionName, context.Memory.ReadInt32(optionValuePosition)); - return LinuxError.Success; + return LinuxError.SUCCESS; case (SocketOptionName)0x200: socket.Handle.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, context.Memory.ReadInt32(optionValuePosition)); - return LinuxError.Success; + return LinuxError.SUCCESS; case SocketOptionName.Linger: socket.Handle.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, new LingerOption(context.Memory.ReadInt32(optionValuePosition) != 0, context.Memory.ReadInt32(optionValuePosition + 4))); - return LinuxError.Success; + return LinuxError.SUCCESS; default: Logger.PrintWarning(LogClass.ServiceBsd, $"Unsupported SetSockOpt OptionName: {optionName}"); - return LinuxError.OpNotSupp; + return LinuxError.EOPNOTSUPP; } } catch (SocketException exception) @@ -1005,12 +1004,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long bufferPos, long bufferSize) = context.Request.GetBufferType0x21(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.NoProtoOpt; + errno = LinuxError.ENOPROTOOPT; if (level == 0xFFFF) { @@ -1031,16 +1030,16 @@ namespace Ryujinx.HLE.HOS.Services.Bsd int socketFd = context.RequestData.ReadInt32(); int how = context.RequestData.ReadInt32(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) { - errno = LinuxError.InVal; + errno = LinuxError.EINVAL; if (how >= 0 && how <= 2) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; try { @@ -1061,11 +1060,11 @@ namespace Ryujinx.HLE.HOS.Services.Bsd { int how = context.RequestData.ReadInt32(); - LinuxError errno = LinuxError.InVal; + LinuxError errno = LinuxError.EINVAL; if (how >= 0 && how <= 2) { - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; foreach (BsdSocket socket in _sockets) { @@ -1094,7 +1093,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long sendPosition, long sendSize) = context.Request.GetBufferType0x21(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -1123,7 +1122,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd (long receivePosition, long receiveLength) = context.Request.GetBufferType0x22(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); int result = -1; @@ -1150,7 +1149,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd { int socketFd = context.RequestData.ReadInt32(); - LinuxError errno = LinuxError.BadF; + LinuxError errno = LinuxError.EBADF; BsdSocket socket = RetrieveSocket(socketFd); if (socket != null) @@ -1159,7 +1158,7 @@ namespace Ryujinx.HLE.HOS.Services.Bsd _sockets[socketFd] = null; - errno = LinuxError.Success; + errno = LinuxError.SUCCESS; } return WriteBsdResult(context, 0, errno); @@ -1171,12 +1170,12 @@ namespace Ryujinx.HLE.HOS.Services.Bsd int socketFd = context.RequestData.ReadInt32(); ulong reserved = context.RequestData.ReadUInt64(); - LinuxError errno = LinuxError.NoEnt; + LinuxError errno = LinuxError.ENOENT; int newSockFd = -1; if (_isPrivileged) { - errno = LinuxError.BadF; + errno = LinuxError.EBADF; BsdSocket oldSocket = RetrieveSocket(socketFd); diff --git a/Ryujinx.HLE/Loaders/Elf/ElfDynamicTag.cs b/Ryujinx.HLE/Loaders/Elf/ElfDynamicTag.cs index 0918f6c42c..eb37d612df 100644 --- a/Ryujinx.HLE/Loaders/Elf/ElfDynamicTag.cs +++ b/Ryujinx.HLE/Loaders/Elf/ElfDynamicTag.cs @@ -1,72 +1,75 @@ +using System.Diagnostics.CodeAnalysis; + namespace Ryujinx.HLE.Loaders.Elf { - internal enum ElfDynamicTag + [SuppressMessage("ReSharper", "InconsistentNaming")] + enum ElfDynamicTag { - Null = 0, - Needed = 1, - PltRelSz = 2, - PltGoz = 3, - Hash = 4, - StrTab = 5, - SymTab = 6, - RelA = 7, - RelASz = 8, - RelAEnt = 9, - StrSz = 10, - SymEnt = 11, - Init = 12, - Fini = 13, - SoName = 14, - RPath = 15, - Symbolic = 16, - Rel = 17, - RelSz = 18, - RelEnt = 19, - PltRel = 20, - Debug = 21, - TextRel = 22, - JmpRel = 23, - BindNow = 24, - InitArray = 25, - FiniArray = 26, - InitArraySz = 27, - FiniArraySz = 28, - RunPath = 29, - Flags = 30, - Encoding = 32, - PreInitArray = 32, - PreInitArraySz = 33, - GnuPrelinked = 0x6ffffdf5, - GnuConflictSz = 0x6ffffdf6, - GnuLibListSz = 0x6ffffdf7, - Checksum = 0x6ffffdf8, - PltPadSz = 0x6ffffdf9, - MoveEnt = 0x6ffffdfa, - MoveSz = 0x6ffffdfb, - Feature1 = 0x6ffffdfc, - PosFlag1 = 0x6ffffdfd, - SymInSz = 0x6ffffdfe, - SymInEnt = 0x6ffffdff, - GnuHash = 0x6ffffef5, - TlsDescPlt = 0x6ffffef6, - TlsDescGot = 0x6ffffef7, - GnuConflict = 0x6ffffef8, - GnuLibList = 0x6ffffef9, - Config = 0x6ffffefa, - DepAudit = 0x6ffffefb, - Audit = 0x6ffffefc, - PltPad = 0x6ffffefd, - MoveTab = 0x6ffffefe, - SymInfo = 0x6ffffeff, - VerSym = 0x6ffffff0, - RelaCount = 0x6ffffff9, - RelCount = 0x6ffffffa, - Flags1 = 0x6ffffffb, - VerDef = 0x6ffffffc, - VerDefNum = 0x6ffffffd, - VerNeed = 0x6ffffffe, - VerNeedNum = 0x6fffffff, - Auxiliary = 0x7ffffffd, - Filter = 0x7fffffff + DT_NULL = 0, + DT_NEEDED = 1, + DT_PLTRELSZ = 2, + DT_PLTGOT = 3, + DT_HASH = 4, + DT_STRTAB = 5, + DT_SYMTAB = 6, + DT_RELA = 7, + DT_RELASZ = 8, + DT_RELAENT = 9, + DT_STRSZ = 10, + DT_SYMENT = 11, + DT_INIT = 12, + DT_FINI = 13, + DT_SONAME = 14, + DT_RPATH = 15, + DT_SYMBOLIC = 16, + DT_REL = 17, + DT_RELSZ = 18, + DT_RELENT = 19, + DT_PLTREL = 20, + DT_DEBUG = 21, + DT_TEXTREL = 22, + DT_JMPREL = 23, + DT_BIND_NOW = 24, + DT_INIT_ARRAY = 25, + DT_FINI_ARRAY = 26, + DT_INIT_ARRAYSZ = 27, + DT_FINI_ARRAYSZ = 28, + DT_RUNPATH = 29, + DT_FLAGS = 30, + DT_ENCODING = 32, + DT_PREINIT_ARRAY = 32, + DT_PREINIT_ARRAYSZ = 33, + DT_GNU_PRELINKED = 0x6ffffdf5, + DT_GNU_CONFLICTSZ = 0x6ffffdf6, + DT_GNU_LIBLISTSZ = 0x6ffffdf7, + DT_CHECKSUM = 0x6ffffdf8, + DT_PLTPADSZ = 0x6ffffdf9, + DT_MOVEENT = 0x6ffffdfa, + DT_MOVESZ = 0x6ffffdfb, + DT_FEATURE_1 = 0x6ffffdfc, + DT_POSFLAG_1 = 0x6ffffdfd, + DT_SYMINSZ = 0x6ffffdfe, + DT_SYMINENT = 0x6ffffdff, + DT_GNU_HASH = 0x6ffffef5, + DT_TLSDESC_PLT = 0x6ffffef6, + DT_TLSDESC_GOT = 0x6ffffef7, + DT_GNU_CONFLICT = 0x6ffffef8, + DT_GNU_LIBLIST = 0x6ffffef9, + DT_CONFIG = 0x6ffffefa, + DT_DEPAUDIT = 0x6ffffefb, + DT_AUDIT = 0x6ffffefc, + DT_PLTPAD = 0x6ffffefd, + DT_MOVETAB = 0x6ffffefe, + DT_SYMINFO = 0x6ffffeff, + DT_VERSYM = 0x6ffffff0, + DT_RELACOUNT = 0x6ffffff9, + DT_RELCOUNT = 0x6ffffffa, + DT_FLAGS_1 = 0x6ffffffb, + DT_VERDEF = 0x6ffffffc, + DT_VERDEFNUM = 0x6ffffffd, + DT_VERNEED = 0x6ffffffe, + DT_VERNEEDNUM = 0x6fffffff, + DT_AUXILIARY = 0x7ffffffd, + DT_FILTER = 0x7fffffff } } \ No newline at end of file diff --git a/Ryujinx.HLE/Utilities/LinuxError.cs b/Ryujinx.HLE/Utilities/LinuxError.cs index 0fe9f5c4f0..81a9d7be5a 100644 --- a/Ryujinx.HLE/Utilities/LinuxError.cs +++ b/Ryujinx.HLE/Utilities/LinuxError.cs @@ -1,45 +1,48 @@ +using System.Diagnostics.CodeAnalysis; + namespace Ryujinx.HLE.Utilities { - internal enum LinuxError + [SuppressMessage("ReSharper", "InconsistentNaming")] + enum LinuxError { - 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 */, + SUCCESS = 0, + EPERM = 1 /* Operation not permitted */, + ENOENT = 2 /* No such file or directory */, + ESRCH = 3 /* No such process */, + EINTR = 4 /* Interrupted system call */, + EIO = 5 /* I/O error */, + ENXIO = 6 /* No such device or address */, + E2BIG = 7 /* Argument list too long */, + ENOEXEC = 8 /* Exec format error */, + EBADF = 9 /* Bad file number */, + ECHILD = 10 /* No child processes */, + EAGAIN = 11 /* Try again */, + ENOMEM = 12 /* Out of memory */, + EACCES = 13 /* Permission denied */, + EFAULT = 14 /* Bad address */, + ENOTBLK = 15 /* Block device required */, + EBUSY = 16 /* Device or resource busy */, + EEXIST = 17 /* File exists */, + EXDEV = 18 /* Cross-device link */, + ENODEV = 19 /* No such device */, + ENOTDIR = 20 /* Not a directory */, + EISDIR = 21 /* Is a directory */, + EINVAL = 22 /* Invalid argument */, + ENFILE = 23 /* File table overflow */, + EMFILE = 24 /* Too many open files */, + ENOTTY = 25 /* Not a typewriter */, + ETXTBSY = 26 /* Text file busy */, + EFBIG = 27 /* File too large */, + ENOSPC = 28 /* No space left on device */, + ESPIPE = 29 /* Illegal seek */, + EROFS = 30 /* Read-only file system */, + EMLINK = 31 /* Too many links */, + EPIPE = 32 /* Broken pipe */, + EDOM = 33 /* Math argument out of domain of func */, + ERANGE = 34 /* Math result not representable */, + EDEADLK = 35 /* Resource deadlock would occur */, + ENAMETOOLONG = 36 /* File name too long */, + ENOLCK = 37 /* No record locks available */, /* * This error code is special: arch syscall entry code will return @@ -48,105 +51,105 @@ namespace Ryujinx.HLE.Utilities * failures due to attempts to use a nonexistent syscall, syscall * implementations should refrain from returning -ENOSYS. */ - 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 */, + ENOSYS = 38 /* Invalid system call number */, + ENOTEMPTY = 39 /* Directory not empty */, + ELOOP = 40 /* Too many symbolic links encountered */, + EWOULDBLOCK = EAGAIN /* Operation would block */, + ENOMSG = 42 /* No message of desired type */, + EIDRM = 43 /* Identifier removed */, + ECHRNG = 44 /* Channel number out of range */, + EL2NSYNC = 45 /* Level 2 not synchronized */, + EL3HLT = 46 /* Level 3 halted */, + EL3RST = 47 /* Level 3 reset */, + ELNRNG = 48 /* Link number out of range */, + EUNATCH = 49 /* Protocol driver not attached */, + ENOCSI = 50 /* No CSI structure available */, + EL2HLT = 51 /* Level 2 halted */, + EBADE = 52 /* Invalid exchange */, + EBADR = 53 /* Invalid request descriptor */, + EXFULL = 54 /* Exchange full */, + ENOANO = 55 /* No anode */, + EBADRQC = 56 /* Invalid request code */, + EBADSLT = 57 /* Invalid slot */, + EDEADLOCK = EDEADLK, + EBFONT = 59 /* Bad font file format */, + ENOSTR = 60 /* Device not a stream */, + ENODATA = 61 /* No data available */, + ETIME = 62 /* Timer expired */, + ENOSR = 63 /* Out of streams resources */, + ENONET = 64 /* Machine is not on the network */, + ENOPKG = 65 /* Package not installed */, + EREMOTE = 66 /* Object is remote */, + ENOLINK = 67 /* Link has been severed */, + EADV = 68 /* Advertise error */, + ESRMNT = 69 /* Srmount error */, + ECOMM = 70 /* Communication error on send */, + EPROTO = 71 /* Protocol error */, + EMULTIHOP = 72 /* Multihop attempted */, + EDOTDOT = 73 /* RFS specific error */, + EBADMSG = 74 /* Not a data message */, + EOVERFLOW = 75 /* Value too large for defined data type */, + ENOTUNIQ = 76 /* Name not unique on network */, + EBADFD = 77 /* File descriptor in bad state */, + EREMCHG = 78 /* Remote address changed */, + ELIBACC = 79 /* Can not access a needed shared library */, + ELIBBAD = 80 /* Accessing a corrupted shared library */, + ELIBSCN = 81 /* .lib section in a.out corrupted */, + ELIBMAX = 82 /* Attempting to link in too many shared libraries */, + ELIBEXEC = 83 /* Cannot exec a shared library directly */, + EILSEQ = 84 /* Illegal byte sequence */, + ERESTART = 85 /* Interrupted system call should be restarted */, + ESTRPIPE = 86 /* Streams pipe error */, + EUSERS = 87 /* Too many users */, + ENOTSOCK = 88 /* Socket operation on non-socket */, + EDESTADDRREQ = 89 /* Destination address required */, + EMSGSIZE = 90 /* Message too long */, + EPROTOTYPE = 91 /* Protocol wrong type for socket */, + ENOPROTOOPT = 92 /* Protocol not available */, + EPROTONOSUPPORT = 93 /* Protocol not supported */, + ESOCKTNOSUPPORT = 94 /* Socket type not supported */, + EOPNOTSUPP = 95 /* Operation not supported on transport endpoint */, + EPFNOSUPPORT = 96 /* Protocol family not supported */, + EAFNOSUPPORT = 97 /* Address family not supported by protocol */, + EADDRINUSE = 98 /* Address already in use */, + EADDRNOTAVAIL = 99 /* Cannot assign requested address */, + ENETDOWN = 100 /* Network is down */, + ENETUNREACH = 101 /* Network is unreachable */, + ENETRESET = 102 /* Network dropped connection because of reset */, + ECONNABORTED = 103 /* Software caused connection abort */, + ECONNRESET = 104 /* Connection reset by peer */, + ENOBUFS = 105 /* No buffer space available */, + EISCONN = 106 /* Transport endpoint is already connected */, + ENOTCONN = 107 /* Transport endpoint is not connected */, + ESHUTDOWN = 108 /* Cannot send after transport endpoint shutdown */, + ETOOMANYREFS = 109 /* Too many references: cannot splice */, + ETIMEDOUT = 110 /* Connection timed out */, + ECONNREFUSED = 111 /* Connection refused */, + EHOSTDOWN = 112 /* Host is down */, + EHOSTUNREACH = 113 /* No route to host */, + EALREADY = 114 /* Operation already in progress */, + EINPROGRESS = 115 /* Operation now in progress */, + ESTALE = 116 /* Stale file handle */, + EUCLEAN = 117 /* Structure needs cleaning */, + ENOTNAM = 118 /* Not a XENIX named type file */, + ENAVAIL = 119 /* No XENIX semaphores available */, + EISNAM = 120 /* Is a named type file */, + EREMOTEIO = 121 /* Remote I/O error */, + EDQUOT = 122 /* Quota exceeded */, + ENOMEDIUM = 123 /* No medium found */, + EMEDIUMTYPE = 124 /* Wrong medium type */, + ECANCELED = 125 /* Operation Canceled */, + ENOKEY = 126 /* Required key not available */, + EKEYEXPIRED = 127 /* Key has expired */, + EKEYREVOKED = 128 /* Key has been revoked */, + EKEYREJECTED = 129 /* Key was rejected by service */, /* for robust mutexes */ - OwnerDead = 130 /* Owner died */, - NotRecoverable = 131 /* State not recoverable */, + EOWNERDEAD = 130 /* Owner died */, + ENOTRECOVERABLE = 131 /* State not recoverable */, - RfKill = 132 /* Operation not possible due to RF-kill */, + ERFKILL = 132 /* Operation not possible due to RF-kill */, - HwPoison = 133 /* Memory page has hardware error */ + EHWPOISON = 133 /* Memory page has hardware error */ } } \ No newline at end of file diff --git a/Ryujinx.HLE/Utilities/WSAError.cs b/Ryujinx.HLE/Utilities/WSAError.cs index 3422a1f789..81294b8b99 100644 --- a/Ryujinx.HLE/Utilities/WSAError.cs +++ b/Ryujinx.HLE/Utilities/WSAError.cs @@ -1,82 +1,85 @@ -namespace Ryujinx.HLE.Utilities +using System.Diagnostics.CodeAnalysis; + +namespace Ryujinx.HLE.Utilities { - internal enum WsaError + [SuppressMessage("ReSharper", "InconsistentNaming")] + enum WsaError { /* * All Windows Sockets error constants are biased by WSABASEERR from * the "normal" */ - BaseError = 10000, + WSABASEERR = 10000, /* * Windows Sockets definitions of regular Microsoft C error constants */ - Interrupted = (BaseError + 4), - BadFileHandle = (BaseError + 9), - AccessDenied = (BaseError + 13), - Fault = (BaseError + 14), - InvalidArgument = (BaseError + 22), - TooManyOpenSockets = (BaseError + 24), + WSAEINTR = (WSABASEERR + 4), + WSAEBADF = (WSABASEERR + 9), + WSAEACCES = (WSABASEERR + 13), + WSAEFAULT = (WSABASEERR + 14), + WSAEINVAL = (WSABASEERR + 22), + WSAEMFILE = (WSABASEERR + 24), /* * Windows Sockets definitions of regular Berkeley error constants */ - WouldBlock = (BaseError + 35), - InProgress = (BaseError + 36), - AlreadyInProgress = (BaseError + 37), - NotSocket = (BaseError + 38), - DestinationAddressRequired = (BaseError + 39), - MessageSize = (BaseError + 40), - ProtocolType = (BaseError + 41), - ProtocolOption = (BaseError + 42), - ProtocolNotSupported = (BaseError + 43), - SocketNotSupported = (BaseError + 44), - OperationNotSupported = (BaseError + 45), - ProtocolFamilyNotSupported = (BaseError + 46), - AddressFamilyNotSupported = (BaseError + 47), - AddressAlreadyInUse = (BaseError + 48), - AddressNotAvailable = (BaseError + 49), - NetworkDown = (BaseError + 50), - NetworkUnreachable = (BaseError + 51), - NetworkReset = (BaseError + 52), - ConnectionAborted = (BaseError + 53), - ConnectionReset = (BaseError + 54), - NoBufferSpaceAvailable = (BaseError + 55), - IsConnected = (BaseError + 56), - NotConnected = (BaseError + 57), - Shutdown = (BaseError + 58), - TooManyReferences = (BaseError + 59), - TimedOut = (BaseError + 60), - ConnectionRefused = (BaseError + 61), - Loop = (BaseError + 62), - NameTooLong = (BaseError + 63), - HostDown = (BaseError + 64), - HostUnreachable = (BaseError + 65), - NotEmpty = (BaseError + 66), - ProcessLimit = (BaseError + 67), - UserQuota = (BaseError + 68), - DiskQuota = (BaseError + 69), - Stale = (BaseError + 70), - Remote = (BaseError + 71), + WSAEWOULDBLOCK = (WSABASEERR + 35), + WSAEINPROGRESS = (WSABASEERR + 36), + WSAEALREADY = (WSABASEERR + 37), + WSAENOTSOCK = (WSABASEERR + 38), + WSAEDESTADDRREQ = (WSABASEERR + 39), + WSAEMSGSIZE = (WSABASEERR + 40), + WSAEPROTOTYPE = (WSABASEERR + 41), + WSAENOPROTOOPT = (WSABASEERR + 42), + WSAEPROTONOSUPPORT = (WSABASEERR + 43), + WSAESOCKTNOSUPPORT = (WSABASEERR + 44), + WSAEOPNOTSUPP = (WSABASEERR + 45), + WSAEPFNOSUPPORT = (WSABASEERR + 46), + WSAEAFNOSUPPORT = (WSABASEERR + 47), + WSAEADDRINUSE = (WSABASEERR + 48), + WSAEADDRNOTAVAIL = (WSABASEERR + 49), + WSAENETDOWN = (WSABASEERR + 50), + WSAENETUNREACH = (WSABASEERR + 51), + WSAENETRESET = (WSABASEERR + 52), + WSAECONNABORTED = (WSABASEERR + 53), + WSAECONNRESET = (WSABASEERR + 54), + WSAENOBUFS = (WSABASEERR + 55), + WSAEISCONN = (WSABASEERR + 56), + WSAENOTCONN = (WSABASEERR + 57), + WSAESHUTDOWN = (WSABASEERR + 58), + WSAETOOMANYREFS = (WSABASEERR + 59), + WSAETIMEDOUT = (WSABASEERR + 60), + WSAECONNREFUSED = (WSABASEERR + 61), + WSAELOOP = (WSABASEERR + 62), + WSAENAMETOOLONG = (WSABASEERR + 63), + WSAEHOSTDOWN = (WSABASEERR + 64), + WSAEHOSTUNREACH = (WSABASEERR + 65), + WSAENOTEMPTY = (WSABASEERR + 66), + WSAEPROCLIM = (WSABASEERR + 67), + WSAEUSERS = (WSABASEERR + 68), + WSAEDQUOT = (WSABASEERR + 69), + WSAESTALE = (WSABASEERR + 70), + WSAEREMOTE = (WSABASEERR + 71), /* * Extended Windows Sockets error constant definitions */ - SystemNotReady = (BaseError + 91), - VersionNotSupported = (BaseError + 92), - NotInitialized = (BaseError + 93), - Disconnecting = (BaseError + 101), - NoMoreResultsOld = (BaseError + 102), - CancelledOld = (BaseError + 103), - InvalidProcedureCallTable = (BaseError + 104), - InvalidProvider = (BaseError + 105), - ProviderFailedInit = (BaseError + 106), - SysCallFailure = (BaseError + 107), - ServiceNotFound = (BaseError + 108), - TypeNotFound = (BaseError + 109), - NoMoreResults = (BaseError + 110), - Cancelled = (BaseError + 111), - Refused = (BaseError + 112), + WSASYSNOTREADY = (WSABASEERR + 91), + WSAVERNOTSUPPORTED = (WSABASEERR + 92), + WSANOTINITIALISED = (WSABASEERR + 93), + WSAEDISCON = (WSABASEERR + 101), + WSAENOMORE = (WSABASEERR + 102), + WSAECANCELLED = (WSABASEERR + 103), + WSAEINVALIDPROCTABLE = (WSABASEERR + 104), + WSAEINVALIDPROVIDER = (WSABASEERR + 105), + WSAEPROVIDERFAILEDINIT = (WSABASEERR + 106), + WSASYSCALLFAILURE = (WSABASEERR + 107), + WSASERVICE_NOT_FOUND = (WSABASEERR + 108), + WSATYPE_NOT_FOUND = (WSABASEERR + 109), + WSA_E_NO_MORE = (WSABASEERR + 110), + WSA_E_CANCELLED = (WSABASEERR + 111), + WSAEREFUSED = (WSABASEERR + 112), /* * Error return codes from gethostbyname() and gethostbyaddr() @@ -90,42 +93,42 @@ */ /* Authoritative Answer: Host not found */ - HostNotFound = (BaseError + 1001), + WSAHOST_NOT_FOUND = (WSABASEERR + 1001), /* Non-Authoritative: Host not found, or SERVERFAIL */ - TryAgain = (BaseError + 1002), + WSATRY_AGAIN = (WSABASEERR + 1002), /* Non-recoverable errors, FORMERR, REFUSED, NOTIMP */ - NoRecovery = (BaseError + 1003), + WSANO_RECOVERY = (WSABASEERR + 1003), /* Valid name, no data record of requested type */ - NoData = (BaseError + 1004), + WSANO_DATA = (WSABASEERR + 1004), /* * Define QOS related error return codes * */ - QosReceivers = (BaseError + 1005), + WSA_QOS_RECEIVERS = (WSABASEERR + 1005), /* at least one Reserve has arrived */ - QosSenders = (BaseError + 1006), + WSA_QOS_SENDERS = (WSABASEERR + 1006), /* at least one Path has arrived */ - QosNoSenders = (BaseError + 1007), + WSA_QOS_NO_SENDERS = (WSABASEERR + 1007), /* there are no senders */ - QosNoReceivers = (BaseError + 1008), + WSA_QOS_NO_RECEIVERS = (WSABASEERR + 1008), /* there are no receivers */ - QosRequestConfirmed = (BaseError + 1009), + WSA_QOS_REQUEST_CONFIRMED = (WSABASEERR + 1009), /* Reserve has been confirmed */ - QosAdmissionFailure = (BaseError + 1010), + WSA_QOS_ADMISSION_FAILURE = (WSABASEERR + 1010), /* error due to lack of resources */ - QosPolicyFailure = (BaseError + 1011), + WSA_QOS_POLICY_FAILURE = (WSABASEERR + 1011), /* rejected for administrative reasons - bad credentials */ - QosBadStyle = (BaseError + 1012), + WSA_QOS_BAD_STYLE = (WSABASEERR + 1012), /* unknown or conflicting style */ - QosBadObject = (BaseError + 1013), + WSA_QOS_BAD_OBJECT = (WSABASEERR + 1013), /* problem with some part of the filterspec or providerspecific * buffer in general */ - QosTrafficCtrlError = (BaseError + 1014), + WSA_QOS_TRAFFIC_CTRL_ERROR = (WSABASEERR + 1014), /* problem with some part of the flowspec */ - QosGenericError = (BaseError + 1015) + WSA_QOS_GENERIC_ERROR = (WSABASEERR + 1015) } }