Manuel:$wgAntivirusSetup

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:$wgAntivirusSetup and the translation is 17% complete.

Other languages:
English • ‎dansk • ‎français • ‎magyar • ‎polski • ‎中文 • ‎日本語
Antivirus: $wgAntivirusSetup
Configuration for different virus scanners.
Introduit dans la version :1.5.0
Retiré dans la version :Encore utilisé
Valeurs autorisées :Non renseigné
Valeur par défaut :(see below)

Details

Configuration for different virus scanners. This is an associative array of associative arrays: it contains one setup array per known scanner type. The entry is selected by $wgAntivirus, i.e. valid values for $wgAntivirus are the keys defined in this array. The antivirus functions may not work on Windows in MediaWiki versions before 1.16.0.

The configuration array for each scanner contains the following keys: command, codemap, messagepattern;

command
The full command to call the virus scanner - %f will be replaced with the name of the file to scan. If not present, the filename will be appended to the command.
Note that this must be overwritten if the scanner is not in the system path; in that case, you should set $wgAntivirusSetup[$wgAntivirus]['command'] to the desired command with full path. (This line should appear after the line that sets $wgAntivirus.)
codemap 
A mapping of exit code to return codes of the detectVirus() function in "SpecialUpload.php".
  • An exit code mapped to AV_SCAN_FAILED causes the function to consider the scan to be failed. This will pass the file if $wgAntivirusRequired is not set.
  • An exit code mapped to AV_SCAN_ABORTED causes the function to consider the file to have an usupported format, which is probably immune to viruses. This causes the file to pass.
  • An exit code mapped to AV_NO_VIRUS will cause the file to pass, meaning no virus was found.
  • All other codes (like AV_VIRUS_FOUND) will cause the function to report a virus.
You may use "*" as a key in the array to catch all exit codes not mapped otherwise.
messagepattern 
A Perl regular expression to extract the meaningful part of the scanner's output. The relevant part should be matched as group one (\1).
If not defined or the pattern does not match, the full message is shown to the user.

Default value

$wgAntivirusSetup = array(
    'clamav' => array(
        'command' => "clamscan --no-summary",
        'codemap' => array(
            "0" => AV_NO_VIRUS, # no virus
            "1" => AV_VIRUS_FOUND, # virus found
            "52" => AV_SCAN_ABORTED, # unsupported file format (probably immune)
            "*" => AV_SCAN_FAILED, # else scan failed
            ),
        'messagepattern' => '/.*?:(.*)/sim',
        ),
    );

See also