We have released a new version focused on performance and stability.
Important change that will affect every add-on:
All of our add-ons are now using Core Library in order to maintain shared helpers and utilities across add-ons for easier maintenance and to keep add-ons cleaner. Core Library also covers our branding for all add-ons in one switch without having to turn it off in every add-on.
This update will require Core Library 1.0.2.
Changes
- Release and delete in the quarantine list now act on the whole file. A file flagged by more than one engine, or rescanned while quarantined, is fully restored or removed in one step, with one alert to the uploader.
- Release and delete, in the admin area and the API, only work on records that are actually quarantined. A file still being scanned can no longer be released early.
- VirusTotal now treats a "suspicious" result as a detection. A file that no VirusTotal engine was able to analyse is reported as an error instead of clean.
- Archives that go over the ClamAV scan limits (size, file count or nesting depth) are now reported as an error instead of clean. The archive limits option text now matches this behaviour.
- A clean ClamAV result is reused for at most one day, so newly published signatures are applied to files that were uploaded earlier. Infected results and VirusTotal results keep the full cache period.
- Thumbnails of files that are quarantined or still being scanned are replaced with a shield icon for anyone who cannot view the file.
- Resource Manager downloads, on the site and through the API, now respect scan results like attachments do.
- Resetting a repeat offender now keeps their record and only counts new hits after the reset, so the next single hit no longer re-applies the ban straight away.
- Repeat-offender counts are now per file instead of per scan. Rescans, multiple engines flagging the same file, and files a moderator released no longer count against the uploader.
- Asynchronous engines are queued instead of being run inline, and the output shows when a result came from the cache.
Performance
- The VirusTotal health check uses the free quota endpoint, so loading the overview or running the hourly health check no longer uses your scan allowance.
- Engine status checks connect to each engine once instead of twice.
- clamd receives files in larger chunks.
- Avatar, banner and other image uploads reuse a cached VirusTotal result instead of asking VirusTotal every time.
- Background rescans of the whole board use fewer database queries.
- The retro-scan progress display no longer re-counts every attachment every two seconds while a scan is running.
- Forums saved with the "inherit" setting no longer make every background scan look up forum policies.
- Upload checks no longer prepare the scanner when the upload type is not being scanned or the user is exempt.
Bugs fixed
- A release that failed partway could leave a quarantined file's thumbnails publicly visible. Thumbnails are now only restored once the file itself is back.
- Releasing a file after it had been rescanned marked it clean while it was still in the vault, so downloads failed and the file came back in the queue.
- A temporary storage error during uninstall could permanently delete quarantined files. The vault is now only removed once every file has been restored, and files whose only vaulted copies are thumbnails are restored too.
- A file could be recorded as moved into the vault while its public copy was still there.
- Deleting a quarantined file no longer discards the stored copy before the attachment itself is removed.
- The retry task could get stuck on files that had used up their retries and never retry newer files again.
- Files excluded by the extension or size filters are no longer retried every run.
- A clean result from one engine no longer clears a file that another engine is still checking or failed to check.
- An engine error no longer turns a clean file back into an error.
- Two engines detecting the same file at the same time no longer quarantine it twice or send duplicate alerts.
- The admin notification digest now only lists newly caught threats, not rescans of files that were already quarantined.
- Re-encoding images (the attachment optimisation rebuild, media gallery watermarks and image editing) no longer sends clean files back for scanning or re-notifies about quarantined ones.
- Files the upload check deliberately skipped (exempt users, forums with scanning turned off, excluded file types) are no longer scanned anyway by the unscanned-upload guard.
- Opening an attachment no longer queues a scan before checking that the visitor may view it. Failed scans are no longer re-queued on every view, and the retry limit is respected.
- With "Block downloads of unscanned files" enabled, media gallery items whose scan failed are now hidden like attachments.
- On boards with the media gallery installed, quarantined images in attachment lists now open the scan report instead of the file.
- Filtering the quarantine list by engine or searching by signature now finds files flagged by more than one engine.
- Verdict counts on the overview now open the log filtered to the same 30-day period.
- The delete button in the quarantine list only shows to administrators who are allowed to delete.
- Engines that are no longer installed show their name instead of a phrase name in the scan log, report and approval queue.
- Record pruning no longer deletes released or still-vaulted records, or the error history the retry task relies on.
- The retro-scan progress display stops polling after repeated errors instead of retrying forever.
- clamscan no longer causes a fatal error when the host has disabled process functions, and a hung scan is stopped after two minutes.
- A large file rejected by clamd no longer fills the error log.
- At VirusTotal's per-minute limit, VirusTotal is no longer shown as offline and no longer triggers a false health alert.
- Engine error messages, health warnings, self-test messages and command output can now be translated.
- Quarantine alerts no longer store the detection signature.
We have released a new maintenance update that fixes a critical issue with XenForo 2.3.13. Please update to the latest version before upgrading.
- XenForo 2.3.13 introduces new security measures that caused a fatal error regarding our shared copyright footer.
We use essential cookies to make this site work, and optional cookies to enhance your experience.