ssl: Implement SSL connectivity (#2961)
* implement certain servicessl functions * ssl: Implement more of SSL connection and abstract it This adds support to non blocking SSL operations and unlink the SSL implementation from the IPC logic. * Rename SslDefaultSocketConnection to SslManagedSocketConnection * Fix regression on Pokemon TV * Address gdkchan's comment * Simplify value read from previous commit * ssl: some changes - Implement builtin certificates parsing and retrieving - Fix issues with SSL version handling - Improve managed SSL socket error handling - Ensure to only return a certificate on DoHandshake when actually requested * Add missing BuiltInCertificateManager initialization call * Address gdkchan's comment * Address Ack's comment Co-authored-by: InvoxiPlayGames <webmaster@invoxiplaygames.uk>
This commit is contained in:
parent
366fe2dbb2
commit
3fa7ef21b4
12 changed files with 1138 additions and 34 deletions
20
Ryujinx.HLE/HOS/Services/Ssl/ResultCode.cs
Normal file
20
Ryujinx.HLE/HOS/Services/Ssl/ResultCode.cs
Normal file
|
@ -0,0 +1,20 @@
|
|||
namespace Ryujinx.HLE.HOS.Services.Ssl
|
||||
{
|
||||
public enum ResultCode
|
||||
{
|
||||
OsModuleId = 123,
|
||||
ErrorCodeShift = 9,
|
||||
|
||||
Success = 0,
|
||||
NoSocket = (103 << ErrorCodeShift) | OsModuleId,
|
||||
InvalidSocket = (106 << ErrorCodeShift) | OsModuleId,
|
||||
InvalidCertBufSize = (112 << ErrorCodeShift) | OsModuleId,
|
||||
InvalidOption = (126 << ErrorCodeShift) | OsModuleId,
|
||||
CertBufferTooSmall = (202 << ErrorCodeShift) | OsModuleId,
|
||||
AlreadyInUse = (203 << ErrorCodeShift) | OsModuleId,
|
||||
WouldBlock = (204 << ErrorCodeShift) | OsModuleId,
|
||||
Timeout = (205 << ErrorCodeShift) | OsModuleId,
|
||||
ConnectionReset = (209 << ErrorCodeShift) | OsModuleId,
|
||||
ConnectionAbort = (210 << ErrorCodeShift) | OsModuleId
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue