This applies to:
In the process of applying routine updates to the OES SP2 system (using zlm) ClamAV 0.87 was unexpectedly updated to 0.90 (there are quite a few security fixes included so on the face of it this is a good thing)
..However..
The new version won't load as it complains about config file options being specified incorrectly.
The problem manifests itself as the following messages from rug (zlm) during the patch process:
Transaction failed: Unable to complete RPM transaction: /etc/clamav.conf
saved as /etc/clamav.conf.rpmsave
After patching, ClamAV fails to start with the following error:
Starting Clam AntiVirus daemon ERROR: Parse error at line 30: Option LogTime requires boolean argument.
ERROR: Can't open/parse the config file /etc/clamd.conf
startproc: exit status of parent of /usr/sbin/clamd: 1
The new version has slightly different config file requirements. Essentially the major change is that if an option is specified it MUST have an argument specified..
i.e previously this would have been ok:
# This option specifies the log events - default is true
LogEvents
but now you must have:
# This option specifies the log events - default is true
LogEvents true
There is a conversion script included with 0.90 (see README for details)
The user is encouraged to review the updated syntax after using the conversion tool.
Only workaround is to edit the /etc/clamd.conf by hand, e.g as follows:
Line 30: LogTime true
Line 39: LogSyslog true
Line 72: FixStaleSocket true
Line 152: Foreground true
Line 284: ClamukoScanOnAccess true
Line 288: ClamukoScanOnOpen true
Or as appropriate.
THE INFORMATION IN THIS DOCUMENT IS PROVIDED ON AN AS-IS BASIS WITHOUT WARRANTY OF ANY KIND. PROVIDER SPECIFICALLY DISCLAIMS ANY OTHER WARRANTY, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL PROVIDER BE LIABLE FOR ANY CONSEQUENTIAL, INDIRECT, SPECIAL OR INCIDENTAL DAMAGES, EVEN IF PROVIDER HAS BEEN ADVISED BY USER OF THE POSSIBILITY OF SUCH POTENTIAL LOSS OR DAMAGE. USER AGREES TO HOLD PROVIDER HARMLESS FROM AND AGAINST ANY AND ALL CLAIMS, LOSSES, LIABILITIES AND EXPENSES.