14 require_once
"./Services/VirusScanner/classes/class.ilVirusScanner.php";
26 $this->type =
"sophos";
27 $this->scanZipFiles =
true;
38 function scanFile($a_filepath, $a_origname =
"")
50 $this->scanFilePath = $a_filepath;
51 $this->scanFileOrigName = $a_origname;
55 $cmd = $this->scanCommand .
" " . $a_filepath.
" 2>&1";
57 $this->scanResult = implode(
"\n",
$out);
62 if (ereg(
"FILE INFECTED", $this->scanResult))
64 $this->scanFileIsInfected =
true;
70 $this->scanFileIsInfected =
false;
76 $this->log->write(
"ERROR (Virus Scanner failed): "
78 .
"; COMMAMD=" .
$cmd);
84 $cmd = $this->cleanCommand .
" -ss -archive " . $a_filepath .
" 2>&1";
86 $this->scanResult = implode(
"\n",
$out).
" [".
$ret.
"]";
95 $this->scanFileIsCleaned =
false;
100 $this->scanFileIsInfected =
true;
106 $this->ilias->raiseError($this->lng->txt(
"virus_scan_error").
" "
107 . $this->lng->txt(
"virus_scan_message").
" "
109 $this->ilias->error_obj->WARNING);
133 $this->cleanFilePath = $a_filepath;
134 $this->cleanFileOrigName = $a_origname;
143 $cmd = $this->cleanCommand .
" -di -nc -ss -eec -archive " . $a_filepath .
" 2>&1";
145 $this->cleanResult = implode(
"\n",
$out).
" [".
$ret.
"]";
163 $this->cleanFileIsCleaned =
true;
168 $this->cleanFileIsCleaned =
false;