hle: service: ldn: IUserLocalCommunicationService: Improve the stub.
This commit is contained in:
parent
51c13606d6
commit
d9a8060ce3
|
@ -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> {
|
||||||
|
|
Reference in New Issue