mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2024-11-18 20:16:40 +00:00
ba5c0cf5d8
* bsd: Add gdkchan's Select implementation Co-authored-by: TSRBerry <20988865+tsrberry@users.noreply.github.com> * bsd: Fix Select() causing a crash with an ArgumentException .NET Sockets have to be used for the Select() call * bsd: Make Select more generic * bsd: Adjust namespaces and remove unused imports * bsd: Fix NullReferenceException in Select Co-authored-by: gdkchan <gab.dark.100@gmail.com>
134 lines
6 KiB
C#
134 lines
6 KiB
C#
using System.Diagnostics.CodeAnalysis;
|
|
|
|
namespace Ryujinx.HLE.HOS.Services.Sockets.Bsd.Impl
|
|
{
|
|
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
|
enum WsaError
|
|
{
|
|
/*
|
|
* All Windows Sockets error constants are biased by WSABASEERR from
|
|
* the "normal"
|
|
*/
|
|
WSABASEERR = 10000,
|
|
|
|
/*
|
|
* Windows Sockets definitions of regular Microsoft C error constants
|
|
*/
|
|
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
|
|
*/
|
|
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
|
|
*/
|
|
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()
|
|
* (when using the resolver). Note that these errors are
|
|
* retrieved via WSAGetLastError() and must therefore follow
|
|
* the rules for avoiding clashes with error numbers from
|
|
* specific implementations or language run-time systems.
|
|
* For this reason the codes are based at WSABASEERR+1001.
|
|
* Note also that [WSA]NO_ADDRESS is defined only for
|
|
* compatibility purposes.
|
|
*/
|
|
|
|
/* Authoritative Answer: Host not found */
|
|
WSAHOST_NOT_FOUND = (WSABASEERR + 1001),
|
|
|
|
/* Non-Authoritative: Host not found, or SERVERFAIL */
|
|
WSATRY_AGAIN = (WSABASEERR + 1002),
|
|
|
|
/* Non-recoverable errors, FORMERR, REFUSED, NOTIMP */
|
|
WSANO_RECOVERY = (WSABASEERR + 1003),
|
|
|
|
/* Valid name, no data record of requested type */
|
|
WSANO_DATA = (WSABASEERR + 1004),
|
|
|
|
/*
|
|
* Define QOS related error return codes
|
|
*
|
|
*/
|
|
WSA_QOS_RECEIVERS = (WSABASEERR + 1005),
|
|
/* at least one Reserve has arrived */
|
|
WSA_QOS_SENDERS = (WSABASEERR + 1006),
|
|
/* at least one Path has arrived */
|
|
WSA_QOS_NO_SENDERS = (WSABASEERR + 1007),
|
|
/* there are no senders */
|
|
WSA_QOS_NO_RECEIVERS = (WSABASEERR + 1008),
|
|
/* there are no receivers */
|
|
WSA_QOS_REQUEST_CONFIRMED = (WSABASEERR + 1009),
|
|
/* Reserve has been confirmed */
|
|
WSA_QOS_ADMISSION_FAILURE = (WSABASEERR + 1010),
|
|
/* error due to lack of resources */
|
|
WSA_QOS_POLICY_FAILURE = (WSABASEERR + 1011),
|
|
/* rejected for administrative reasons - bad credentials */
|
|
WSA_QOS_BAD_STYLE = (WSABASEERR + 1012),
|
|
/* unknown or conflicting style */
|
|
WSA_QOS_BAD_OBJECT = (WSABASEERR + 1013),
|
|
/* problem with some part of the filterspec or providerspecific
|
|
* buffer in general */
|
|
WSA_QOS_TRAFFIC_CTRL_ERROR = (WSABASEERR + 1014),
|
|
/* problem with some part of the flowspec */
|
|
WSA_QOS_GENERIC_ERROR = (WSABASEERR + 1015)
|
|
}
|
|
}
|