Fix ~3500 analyser issues

See merge request ryubing/ryujinx!44
This commit is contained in:
MrKev
2025-05-30 17:08:34 -05:00
committed by LotP
parent 417df486b1
commit 361d0c5632
622 changed files with 3080 additions and 2652 deletions

View File

@@ -175,7 +175,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
// NOTE: Return ResultCode.InvalidArgument if ip_address and subnet_mask are null, doesn't occur in our case.
if (_state == NetworkState.AccessPointCreated || _state == NetworkState.StationConnected)
if (_state is NetworkState.AccessPointCreated or NetworkState.StationConnected)
{
ProxyConfig config = _state switch
{
@@ -522,7 +522,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
return _nifmResultCode;
}
if (_state == NetworkState.AccessPoint || _state == NetworkState.AccessPointCreated)
if (_state is NetworkState.AccessPoint or NetworkState.AccessPointCreated)
{
DestroyNetworkImpl(DisconnectReason.DestroyedByUser);
}
@@ -698,12 +698,12 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
return _nifmResultCode;
}
if (bufferSize == 0 || bufferSize > LdnConst.AdvertiseDataSizeMax)
if (bufferSize is 0 or > LdnConst.AdvertiseDataSizeMax)
{
return ResultCode.InvalidArgument;
}
if (_state == NetworkState.AccessPoint || _state == NetworkState.AccessPointCreated)
if (_state is NetworkState.AccessPoint or NetworkState.AccessPointCreated)
{
byte[] advertiseData = new byte[bufferSize];
@@ -733,7 +733,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
return ResultCode.InvalidArgument;
}
if (_state == NetworkState.AccessPoint || _state == NetworkState.AccessPointCreated)
if (_state is NetworkState.AccessPoint or NetworkState.AccessPointCreated)
{
return _accessPoint.SetStationAcceptPolicy(acceptPolicy);
}
@@ -807,7 +807,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
return _nifmResultCode;
}
if (_state == NetworkState.Station || _state == NetworkState.StationConnected)
if (_state is NetworkState.Station or NetworkState.StationConnected)
{
DisconnectImpl(DisconnectReason.DisconnectedByUser);
}
@@ -1089,13 +1089,14 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
case MultiplayerMode.LdnRyu:
try
{
string ldnServer = context.Device.Configuration.MultiplayerLdnServer
string ldnServer = context.Device.Configuration.MultiplayerLdnServer
?? throw new InvalidOperationException("Cannot initialize RyuLDN with a null Multiplayer server.");
if (!IPAddress.TryParse(ldnServer, out IPAddress ipAddress))
{
ipAddress = Dns.GetHostEntry(ldnServer).AddressList[0];
}
NetworkClient = new LdnMasterProxyClient(ipAddress.ToString(), SharedConstants.LanPlayPort, context.Device.Configuration);
}
catch (Exception ex)
@@ -1104,6 +1105,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator
Logger.Error?.Print(LogClass.ServiceLdn, ex.Message);
NetworkClient = new LdnDisabledClient();
}
break;
case MultiplayerMode.LdnMitm:
NetworkClient = new LdnMitmClient(context.Device.Configuration);

View File

@@ -59,6 +59,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnMitm
{
Scan?.Invoke(endPoint, LanPacketType.ScanResponse, SpanHelpers.AsSpan<NetworkInfo, byte>(ref _discovery.NetworkInfo).ToArray());
}
break;
case LanPacketType.ScanResponse:
// UDP

View File

@@ -179,8 +179,6 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnRyu
_error.Set();
}
private void HandleInitialize(LdnHeader header, InitializeMessage initialize)
{
InitializeMemory = initialize;

View File

@@ -47,6 +47,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnRyu.Proxy
{
Logger.Error?.PrintMsg(LogClass.ServiceLdn, "Tcp proxy networking is untested. Please report this game so that it can be tested.");
}
return domain == AddressFamily.InterNetwork && (protocol == ProtocolType.Tcp || protocol == ProtocolType.Udp);
}

View File

@@ -115,7 +115,6 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnRyu.Proxy
return _receiveQueue.Count > 0;
}
}
}
}
public bool Writable => Connected || ProtocolType == ProtocolType.Udp;
@@ -256,6 +255,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnRyu.Proxy
{
_proxy.ReturnEphemeralPort(ProtocolType, (ushort)((IPEndPoint)LocalEndPoint).Port);
}
IPEndPoint asIPEndpoint = (IPEndPoint)localEP;
if (asIPEndpoint.Port == 0)
{

View File

@@ -156,7 +156,7 @@ namespace Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator.LdnRyu.Proxy
if (_publicPort != 0)
{
_ = Executor.ExecuteAfterDelayAsync(
PortLeaseRenew.Seconds(),
PortLeaseRenew.Seconds(),
_disposedCancellation.Token,
RefreshLease);
}