Files
tiku-backend.net/Tiku.Application/Assets/IAssetSecurityScanner.cs
xiong c497a3ca8d
Some checks failed
ci / release-gate (push) Has been cancelled
清理代码
2026-08-03 12:31:39 +08:00

30 lines
756 B
C#

namespace Tiku.Application.Assets;
public enum AssetSecurityScanVerdict
{
Clean,
Infected
}
public sealed record AssetSecurityScanResult(
AssetSecurityScanVerdict Verdict,
string Provider,
string? Signature,
long BytesScanned,
string RawResponse);
public interface IAssetSecurityScanner
{
Task<AssetSecurityScanResult> ScanAsync(
Stream content,
long? declaredLength,
CancellationToken cancellationToken = default);
Task<bool> CheckHealthAsync(CancellationToken cancellationToken = default);
}
public sealed class AssetSecurityScannerException(string code, string message, Exception? innerException = null)
: Exception(message, innerException)
{
public string Code { get; } = code;
}