Stub GetFriendInvitationStorageChannelEvent (0x8C)

This commit is contained in:
Billy Laws 2022-06-04 21:45:53 +01:00
parent d9f6540831
commit 4888919515
2 changed files with 19 additions and 2 deletions

View File

@ -11,7 +11,10 @@
#include "IApplicationFunctions.h" #include "IApplicationFunctions.h"
namespace skyline::service::am { namespace skyline::service::am {
IApplicationFunctions::IApplicationFunctions(const DeviceState &state, ServiceManager &manager) : gpuErrorEvent(std::make_shared<type::KEvent>(state, false)), BaseService(state, manager) {} IApplicationFunctions::IApplicationFunctions(const DeviceState &state, ServiceManager &manager)
: BaseService(state, manager),
gpuErrorEvent(std::make_shared<type::KEvent>(state, false)),
friendInvitationStorageChannelEvent(std::make_shared<type::KEvent>(state, false)) {}
Result IApplicationFunctions::PopLaunchParameter(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response) { Result IApplicationFunctions::PopLaunchParameter(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response) {
constexpr u32 LaunchParameterMagic{0xC79497CA}; //!< The magic of the application launch parameters constexpr u32 LaunchParameterMagic{0xC79497CA}; //!< The magic of the application launch parameters
@ -143,4 +146,11 @@ namespace skyline::service::am {
response.copyHandles.push_back(handle); response.copyHandles.push_back(handle);
return {}; return {};
} }
Result IApplicationFunctions::GetFriendInvitationStorageChannelEvent(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response) {
auto handle{state.process->InsertItem(friendInvitationStorageChannelEvent)};
Logger::Debug("Friend Invitiation Storage Channel Event Handle: 0x{:X}", handle);
response.copyHandles.push_back(handle);
return {};
}
} }

View File

@ -20,6 +20,7 @@ namespace skyline::service::am {
class IApplicationFunctions : public BaseService { class IApplicationFunctions : public BaseService {
private: private:
std::shared_ptr<type::KEvent> gpuErrorEvent; //!< The event signalled on GPU errors std::shared_ptr<type::KEvent> gpuErrorEvent; //!< The event signalled on GPU errors
std::shared_ptr<type::KEvent> friendInvitationStorageChannelEvent; //!< The event signalled on friend invitations
public: public:
IApplicationFunctions(const DeviceState &state, ServiceManager &manager); IApplicationFunctions(const DeviceState &state, ServiceManager &manager);
@ -95,6 +96,11 @@ namespace skyline::service::am {
*/ */
Result GetGpuErrorDetectedSystemEvent(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response); Result GetGpuErrorDetectedSystemEvent(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response);
/**
* @url https://switchbrew.org/wiki/Applet_Manager_services#GetFriendInvitationStorageChannelEvent
*/
Result GetFriendInvitationStorageChannelEvent(type::KSession &session, ipc::IpcRequest &request, ipc::IpcResponse &response);
SERVICE_DECL( SERVICE_DECL(
SFUNC(0x1, IApplicationFunctions, PopLaunchParameter), SFUNC(0x1, IApplicationFunctions, PopLaunchParameter),
SFUNC(0x14, IApplicationFunctions, EnsureSaveData), SFUNC(0x14, IApplicationFunctions, EnsureSaveData),
@ -107,7 +113,8 @@ namespace skyline::service::am {
SFUNC(0x64, IApplicationFunctions, InitializeApplicationCopyrightFrameBuffer), SFUNC(0x64, IApplicationFunctions, InitializeApplicationCopyrightFrameBuffer),
SFUNC(0x65, IApplicationFunctions, SetApplicationCopyrightImage), SFUNC(0x65, IApplicationFunctions, SetApplicationCopyrightImage),
SFUNC(0x66, IApplicationFunctions, SetApplicationCopyrightVisibility), SFUNC(0x66, IApplicationFunctions, SetApplicationCopyrightVisibility),
SFUNC(0x82, IApplicationFunctions, GetGpuErrorDetectedSystemEvent) SFUNC(0x82, IApplicationFunctions, GetGpuErrorDetectedSystemEvent),
SFUNC(0x8C, IApplicationFunctions, GetFriendInvitationStorageChannelEvent)
) )
}; };