ports/115353: clamav-milter does not start up when clamd listens TCP socket
Alexander Shikoff
minotaur at crete.org.ua
Thu Aug 9 14:50:01 UTC 2007
>Number: 115353
>Category: ports
>Synopsis: clamav-milter does not start up when clamd listens TCP socket
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Aug 09 14:50:00 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Alexander Shikoff
>Release: RELENG_6
>Organization:
>Environment:
FreeBSD typhoon.task.com.ua 6.2-STABLE FreeBSD 6.2-STABLE #2: Thu Jul 19 13:39:09 EEST 2007 root at typhoon.task.com.ua:/usr/obj/usr/src/sys/TYPHOON i386
# clamd -V
ClamAV 0.91.1/3906/Thu Aug 9 15:52:45 2007
>Description:
If clamd configured to use only TCP socket then clamav-milter rc.d script does not start clamav-milter. -S test in rc.d-script fails because there is no clamd UNIX-socket.
>How-To-Repeat:
1. Disable LocalSocket and enable "TCPSocket 3310" and "TCPAddr 127.0.0.1" in clamd.conf.
2. Add following lines to rc.conf:
clamav_freshclam_enable="YES"
clamav_clamd_enable=YES
clamav_milter_enable="YES"
clamav_milter_socktimeout=2
clamav_milter_socket="/var/run/clamav/milter.sock"
clamav_milter_flags=" --dont-scan-on-error \
--force-scan \
--blacklist-time=60 \
--quiet \
--max-children=16 \
--timeout=30 \
--external \
--server=localhost"
3. Start clamd with "/usr/local/etc/rc.d/clamav-clamd start" command.
4. Try to start clamav-milter. You should get the following error:
# /usr/local/etc/rc.d/clamav-milter start
Waiting for clamd socket..
There is no clamd socket (/var/run/clamav/clamd)!
>Fix:
Apply attached patch to clamav-milter rc.d-script, set clamav_clamd_socket variable to empty string in rc.conf to disable checks of local clamd UNIX-socket.
Patch attached with submission follows:
--- clamav-milter.orig 2007-08-09 17:15:27.000000000 +0300
+++ clamav-milter 2007-08-09 17:23:11.000000000 +0300
@@ -37,21 +37,23 @@
rc_flags="--pidfile ${pidfile} ${flags:-$clamav_milter_flags} $clamav_milter_socket"
if checkyesno clamav_clamd_enable; then
- echo -n "Waiting for clamd socket.. "
- i=${clamav_milter_socktimeout}
- while [ $i -ne 0 ]
- do
- [ -S "$clamav_clamd_socket" ] && break
- if [ `expr $i % 10` -eq 0 ]; then
- echo -n "${i}.. "
+ if [ ! -z "$clamav_clamd_socket" ]; then
+ echo -n "Waiting for clamd socket.. "
+ i=${clamav_milter_socktimeout}
+ while [ $i -ne 0 ]
+ do
+ [ -S "$clamav_clamd_socket" ] && break
+ if [ `expr $i % 10` -eq 0 ]; then
+ echo -n "${i}.. "
+ fi
+ sleep 1
+ i=$(($i-1))
+ done
+ echo
+ if [ $i -eq 0 ]; then
+ echo "There is no clamd socket (${clamav_clamd_socket})!"
+ exit 1
fi
- sleep 1
- i=$(($i-1))
- done
- echo
- if [ $i -eq 0 ]; then
- echo "There is no clamd socket (${clamav_clamd_socket})!"
- exit 1
fi
fi
}
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list