mirror of https://git.suyu.dev/suyu/suyu
service: fsp_srv: Stub implementation of OpenMultiCommitManager.
This commit is contained in:
parent
551c61bf27
commit
47b97b9577
|
@ -767,7 +767,7 @@ FSP_SRV::FSP_SRV(FileSystemController& fsc, const Core::Reporter& reporter)
|
||||||
{1014, nullptr, "OutputMultiProgramTagAccessLog"},
|
{1014, nullptr, "OutputMultiProgramTagAccessLog"},
|
||||||
{1100, nullptr, "OverrideSaveDataTransferTokenSignVerificationKey"},
|
{1100, nullptr, "OverrideSaveDataTransferTokenSignVerificationKey"},
|
||||||
{1110, nullptr, "CorruptSaveDataFileSystemBySaveDataSpaceId2"},
|
{1110, nullptr, "CorruptSaveDataFileSystemBySaveDataSpaceId2"},
|
||||||
{1200, nullptr, "OpenMultiCommitManager"},
|
{1200, &FSP_SRV::OpenMultiCommitManager, "OpenMultiCommitManager"},
|
||||||
{1300, nullptr, "OpenBisWiper"},
|
{1300, nullptr, "OpenBisWiper"},
|
||||||
};
|
};
|
||||||
// clang-format on
|
// clang-format on
|
||||||
|
@ -988,4 +988,40 @@ void FSP_SRV::GetAccessLogVersionInfo(Kernel::HLERequestContext& ctx) {
|
||||||
rb.Push(access_log_program_index);
|
rb.Push(access_log_program_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class IMultiCommitManager final : public ServiceFramework<IMultiCommitManager> {
|
||||||
|
public:
|
||||||
|
explicit IMultiCommitManager() : ServiceFramework("IMultiCommitManager") {
|
||||||
|
static const FunctionInfo functions[] = {
|
||||||
|
{1, &IMultiCommitManager::Add, "Add"},
|
||||||
|
{2, &IMultiCommitManager::Commit, "Commit"},
|
||||||
|
};
|
||||||
|
RegisterHandlers(functions);
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
FileSys::VirtualFile backend;
|
||||||
|
|
||||||
|
void Add(Kernel::HLERequestContext& ctx) {
|
||||||
|
LOG_WARNING(Service_FS, "(STUBBED) called");
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Commit(Kernel::HLERequestContext& ctx) {
|
||||||
|
LOG_WARNING(Service_FS, "(STUBBED) called");
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
void FSP_SRV::OpenMultiCommitManager(Kernel::HLERequestContext& ctx) {
|
||||||
|
LOG_DEBUG(Service_FS, "called");
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
rb.PushIpcInterface<IMultiCommitManager>(std::make_shared<IMultiCommitManager>());
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace Service::FileSystem
|
} // namespace Service::FileSystem
|
||||||
|
|
|
@ -50,6 +50,7 @@ private:
|
||||||
void OpenPatchDataStorageByCurrentProcess(Kernel::HLERequestContext& ctx);
|
void OpenPatchDataStorageByCurrentProcess(Kernel::HLERequestContext& ctx);
|
||||||
void OutputAccessLogToSdCard(Kernel::HLERequestContext& ctx);
|
void OutputAccessLogToSdCard(Kernel::HLERequestContext& ctx);
|
||||||
void GetAccessLogVersionInfo(Kernel::HLERequestContext& ctx);
|
void GetAccessLogVersionInfo(Kernel::HLERequestContext& ctx);
|
||||||
|
void OpenMultiCommitManager(Kernel::HLERequestContext& ctx);
|
||||||
|
|
||||||
FileSystemController& fsc;
|
FileSystemController& fsc;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue