using Microsoft.Extensions.Logging;
namespace SVSim.EmulatedEntrypoint.Services;
///
/// Development-only that accepts every ticket without contacting
/// Steam. Selected in Program.cs when Auth:BypassSteamTicket is true, so clients
/// with a synthetic (non-Steam) identity — e.g. a second instance on the same machine for the
/// two-client PvP smoke — can authenticate. NEVER select this outside local dev: it turns the
/// Steam ticket gate into a no-op for the whole process.
///
public sealed class DevAlwaysValidSteamServer : ISteamServer
{
private readonly ILogger _logger;
public DevAlwaysValidSteamServer(ILogger logger) => _logger = logger;
public void Initialize(int appId) { }
public bool BeginAuthSession(byte[] ticket, ulong steamId)
{
_logger.LogWarning(
"DEV Steam bypass: accepting ticket for steamId {SteamId} WITHOUT validation (ticketLen={Len}).",
steamId, ticket.Length);
return true;
}
public void EndSession(ulong steamId) { }
public void Shutdown() { }
}