From 33da3447022aa7b8b2c8ba66b108f73fb8999399 Mon Sep 17 00:00:00 2001 From: georgemoralis Date: Thu, 10 Oct 2024 15:24:46 +0300 Subject: [PATCH] sceSharePlayGetCurrentConnectionInfo --- src/core/libraries/share_play/shareplay.cpp | 6 ++++-- src/core/libraries/share_play/shareplay.h | 16 +++++++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/core/libraries/share_play/shareplay.cpp b/src/core/libraries/share_play/shareplay.cpp index 32baa29be..8370438b9 100644 --- a/src/core/libraries/share_play/shareplay.cpp +++ b/src/core/libraries/share_play/shareplay.cpp @@ -14,8 +14,10 @@ int PS4_SYSV_ABI sceSharePlayCrashDaemon() { return ORBIS_OK; } -int PS4_SYSV_ABI sceSharePlayGetCurrentConnectionInfo() { - LOG_ERROR(Lib_SharePlay, "(STUBBED) called"); +int PS4_SYSV_ABI sceSharePlayGetCurrentConnectionInfo(OrbisSharePlayConnectionInfo* pInfo) { + memset(pInfo, 0, sizeof(*pInfo)); + pInfo->status = ORBIS_SHARE_PLAY_CONNECTION_STATUS_DORMANT; + LOG_DEBUG(Lib_SharePlay, "(STUBBED) called"); return ORBIS_OK; } diff --git a/src/core/libraries/share_play/shareplay.h b/src/core/libraries/share_play/shareplay.h index 648c8905c..8b1ad5f47 100644 --- a/src/core/libraries/share_play/shareplay.h +++ b/src/core/libraries/share_play/shareplay.h @@ -3,6 +3,7 @@ #pragma once +#include #include "common/types.h" namespace Core::Loader { @@ -11,8 +12,21 @@ class SymbolsResolver; namespace Libraries::SharePlay { +constexpr int ORBIS_SHARE_PLAY_CONNECTION_STATUS_DORMANT = 0x00; +constexpr int ORBIS_SHARE_PLAY_CONNECTION_STATUS_READY = 0x01; +constexpr int ORBIS_SHARE_PLAY_CONNECTION_STATUS_CONNECTED = 0x02; + +struct OrbisSharePlayConnectionInfo { + int status; + int mode; + Libraries::NpManager::OrbisNpOnlineId hostOnlineId; + Libraries::NpManager::OrbisNpOnlineId visitorOnlineId; + s32 hostUserId; + s32 visitorUserId; +}; + int PS4_SYSV_ABI sceSharePlayCrashDaemon(); -int PS4_SYSV_ABI sceSharePlayGetCurrentConnectionInfo(); +int PS4_SYSV_ABI sceSharePlayGetCurrentConnectionInfo(OrbisSharePlayConnectionInfo* pInfo); int PS4_SYSV_ABI sceSharePlayGetCurrentConnectionInfoA(); int PS4_SYSV_ABI sceSharePlayGetCurrentInfo(); int PS4_SYSV_ABI sceSharePlayGetEvent();