2018-08-16 23:47:36 +00:00
|
|
|
using Ryujinx.HLE.HOS.Ipc;
|
2018-06-11 00:46:42 +00:00
|
|
|
using Ryujinx.HLE.Logging;
|
2018-02-28 03:31:52 +00:00
|
|
|
using System.Collections.Generic;
|
|
|
|
|
2018-08-16 23:47:36 +00:00
|
|
|
namespace Ryujinx.HLE.HOS.Services.Ssl
|
2018-02-28 03:31:52 +00:00
|
|
|
{
|
2018-04-06 04:01:52 +00:00
|
|
|
class ISslService : IpcService
|
2018-02-28 03:31:52 +00:00
|
|
|
{
|
|
|
|
private Dictionary<int, ServiceProcessRequest> m_Commands;
|
|
|
|
|
2018-03-19 18:58:46 +00:00
|
|
|
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
|
2018-02-28 03:31:52 +00:00
|
|
|
|
2018-04-06 04:01:52 +00:00
|
|
|
public ISslService()
|
2018-02-28 03:31:52 +00:00
|
|
|
{
|
|
|
|
m_Commands = new Dictionary<int, ServiceProcessRequest>()
|
|
|
|
{
|
2018-10-06 22:16:42 +00:00
|
|
|
{ 0, CreateContext },
|
2018-06-02 22:46:09 +00:00
|
|
|
{ 5, SetInterfaceVersion }
|
2018-02-28 03:31:52 +00:00
|
|
|
};
|
|
|
|
}
|
2018-06-02 22:46:09 +00:00
|
|
|
|
2018-10-06 22:16:42 +00:00
|
|
|
// 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)
|
2018-06-02 22:46:09 +00:00
|
|
|
public long SetInterfaceVersion(ServiceCtx Context)
|
|
|
|
{
|
|
|
|
int Version = Context.RequestData.ReadInt32();
|
|
|
|
|
2018-10-06 22:16:42 +00:00
|
|
|
Context.Device.Log.PrintStub(LogClass.ServiceSsl, $"Stubbed. Version: {Version}");
|
2018-06-02 22:46:09 +00:00
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|
2018-02-28 03:31:52 +00:00
|
|
|
}
|
|
|
|
}
|