mirror of
https://github.com/tgstation/tgstation-server.git
synced 2026-08-23 13:07:07 +01:00
Nullify DMApiParameters
This commit is contained in:
@@ -510,6 +510,13 @@ namespace Tgstation.Server.Host.Components
|
||||
{
|
||||
ArgumentNullException.ThrowIfNull(parameters);
|
||||
|
||||
var accessIdentifier = parameters.AccessIdentifier;
|
||||
if (accessIdentifier == null)
|
||||
{
|
||||
logger.LogWarning("Received invalid bridge request with null access identifier!");
|
||||
return null;
|
||||
}
|
||||
|
||||
IBridgeHandler? bridgeHandler = null;
|
||||
for (var i = 0; bridgeHandler == null && i < 30; ++i)
|
||||
{
|
||||
@@ -517,7 +524,7 @@ namespace Tgstation.Server.Host.Components
|
||||
// This is a stopgap
|
||||
Task delayTask = Task.CompletedTask;
|
||||
lock (bridgeHandlers)
|
||||
if (!bridgeHandlers.TryGetValue(parameters.AccessIdentifier, out bridgeHandler))
|
||||
if (!bridgeHandlers.TryGetValue(accessIdentifier, out bridgeHandler))
|
||||
delayTask = asyncDelayer.Delay(TimeSpan.FromMilliseconds(100), cancellationToken);
|
||||
|
||||
await delayTask;
|
||||
@@ -525,9 +532,9 @@ namespace Tgstation.Server.Host.Components
|
||||
|
||||
if (bridgeHandler == null)
|
||||
lock (bridgeHandlers)
|
||||
if (!bridgeHandlers.TryGetValue(parameters.AccessIdentifier, out bridgeHandler))
|
||||
if (!bridgeHandlers.TryGetValue(accessIdentifier, out bridgeHandler))
|
||||
{
|
||||
logger.LogWarning("Received invalid bridge request with access identifier: {accessIdentifier}", parameters.AccessIdentifier);
|
||||
logger.LogWarning("Received invalid bridge request with access identifier: {accessIdentifier}", accessIdentifier);
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -540,6 +547,9 @@ namespace Tgstation.Server.Host.Components
|
||||
ArgumentNullException.ThrowIfNull(bridgeHandler);
|
||||
|
||||
var accessIdentifier = bridgeHandler.DMApiParameters.AccessIdentifier;
|
||||
if (accessIdentifier == null)
|
||||
throw new InvalidOperationException("Attempted bridge registration with null AccessIdentifier!");
|
||||
|
||||
lock (bridgeHandlers)
|
||||
{
|
||||
bridgeHandlers.Add(accessIdentifier, bridgeHandler);
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Tgstation.Server.Host.Components.Interop
|
||||
{
|
||||
/// <summary>
|
||||
@@ -13,6 +11,6 @@ namespace Tgstation.Server.Host.Components.Interop
|
||||
/// Used to identify and authenticate the DreamDaemon instance.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string AccessIdentifier { get; set; }
|
||||
public string? AccessIdentifier { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user