ssl: Move SSL class to cpp file

This isn't required to be visible to anything outside of the main source
file, and will eliminate needing to rebuild anything else including the
header if the SSL class needs to be changed in the future.
This commit is contained in:
Lioncash 2018-09-02 11:36:43 -04:00
parent c69dc5acf9
commit 41cd766438
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);