Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Apr 2007 14:13:43 +0600
From:      "Denis Eremenko <moonshade@pnhz.kz>" <moonshade@pnhz.kz>
To:        "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org>
Subject:   ports/111130: [security/clamav] clamav-milter rc script have hardcoded timeout for waiting clamd
Message-ID:  <1175501623.82253@abyss.pnhz.kz>
Resent-Message-ID: <200704020820.l328K6kg037098@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         111130
>Category:       ports
>Synopsis:       [security/clamav] clamav-milter rc script have hardcoded timeout for waiting clamd
>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:   Mon Apr 02 08:20:05 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Denis Eremenko <moonshade@pnhz.kz>
>Release:        FreeBSD 6.2-STABLE i386
>Organization:
>Environment:


System: FreeBSD 6.2-STABLE #0: Sun Mar 25 16:15:38 ALMT 2007
    root@abyss.pnhz.kz:/usr/obj/data/os/FreeBSD/src/6/src/sys/ABYSS-6



>Description:


clamav-milter rc script have hardcoded 10 sec timeout for waiting clamd which is not enough on slow machines.


>How-To-Repeat:





>Fix:


--- patch-rc_clamav-milter begins here ---
--- clamav-milter.orig	Wed Mar 28 15:35:56 2007
+++ clamav-milter	Wed Mar 28 17:09:35 2007
@@ -35,11 +35,23 @@
 		rm "$clamav_milter_socket"
 	fi
 	rc_flags="--pidfile ${pidfile} ${flags:-$clamav_milter_flags} $clamav_milter_socket"
-	for a in 1 2 3 4 5 6 7 8 9 10
+	
+	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
 }
 
 # read settings, set default values
@@ -48,5 +60,6 @@
 : ${clamav_milter_socket="/var/run/clamav/clmilter.sock"}
 : ${clamav_clamd_socket="/var/run/clamav/clamd"}
 : ${clamav_milter_flags="--postmaster-only --local --outgoing --timeout=0 --max-children=50"}
+: ${clamav_milter_socktimeout="60"}
 
 run_rc_command "$1"
--- patch-rc_clamav-milter ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1175501623.82253>