- شحنت
- 8 نوفمبر 2026 في 12:41 ص UTC
- المؤلف
- Kamo
- الالتزام
- 0775720
Replaces the in-service clamd client (malware/ package, UploadScanGuard, QuarantineStore, retro-scan) with the shared-library Antivirus: - /upload, /replace, /templates/upload are checked inside ImageService before any row or object is written (HOLD allowed); refusals use the platform shapes: 422 ANTIVIRUS_BLOCKED {family}, 503 ANTIVIRUS_UNAVAILABLE, 503 HASH_MISMATCH. MALWARE_DETECTED is gone and no signature name is ever returned. Responses carry scan {status, family, outcome}; a held file is PENDING and converts once stored. The pipeline emits a 'scanning' stage. - /register-existing (dedup by reference) refuses content Antivirus locked (422). - Sound effects (raw MinIO) go through AntivirusUploadGuard (no hold, 503 when down). - QuarantineStore no longer exists, so nothing is written to the quarantine bucket; nothing in it is touched. - antivirus.hold.verdict (queue antivirus-hold-completer) -> AntivirusHoldCompleter, then the ordinary conversion for the released documents; a storage failure naks for redelivery. - antivirus.signatures.promoted (queue antivirus-recheck) -> AntivirusRecheckService: every flagged hash whose bytes are stored (unlock + notify + AUTO_CLEARED reports) and CLEAN content first seen in the last 14 days (LOCKED_LATER + alerts), streamed from MinIO, one at a time, throttled. Subscribes retry until the ANTIVIRUS stream exists. - ConfigMap: kamo.antivirus.* (enabled: false until KamoAntivirus is Ready); ANTIVIRUS_INTERNAL_AUTH_SECRET from mlos-internal-auth.
