Write data properly

This commit is contained in:
Isaac Marovitz 2024-03-02 18:16:40 +00:00
parent 7b399493d6
commit 5148010c1e
No known key found for this signature in database
GPG key ID: 97250B2B09A132E1

View file

@ -166,6 +166,13 @@ namespace Ryujinx.HLE.HOS.Services.Sockets.Sfdnsres
return GetAddrInfoRequestImpl(context, responseBufferPosition, responseBufferSize, false, 0, 0); return GetAddrInfoRequestImpl(context, responseBufferPosition, responseBufferSize, false, 0, 0);
} }
[CommandCmif(7)]
// GetNameInfoRequest
public ResultCode GetNameInfoRequest(ServiceCtx context)
{
return GetNameInfoRequestImpl(context, false);
}
[CommandCmif(8)] [CommandCmif(8)]
// GetCancelHandleRequest(u64, pid) -> u32 // GetCancelHandleRequest(u64, pid) -> u32
public ResultCode GetCancelHandleRequest(ServiceCtx context) public ResultCode GetCancelHandleRequest(ServiceCtx context)
@ -247,9 +254,7 @@ namespace Ryujinx.HLE.HOS.Services.Sockets.Sfdnsres
[CommandCmif(13)] [CommandCmif(13)]
public ResultCode GetNameInfoRequestWithOptions(ServiceCtx context) public ResultCode GetNameInfoRequestWithOptions(ServiceCtx context)
{ {
Logger.Stub?.PrintStub(LogClass.ServiceSfdnsres); return GetNameInfoRequestImpl(context, true);
return ResultCode.Success;
} }
[CommandCmif(14)] // 5.0.0+ [CommandCmif(14)] // 5.0.0+
@ -668,6 +673,26 @@ namespace Ryujinx.HLE.HOS.Services.Sockets.Sfdnsres
return region.Memory.Span.Length - data.Length; return region.Memory.Span.Length - data.Length;
} }
private static ResultCode GetNameInfoRequestImpl(
ServiceCtx context,
bool withOptions)
{
if (!context.Device.Configuration.EnableInternetAccess)
{
Logger.Info?.Print(LogClass.ServiceSfdnsres, "Guest network access disabled, DNS Blocked.");
WriteResponse(context, withOptions, 0, GaiError.NoData, NetDbError.NoAddress);
return ResultCode.Success;
}
Logger.Info?.PrintStub(LogClass.ServiceSfdnsres);
WriteResponse(context, withOptions, 0, GaiError.NoData, NetDbError.NoAddress);
return ResultCode.Success;
}
private static void WriteResponse( private static void WriteResponse(
ServiceCtx context, ServiceCtx context,
bool withOptions, bool withOptions,