From 305f06eb71a7832e6b0081a67015b66ced8a23cd Mon Sep 17 00:00:00 2001 From: Mary Date: Sat, 24 Apr 2021 12:16:01 +0200 Subject: HLE: Fix integer sign inconcistency accross the codebase (#2222) * Make all title id instances unsigned * Replace address and size with ulong instead of signed types Long overdue change. Also change some logics here and there to optimize with the new memory manager. * Address Ac_K's comments * Remove uneeded cast all around * Fixes some others misalignment --- Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs | 12 ++++++------ Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslContext.cs | 14 +++++++------- 2 files changed, 13 insertions(+), 13 deletions(-) (limited to 'Ryujinx.HLE/HOS/Services/Ssl') diff --git a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs index 9d1ffe85..24f3d066 100644 --- a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs +++ b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs @@ -26,12 +26,12 @@ namespace Ryujinx.HLE.HOS.Services.Ssl.SslService // SetHostName(buffer) public ResultCode SetHostName(ServiceCtx context) { - long hostNameDataPosition = context.Request.SendBuff[0].Position; - long hostNameDataSize = context.Request.SendBuff[0].Size; + ulong hostNameDataPosition = context.Request.SendBuff[0].Position; + ulong hostNameDataSize = context.Request.SendBuff[0].Size; byte[] hostNameData = new byte[hostNameDataSize]; - context.Memory.Read((ulong)hostNameDataPosition, hostNameData); + context.Memory.Read(hostNameDataPosition, hostNameData); string hostName = Encoding.ASCII.GetString(hostNameData).Trim('\0'); @@ -75,12 +75,12 @@ namespace Ryujinx.HLE.HOS.Services.Ssl.SslService // Write(buffer) -> u32 public ResultCode Write(ServiceCtx context) { - long inputDataPosition = context.Request.SendBuff[0].Position; - long inputDataSize = context.Request.SendBuff[0].Size; + ulong inputDataPosition = context.Request.SendBuff[0].Position; + ulong inputDataSize = context.Request.SendBuff[0].Size; byte[] data = new byte[inputDataSize]; - context.Memory.Read((ulong)inputDataPosition, data); + context.Memory.Read(inputDataPosition, data); // NOTE: Tell the guest everything is transferred. uint transferredSize = (uint)inputDataSize; diff --git a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslContext.cs b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslContext.cs index ec4b5112..718af2cb 100644 --- a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslContext.cs +++ b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslContext.cs @@ -41,8 +41,8 @@ namespace Ryujinx.HLE.HOS.Services.Ssl.SslService { CertificateFormat certificateFormat = (CertificateFormat)context.RequestData.ReadUInt32(); - long certificateDataPosition = context.Request.SendBuff[0].Position; - long certificateDataSize = context.Request.SendBuff[0].Size; + ulong certificateDataPosition = context.Request.SendBuff[0].Position; + ulong certificateDataSize = context.Request.SendBuff[0].Size; context.ResponseData.Write(_serverCertificateId++); @@ -55,15 +55,15 @@ namespace Ryujinx.HLE.HOS.Services.Ssl.SslService // ImportClientPki(buffer certificate, buffer ascii_password) -> u64 certificateId public ResultCode ImportClientPki(ServiceCtx context) { - long certificateDataPosition = context.Request.SendBuff[0].Position; - long certificateDataSize = context.Request.SendBuff[0].Size; + ulong certificateDataPosition = context.Request.SendBuff[0].Position; + ulong certificateDataSize = context.Request.SendBuff[0].Size; - long asciiPasswordDataPosition = context.Request.SendBuff[1].Position; - long asciiPasswordDataSize = context.Request.SendBuff[1].Size; + ulong asciiPasswordDataPosition = context.Request.SendBuff[1].Position; + ulong asciiPasswordDataSize = context.Request.SendBuff[1].Size; byte[] asciiPasswordData = new byte[asciiPasswordDataSize]; - context.Memory.Read((ulong)asciiPasswordDataPosition, asciiPasswordData); + context.Memory.Read(asciiPasswordDataPosition, asciiPasswordData); string asciiPassword = Encoding.ASCII.GetString(asciiPasswordData).Trim('\0'); -- cgit v1.2.3