1a954b2a59
Completely removes all usages of the global system instance within the services code by passing in the using system instance to the services.
52 lines
1.8 KiB
C++
52 lines
1.8 KiB
C++
// Copyright 2018 yuzu emulator team
|
|
// Licensed under GPLv2 or any later version
|
|
// Refer to the license.txt file included.
|
|
|
|
#include "core/hle/ipc_helpers.h"
|
|
#include "core/hle/service/sockets/sfdnsres.h"
|
|
|
|
namespace Service::Sockets {
|
|
|
|
SFDNSRES::SFDNSRES(Core::System& system_) : ServiceFramework{system_, "sfdnsres"} {
|
|
static const FunctionInfo functions[] = {
|
|
{0, nullptr, "SetDnsAddressesPrivate"},
|
|
{1, nullptr, "GetDnsAddressPrivate"},
|
|
{2, nullptr, "GetHostByNameRequest"},
|
|
{3, nullptr, "GetHostByAddrRequest"},
|
|
{4, nullptr, "GetHostStringErrorRequest"},
|
|
{5, nullptr, "GetGaiStringErrorRequest"},
|
|
{6, &SFDNSRES::GetAddrInfoRequest, "GetAddrInfoRequest"},
|
|
{7, nullptr, "GetNameInfoRequest"},
|
|
{8, nullptr, "RequestCancelHandleRequest"},
|
|
{9, nullptr, "CancelRequest"},
|
|
{10, nullptr, "GetHostByNameRequestWithOptions"},
|
|
{11, nullptr, "GetHostByAddrRequestWithOptions"},
|
|
{12, nullptr, "GetAddrInfoRequestWithOptions"},
|
|
{13, nullptr, "GetNameInfoRequestWithOptions"},
|
|
{14, nullptr, "ResolverSetOptionRequest"},
|
|
{15, nullptr, "ResolverGetOptionRequest"},
|
|
};
|
|
RegisterHandlers(functions);
|
|
}
|
|
|
|
SFDNSRES::~SFDNSRES() = default;
|
|
|
|
void SFDNSRES::GetAddrInfoRequest(Kernel::HLERequestContext& ctx) {
|
|
struct Parameters {
|
|
u8 use_nsd_resolve;
|
|
u32 unknown;
|
|
u64 process_id;
|
|
};
|
|
|
|
IPC::RequestParser rp{ctx};
|
|
const auto parameters = rp.PopRaw<Parameters>();
|
|
|
|
LOG_WARNING(Service,
|
|
"(STUBBED) called. use_nsd_resolve={}, unknown=0x{:08X}, process_id=0x{:016X}",
|
|
parameters.use_nsd_resolve, parameters.unknown, parameters.process_id);
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2};
|
|
rb.Push(RESULT_SUCCESS);
|
|
}
|
|
|
|
} // namespace Service::Sockets
|