|
|
@ -104,7 +104,7 @@ public:
|
|
|
|
: ServiceFramework{system_, "IUserLocalCommunicationService"} {
|
|
|
|
: ServiceFramework{system_, "IUserLocalCommunicationService"} {
|
|
|
|
// clang-format off
|
|
|
|
// clang-format off
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
{0, nullptr, "GetState"},
|
|
|
|
{0, &IUserLocalCommunicationService::GetState, "GetState"},
|
|
|
|
{1, nullptr, "GetNetworkInfo"},
|
|
|
|
{1, nullptr, "GetNetworkInfo"},
|
|
|
|
{2, nullptr, "GetIpv4Address"},
|
|
|
|
{2, nullptr, "GetIpv4Address"},
|
|
|
|
{3, nullptr, "GetDisconnectReason"},
|
|
|
|
{3, nullptr, "GetDisconnectReason"},
|
|
|
@ -139,14 +139,38 @@ public:
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void Initialize2(Kernel::HLERequestContext& ctx) {
|
|
|
|
void GetState(Kernel::HLERequestContext& ctx) {
|
|
|
|
LOG_WARNING(Service_LDN, "(STUBBED) called");
|
|
|
|
LOG_WARNING(Service_LDN, "(STUBBED) called");
|
|
|
|
|
|
|
|
|
|
|
|
// Return the disabled error to indicate that LDN is currently unavailable, otherwise games
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3};
|
|
|
|
// will continue to try to make a connection.
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2};
|
|
|
|
// Indicate a network error, as we do not actually emulate LDN
|
|
|
|
rb.Push(ERROR_DISABLED);
|
|
|
|
rb.Push(static_cast<u32>(State::Error));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rb.Push(RESULT_SUCCESS);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void Initialize2(Kernel::HLERequestContext& ctx) {
|
|
|
|
|
|
|
|
LOG_DEBUG(Service_LDN, "called");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
is_initialized = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2};
|
|
|
|
|
|
|
|
rb.Push(RESULT_SUCCESS);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
enum class State {
|
|
|
|
|
|
|
|
None,
|
|
|
|
|
|
|
|
Initialized,
|
|
|
|
|
|
|
|
AccessPointOpened,
|
|
|
|
|
|
|
|
AccessPointCreated,
|
|
|
|
|
|
|
|
StationOpened,
|
|
|
|
|
|
|
|
StationConnected,
|
|
|
|
|
|
|
|
Error,
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool is_initialized{};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class LDNS final : public ServiceFramework<LDNS> {
|
|
|
|
class LDNS final : public ServiceFramework<LDNS> {
|
|
|
|