acc_su: Implement GetProfileEditor (205)
Takes a UUID of a user and provides and interface that allows RW access to user data/settings.
This commit is contained in:
parent
812fb30821
commit
471b2a4211
|
@ -350,6 +350,17 @@ void Module::Interface::IsUserAccountSwitchLocked(Kernel::HLERequestContext& ctx
|
||||||
rb.Push(is_locked);
|
rb.Push(is_locked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Module::Interface::GetProfileEditor(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
Common::UUID user_id = rp.PopRaw<Common::UUID>();
|
||||||
|
|
||||||
|
LOG_DEBUG(Service_ACC, "called, user_id={}", user_id.Format());
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
rb.PushIpcInterface<IProfileEditor>(user_id, *profile_manager);
|
||||||
|
}
|
||||||
|
|
||||||
void Module::Interface::TrySelectUserWithoutInteraction(Kernel::HLERequestContext& ctx) {
|
void Module::Interface::TrySelectUserWithoutInteraction(Kernel::HLERequestContext& ctx) {
|
||||||
LOG_DEBUG(Service_ACC, "called");
|
LOG_DEBUG(Service_ACC, "called");
|
||||||
// A u8 is passed into this function which we can safely ignore. It's to determine if we have
|
// A u8 is passed into this function which we can safely ignore. It's to determine if we have
|
||||||
|
|
|
@ -30,6 +30,7 @@ public:
|
||||||
void IsUserRegistrationRequestPermitted(Kernel::HLERequestContext& ctx);
|
void IsUserRegistrationRequestPermitted(Kernel::HLERequestContext& ctx);
|
||||||
void TrySelectUserWithoutInteraction(Kernel::HLERequestContext& ctx);
|
void TrySelectUserWithoutInteraction(Kernel::HLERequestContext& ctx);
|
||||||
void IsUserAccountSwitchLocked(Kernel::HLERequestContext& ctx);
|
void IsUserAccountSwitchLocked(Kernel::HLERequestContext& ctx);
|
||||||
|
void GetProfileEditor(Kernel::HLERequestContext& ctx);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
std::shared_ptr<Module> module;
|
std::shared_ptr<Module> module;
|
||||||
|
|
|
@ -41,7 +41,7 @@ ACC_SU::ACC_SU(std::shared_ptr<Module> module, std::shared_ptr<ProfileManager> p
|
||||||
{202, nullptr, "CancelUserRegistration"},
|
{202, nullptr, "CancelUserRegistration"},
|
||||||
{203, nullptr, "DeleteUser"},
|
{203, nullptr, "DeleteUser"},
|
||||||
{204, nullptr, "SetUserPosition"},
|
{204, nullptr, "SetUserPosition"},
|
||||||
{205, nullptr, "GetProfileEditor"},
|
{205, &ACC_SU::GetProfileEditor, "GetProfileEditor"},
|
||||||
{206, nullptr, "CompleteUserRegistrationForcibly"},
|
{206, nullptr, "CompleteUserRegistrationForcibly"},
|
||||||
{210, nullptr, "CreateFloatingRegistrationRequest"},
|
{210, nullptr, "CreateFloatingRegistrationRequest"},
|
||||||
{230, nullptr, "AuthenticateServiceAsync"},
|
{230, nullptr, "AuthenticateServiceAsync"},
|
||||||
|
|
Reference in New Issue