1
0
Fork 0
forked from suyu/suyu

Merge pull request #1230 from lioncash/ssl

ssl: Move SSL class to cpp file
This commit is contained in:
bunnei 2018-09-04 11:49:22 -04:00 committed by GitHub
commit c156ee8eb8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 39 additions and 37 deletions

View file

@ -3,6 +3,9 @@
// Refer to the license.txt file included. // Refer to the license.txt file included.
#include "core/hle/ipc_helpers.h" #include "core/hle/ipc_helpers.h"
#include "core/hle/kernel/hle_ipc.h"
#include "core/hle/service/service.h"
#include "core/hle/service/sm/sm.h"
#include "core/hle/service/ssl/ssl.h" #include "core/hle/service/ssl/ssl.h"
namespace Service::SSL { namespace Service::SSL {
@ -81,15 +84,10 @@ private:
} }
}; };
void SSL::CreateContext(Kernel::HLERequestContext& ctx) { class SSL final : public ServiceFramework<SSL> {
LOG_WARNING(Service_SSL, "(STUBBED) called"); public:
explicit SSL() : ServiceFramework{"ssl"} {
IPC::ResponseBuilder rb{ctx, 2, 0, 1}; // clang-format off
rb.Push(RESULT_SUCCESS);
rb.PushIpcInterface<ISslContext>();
}
SSL::SSL() : ServiceFramework("ssl") {
static const FunctionInfo functions[] = { static const FunctionInfo functions[] = {
{0, &SSL::CreateContext, "CreateContext"}, {0, &SSL::CreateContext, "CreateContext"},
{1, nullptr, "GetContextCount"}, {1, nullptr, "GetContextCount"},
@ -99,10 +97,21 @@ SSL::SSL() : ServiceFramework("ssl") {
{5, &SSL::SetInterfaceVersion, "SetInterfaceVersion"}, {5, &SSL::SetInterfaceVersion, "SetInterfaceVersion"},
{6, nullptr, "FlushSessionCache"}, {6, nullptr, "FlushSessionCache"},
}; };
RegisterHandlers(functions); // clang-format on
}
void SSL::SetInterfaceVersion(Kernel::HLERequestContext& ctx) { RegisterHandlers(functions);
}
private:
void CreateContext(Kernel::HLERequestContext& ctx) {
LOG_WARNING(Service_SSL, "(STUBBED) called");
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
rb.Push(RESULT_SUCCESS);
rb.PushIpcInterface<ISslContext>();
}
void SetInterfaceVersion(Kernel::HLERequestContext& ctx) {
LOG_WARNING(Service_SSL, "(STUBBED) called"); LOG_WARNING(Service_SSL, "(STUBBED) called");
IPC::RequestParser rp{ctx}; IPC::RequestParser rp{ctx};
u32 unk1 = rp.Pop<u32>(); // Probably minor/major? u32 unk1 = rp.Pop<u32>(); // Probably minor/major?
@ -110,7 +119,8 @@ void SSL::SetInterfaceVersion(Kernel::HLERequestContext& ctx) {
IPC::ResponseBuilder rb{ctx, 2}; IPC::ResponseBuilder rb{ctx, 2};
rb.Push(RESULT_SUCCESS); rb.Push(RESULT_SUCCESS);
} }
};
void InstallInterfaces(SM::ServiceManager& service_manager) { void InstallInterfaces(SM::ServiceManager& service_manager) {
std::make_shared<SSL>()->InstallAsService(service_manager); std::make_shared<SSL>()->InstallAsService(service_manager);

View file

@ -4,20 +4,12 @@
#pragma once #pragma once
#include "core/hle/service/service.h" namespace Service::SM {
class ServiceManager;
}
namespace Service::SSL { namespace Service::SSL {
class SSL final : public ServiceFramework<SSL> {
public:
explicit SSL();
~SSL() = default;
private:
void CreateContext(Kernel::HLERequestContext& ctx);
void SetInterfaceVersion(Kernel::HLERequestContext& ctx);
};
/// Registers all SSL services with the specified service manager. /// Registers all SSL services with the specified service manager.
void InstallInterfaces(SM::ServiceManager& service_manager); void InstallInterfaces(SM::ServiceManager& service_manager);