From 8f1de7d6225eae0119b08664608b0dd95c263c5c Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 22 Oct 2025 22:05:09 +0200 Subject: [PATCH] change non-domain (C) function to domain (D) function --- src/core/hle/service/cmif_serialization.h | 12 ++++- .../service/ldn/client_process_monitor.cpp | 7 ++- .../hle/service/ldn/client_process_monitor.h | 2 +- src/core/hle/service/ldn/ldn.cpp | 4 +- .../ldn/user_local_communication_service.cpp | 52 +++++++++---------- 5 files changed, 43 insertions(+), 34 deletions(-) diff --git a/src/core/hle/service/cmif_serialization.h b/src/core/hle/service/cmif_serialization.h index cdbf32c8ee..39f4905f67 100644 --- a/src/core/hle/service/cmif_serialization.h +++ b/src/core/hle/service/cmif_serialization.h @@ -11,6 +11,7 @@ #include "core/hle/service/cmif_types.h" #include "core/hle/service/ipc_helpers.h" #include "core/hle/service/service.h" +#include namespace Service { @@ -439,7 +440,16 @@ template void CmifReplyWrapImpl(HLERequestContext& ctx, T& t, Result (T::*f)(A...)) { // Verify domain state. if constexpr (!Domain) { - ASSERT_MSG(!ctx.GetManager()->IsDomain(), "Non-domain reply used on domain session"); + const auto _mgr = ctx.GetManager(); + const bool _is_domain = _mgr ? _mgr->IsDomain() : false; + ASSERT_MSG(!_is_domain, + "Non-domain reply used on domain session\n" + "Service={} (type={})\nTIPC={} CmdType={} Cmd=0x{:08X}\n" + "HasDomainHeader={} DomainHandlers={}\nDesc={}", + t.GetServiceName(), typeid(T).name(), ctx.IsTipc(), + static_cast(ctx.GetCommandType()), static_cast(ctx.GetCommand()), + ctx.HasDomainMessageHeader(), _mgr ? static_cast(_mgr->DomainHandlerCount()) : 0u, + ctx.Description()); } const bool is_domain = Domain ? ctx.GetManager()->IsDomain() : false; diff --git a/src/core/hle/service/ldn/client_process_monitor.cpp b/src/core/hle/service/ldn/client_process_monitor.cpp index 5278a21609..0c1963a4ca 100644 --- a/src/core/hle/service/ldn/client_process_monitor.cpp +++ b/src/core/hle/service/ldn/client_process_monitor.cpp @@ -11,16 +11,15 @@ namespace Service::LDN { IClientProcessMonitor::IClientProcessMonitor(Core::System& system_) : ServiceFramework{system_, "IClientProcessMonitor"} { static const FunctionInfo functions[] = { - {0, C<&IClientProcessMonitor::RegisterClient>, "RegisterClient"}, + {0, D<&IClientProcessMonitor::RegisterClient>, "RegisterClient"}, }; RegisterHandlers(functions); } IClientProcessMonitor::~IClientProcessMonitor() = default; -Result IClientProcessMonitor::RegisterClient(Handle process_handle, u64 pid_placeholder) { - LOG_WARNING(Service_LDN, "(STUBBED) called, process_handle={}, pid_placeholder={}", - process_handle, pid_placeholder); +Result IClientProcessMonitor::RegisterClient() { + LOG_WARNING(Service_LDN, "(STUBBED) called"); R_SUCCEED(); } diff --git a/src/core/hle/service/ldn/client_process_monitor.h b/src/core/hle/service/ldn/client_process_monitor.h index 5cd678da54..9caa337795 100644 --- a/src/core/hle/service/ldn/client_process_monitor.h +++ b/src/core/hle/service/ldn/client_process_monitor.h @@ -19,7 +19,7 @@ public: ~IClientProcessMonitor() override; private: - Result RegisterClient(Handle process_handle, u64 pid_placeholder); + Result RegisterClient(); }; } // namespace Service::LDN diff --git a/src/core/hle/service/ldn/ldn.cpp b/src/core/hle/service/ldn/ldn.cpp index 57067ee83f..c77ae2911e 100644 --- a/src/core/hle/service/ldn/ldn.cpp +++ b/src/core/hle/service/ldn/ldn.cpp @@ -74,8 +74,8 @@ public: explicit IUserServiceCreator(Core::System& system_) : ServiceFramework{system_, "ldn:u"} { // clang-format off static const FunctionInfo functions[] = { - {0, C<&IUserServiceCreator::CreateUserLocalCommunicationService>, "CreateUserLocalCommunicationService"}, - {1, C<&IUserServiceCreator::CreateClientProcessMonitor>, "CreateClientProcessMonitor"} // 18.0.0+ + {0, D<&IUserServiceCreator::CreateUserLocalCommunicationService>, "CreateUserLocalCommunicationService"}, + {1, D<&IUserServiceCreator::CreateClientProcessMonitor>, "CreateClientProcessMonitor"} // 18.0.0+ }; // clang-format on diff --git a/src/core/hle/service/ldn/user_local_communication_service.cpp b/src/core/hle/service/ldn/user_local_communication_service.cpp index b8770120a7..d6a67ed75b 100644 --- a/src/core/hle/service/ldn/user_local_communication_service.cpp +++ b/src/core/hle/service/ldn/user_local_communication_service.cpp @@ -27,35 +27,35 @@ IUserLocalCommunicationService::IUserLocalCommunicationService(Core::System& sys lan_discovery{} { // clang-format off static const FunctionInfo functions[] = { - {0, C<&IUserLocalCommunicationService::GetState>, "GetState"}, - {1, C<&IUserLocalCommunicationService::GetNetworkInfo>, "GetNetworkInfo"}, - {2, C<&IUserLocalCommunicationService::GetIpv4Address>, "GetIpv4Address"}, - {3, C<&IUserLocalCommunicationService::GetDisconnectReason>, "GetDisconnectReason"}, - {4, C<&IUserLocalCommunicationService::GetSecurityParameter>, "GetSecurityParameter"}, - {5, C<&IUserLocalCommunicationService::GetNetworkConfig>, "GetNetworkConfig"}, - {100, C<&IUserLocalCommunicationService::AttachStateChangeEvent>, "AttachStateChangeEvent"}, - {101, C<&IUserLocalCommunicationService::GetNetworkInfoLatestUpdate>, "GetNetworkInfoLatestUpdate"}, - {102, C<&IUserLocalCommunicationService::Scan>, "Scan"}, - {103, C<&IUserLocalCommunicationService::ScanPrivate>, "ScanPrivate"}, - {104, C<&IUserLocalCommunicationService::SetWirelessControllerRestriction>, "SetWirelessControllerRestriction"}, - {200, C<&IUserLocalCommunicationService::OpenAccessPoint>, "OpenAccessPoint"}, - {201, C<&IUserLocalCommunicationService::CloseAccessPoint>, "CloseAccessPoint"}, - {202, C<&IUserLocalCommunicationService::CreateNetwork>, "CreateNetwork"}, - {203, C<&IUserLocalCommunicationService::CreateNetworkPrivate>, "CreateNetworkPrivate"}, - {204, C<&IUserLocalCommunicationService::DestroyNetwork>, "DestroyNetwork"}, + {0, D<&IUserLocalCommunicationService::GetState>, "GetState"}, + {1, D<&IUserLocalCommunicationService::GetNetworkInfo>, "GetNetworkInfo"}, + {2, D<&IUserLocalCommunicationService::GetIpv4Address>, "GetIpv4Address"}, + {3, D<&IUserLocalCommunicationService::GetDisconnectReason>, "GetDisconnectReason"}, + {4, D<&IUserLocalCommunicationService::GetSecurityParameter>, "GetSecurityParameter"}, + {5, D<&IUserLocalCommunicationService::GetNetworkConfig>, "GetNetworkConfig"}, + {100, D<&IUserLocalCommunicationService::AttachStateChangeEvent>, "AttachStateChangeEvent"}, + {101, D<&IUserLocalCommunicationService::GetNetworkInfoLatestUpdate>, "GetNetworkInfoLatestUpdate"}, + {102, D<&IUserLocalCommunicationService::Scan>, "Scan"}, + {103, D<&IUserLocalCommunicationService::ScanPrivate>, "ScanPrivate"}, + {104, D<&IUserLocalCommunicationService::SetWirelessControllerRestriction>, "SetWirelessControllerRestriction"}, + {200, D<&IUserLocalCommunicationService::OpenAccessPoint>, "OpenAccessPoint"}, + {201, D<&IUserLocalCommunicationService::CloseAccessPoint>, "CloseAccessPoint"}, + {202, D<&IUserLocalCommunicationService::CreateNetwork>, "CreateNetwork"}, + {203, D<&IUserLocalCommunicationService::CreateNetworkPrivate>, "CreateNetworkPrivate"}, + {204, D<&IUserLocalCommunicationService::DestroyNetwork>, "DestroyNetwork"}, {205, nullptr, "Reject"}, - {206, C<&IUserLocalCommunicationService::SetAdvertiseData>, "SetAdvertiseData"}, - {207, C<&IUserLocalCommunicationService::SetStationAcceptPolicy>, "SetStationAcceptPolicy"}, - {208, C<&IUserLocalCommunicationService::AddAcceptFilterEntry>, "AddAcceptFilterEntry"}, + {206, D<&IUserLocalCommunicationService::SetAdvertiseData>, "SetAdvertiseData"}, + {207, D<&IUserLocalCommunicationService::SetStationAcceptPolicy>, "SetStationAcceptPolicy"}, + {208, D<&IUserLocalCommunicationService::AddAcceptFilterEntry>, "AddAcceptFilterEntry"}, {209, nullptr, "ClearAcceptFilter"}, - {300, C<&IUserLocalCommunicationService::OpenStation>, "OpenStation"}, - {301, C<&IUserLocalCommunicationService::CloseStation>, "CloseStation"}, - {302, C<&IUserLocalCommunicationService::Connect>, "Connect"}, + {300, D<&IUserLocalCommunicationService::OpenStation>, "OpenStation"}, + {301, D<&IUserLocalCommunicationService::CloseStation>, "CloseStation"}, + {302, D<&IUserLocalCommunicationService::Connect>, "Connect"}, {303, nullptr, "ConnectPrivate"}, - {304, C<&IUserLocalCommunicationService::Disconnect>, "Disconnect"}, - {400, C<&IUserLocalCommunicationService::Initialize>, "Initialize"}, - {401, C<&IUserLocalCommunicationService::Finalize>, "Finalize"}, - {402, C<&IUserLocalCommunicationService::Initialize2>, "Initialize2"}, + {304, D<&IUserLocalCommunicationService::Disconnect>, "Disconnect"}, + {400, D<&IUserLocalCommunicationService::Initialize>, "Initialize"}, + {401, D<&IUserLocalCommunicationService::Finalize>, "Finalize"}, + {402, D<&IUserLocalCommunicationService::Initialize2>, "Initialize2"}, }; // clang-format on