This one time, at band camp, Damir R. Islamov said: > Seems I found the reason: > > debconf genarates wrong /etc/clamav/freshclam.conf file in case of upgrade. > Here is explanation: > > If 'old' /etc/clamav/freshclam.conf file is installed debconf gets 'old' > value, i.e. 'true' and puts in in newer generated file:
[snip]
> ++ grep '^NotifyClamd' /etc/clamav/freshclam.conf
> ++ head -n1
> ++ awk '{print $2}'
> + value=true
> + '[' -z true ']'
> + '[' true '!=' NotifyClamd ']'
> + export NotifyClamd=true
> + NotifyClamd=true
[snip]
> + echo 'NotifyClamd true'
[snip]
> Starting database update:
> + /etc/init.d/clamav-freshclam no-daemon
> ClamAV update process started at Fri Feb 16 08:30:51 2007
> main.cvd is up to date (version: 42, sigs: 83951, f-level: 10, builder: tkojm)
> daily.inc is up to date (version: 2579, sigs: 7877, f-level: 13, builder:
> ccordes)
> WARNING: Current functionality level = 12, recommended = 13
> Please check if ClamAV tools are linked against proper version of libclamav
> DON'T PANIC! Read http://www.clamav.net/faq.html
> + update-rc.d -f clamav-freshclam remove
> + exit 0
It's clear that it's doing the wrong thing, but oddly, that doesn't seem
to stop it from working here. How is that possible?
> If I manually change /etc/clamav/freshclam.conf file from
> NotifyClamd true
> to
> NotifyClamd /etc/clamav/clamd.conf
[snip]
> ++ grep '^NotifyClamd' /etc/clamav/freshclam.conf
> ++ head -n1
> ++ awk '{print $2}'
> + value=/etc/clamav/clamd.conf
[snip]
> + echo 'NotifyClamd /etc/clamav/clamd.conf'
[snip]
> If I remove /etc/clamav/freshclam.conf (modelling fresh installation)
> debconf makes correct file:
> + db_metaget clamav-freshclam/NotifyClamd value
> + _db_cmd 'METAGET clamav-freshclam/NotifyClamd' value
> + IFS=' '
> + printf '%s\n' 'METAGET clamav-freshclam/NotifyClamd value'
> + IFS='
> '
> + read -r _db_internal_line
> + RET=true
> + case ${_db_internal_line%%[ ]*} in
> + return 0
> + '[' true = true ']'
> + notify=/etc/clamav/clamd.conf
[snip]
> + echo NotifyClamd
[snip]
> Starting database update:
> + /etc/init.d/clamav-freshclam no-daemon
> ERROR: Parse error at line 19: Option NotifyClamd requires string argument.
> WARNING: You must specify at least one database mirror.
> + update-rc.d -f clamav-freshclam remove
> + exit 0
And yet this one produces an error. Did you mix up output when you sent
this? I am very confused by what I'm seeing, although I do see the bug
besides that.
--
-----------------------------------------------------------------
| ,''`. Stephen Gran |
| : :' : [EMAIL PROTECTED] |
| `. `' Debian user, admin, and developer |
| `- http://www.debian.org |
-----------------------------------------------------------------
signature.asc
Description: Digital signature

