4 changed files with 88 additions and 1 deletions
-
2src/core/CMakeLists.txt
-
62src/core/hle/service/ns/dynamic_rights_interface.cpp
-
22src/core/hle/service/ns/dynamic_rights_interface.h
-
3src/core/hle/service/ns/ns.cpp
@ -0,0 +1,62 @@ |
|||||
|
// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project
|
||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
|
||||
|
#include "core/hle/service/cmif_serialization.h"
|
||||
|
#include "core/hle/service/ns/dynamic_rights_interface.h"
|
||||
|
|
||||
|
namespace Service::NS { |
||||
|
|
||||
|
IDynamicRightsInterface::IDynamicRightsInterface(Core::System& system_) |
||||
|
: ServiceFramework{system_, "DynamicRightsInterface"} { |
||||
|
// clang-format off
|
||||
|
static const FunctionInfo functions[] = { |
||||
|
{0, nullptr, "RequestApplicationRightsOnServer"}, |
||||
|
{1, nullptr, "RequestAssignRights"}, |
||||
|
{4, nullptr, "DeprecatedRequestAssignRightsToResume"}, |
||||
|
{5, D<&IDynamicRightsInterface::VerifyActivatedRightsOwners>, "VerifyActivatedRightsOwners"}, |
||||
|
{6, nullptr, "DeprecatedGetApplicationRightsStatus"}, |
||||
|
{7, nullptr, "RequestPrefetchForDynamicRights"}, |
||||
|
{8, nullptr, "GetDynamicRightsState"}, |
||||
|
{9, nullptr, "RequestApplicationRightsOnServerToResume"}, |
||||
|
{10, nullptr, "RequestAssignRightsToResume"}, |
||||
|
{11, nullptr, "GetActivatedRightsUsers"}, |
||||
|
{12, nullptr, "GetApplicationRightsStatus"}, |
||||
|
{13, D<&IDynamicRightsInterface::GetRunningApplicationStatus>, "GetRunningApplicationStatus"}, |
||||
|
{14, nullptr, "SelectApplicationLicense"}, |
||||
|
{15, nullptr, "RequestContentsAuthorizationToken"}, |
||||
|
{16, nullptr, "QualifyUser"}, |
||||
|
{17, nullptr, "QualifyUserWithProcessId"}, |
||||
|
{18, D<&IDynamicRightsInterface::NotifyApplicationRightsCheckStart>, "NotifyApplicationRightsCheckStart"}, |
||||
|
{19, nullptr, "UpdateUserList"}, |
||||
|
{20, nullptr, "IsRightsLostUser"}, |
||||
|
{21, nullptr, "SetRequiredAddOnContentsOnContentsAvailabilityTransition"}, |
||||
|
{22, nullptr, "GetLimitedApplicationLicense"}, |
||||
|
{23, nullptr, "GetLimitedApplicationLicenseUpgradableEvent"}, |
||||
|
{24, nullptr, "NotifyLimitedApplicationLicenseUpgradableEventForDebug"}, |
||||
|
{25, nullptr, "RequestProceedDynamicRightsState"}, |
||||
|
}; |
||||
|
// clang-format on
|
||||
|
|
||||
|
RegisterHandlers(functions); |
||||
|
} |
||||
|
|
||||
|
IDynamicRightsInterface::~IDynamicRightsInterface() = default; |
||||
|
|
||||
|
Result IDynamicRightsInterface::NotifyApplicationRightsCheckStart() { |
||||
|
LOG_WARNING(Service_NS, "(STUBBED) called"); |
||||
|
R_SUCCEED(); |
||||
|
} |
||||
|
|
||||
|
Result IDynamicRightsInterface::GetRunningApplicationStatus(Out<u32> out_status, |
||||
|
u64 rights_handle) { |
||||
|
LOG_WARNING(Service_NS, "(STUBBED) called, rights_handle={:#x}", rights_handle); |
||||
|
*out_status = 0; |
||||
|
R_SUCCEED(); |
||||
|
} |
||||
|
|
||||
|
Result IDynamicRightsInterface::VerifyActivatedRightsOwners(u64 rights_handle) { |
||||
|
LOG_WARNING(Service_NS, "(STUBBED) called, rights_handle={:#x}", rights_handle); |
||||
|
R_SUCCEED(); |
||||
|
} |
||||
|
|
||||
|
} // namespace Service::NS
|
||||
@ -0,0 +1,22 @@ |
|||||
|
// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project |
||||
|
// SPDX-License-Identifier: GPL-2.0-or-later |
||||
|
|
||||
|
#pragma once |
||||
|
|
||||
|
#include "core/hle/service/cmif_types.h" |
||||
|
#include "core/hle/service/service.h" |
||||
|
|
||||
|
namespace Service::NS { |
||||
|
|
||||
|
class IDynamicRightsInterface final : public ServiceFramework<IDynamicRightsInterface> { |
||||
|
public: |
||||
|
explicit IDynamicRightsInterface(Core::System& system_); |
||||
|
~IDynamicRightsInterface() override; |
||||
|
|
||||
|
private: |
||||
|
Result NotifyApplicationRightsCheckStart(); |
||||
|
Result GetRunningApplicationStatus(Out<u32> out_status, u64 rights_handle); |
||||
|
Result VerifyActivatedRightsOwners(u64 rights_handle); |
||||
|
}; |
||||
|
|
||||
|
} // namespace Service::NS |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue