mirror of
https://github.com/Cisco-Talos/clamav.git
synced 2026-01-21 13:18:32 -05:00
Improvements to the ex_scan_callbacks.c program: - Print the verdict enum variant names to be more explicit. - Add the file_props callback (aka metadata JSON) with --gen-json option. - Add a --debug option. - Use '-' in option names instead of '_' to be consistent with other programs. - Add option to disable allmatch, which I named --one-match. :) Tests: Add ex_scan_callbacks test where --allmatch is disabled. Verify that CL_VIRUS is returned when a match occurs. I found a few bugs and inconsistencies from this test and went and fixed them, and improved the clamav.h function comments as well. Largely this resulted in cleanup in `cli_magic_scan()` to make sure we don't accidentally overwrite the return code. But it also meant making sure that callback functions which are supposed to trust a file actually clear the evidence/verdict and don't return CL_VIRUS.