Implement ISslContext (#440)

This PR implement an empty `ISslContext` and update `CreateContext` and `SetInterfaceVersion` inside `ISslService`
This commit is contained in:
Ac_K 2018-10-07 00:16:42 +02:00 committed by Thomas Guillemard
parent 5821ff675d
commit 5b8ccb717f
2 changed files with 36 additions and 1 deletions

View file

@ -0,0 +1,20 @@
using Ryujinx.HLE.HOS.Ipc;
using System.Collections.Generic;
namespace Ryujinx.HLE.HOS.Services.Ssl
{
class ISslContext : IpcService
{
private Dictionary<int, ServiceProcessRequest> m_Commands;
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
public ISslContext()
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
//...
};
}
}
}

View file

@ -14,15 +14,30 @@ namespace Ryujinx.HLE.HOS.Services.Ssl
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, CreateContext },
{ 5, SetInterfaceVersion }
};
}
// CreateContext(nn::ssl::sf::SslVersion, u64, pid) -> object<nn::ssl::sf::ISslContext>
public long CreateContext(ServiceCtx Context)
{
int SslVersion = Context.RequestData.ReadInt32();
long Unknown = Context.RequestData.ReadInt64();
Context.Device.Log.PrintStub(LogClass.ServiceSsl, $"Stubbed. SslVersion: {SslVersion} - Unknown: {Unknown}");
MakeObject(Context, new ISslContext());
return 0;
}
// SetInterfaceVersion(u32)
public long SetInterfaceVersion(ServiceCtx Context)
{
int Version = Context.RequestData.ReadInt32();
Context.Device.Log.PrintStub(LogClass.ServiceSsl, "Stubbed.");
Context.Device.Log.PrintStub(LogClass.ServiceSsl, $"Stubbed. Version: {Version}");
return 0;
}