using System; using System.IO; using System.Text.RegularExpressions; using MalwareMultiScan.Backends.Backends.Abstracts; using Microsoft.Extensions.Logging; namespace MalwareMultiScan.Backends.Backends.Implementations { public class ComodoScanBackend : AbstractLocalProcessScanBackend { public ComodoScanBackend(ILogger logger) : base(logger) { } public override string Id { get; } = "comodo"; public override DateTime DatabaseLastUpdate => File.GetLastWriteTime("/opt/COMODO/scanners/bases.cav"); protected override string BackendPath { get; } = "/opt/COMODO/cmdscan"; protected override Regex MatchRegex { get; } = new Regex(@".* ---> Found Virus, Malware Name is (?.*)", RegexOptions.Compiled | RegexOptions.Multiline); protected override string GetBackendArguments(string path) { return $"-v -s {path}"; } } }