Date: Thu, 6 Apr 2006 14:24:34 -0300 (BRST) From: Renato Botelho <garga@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/95425: [PATCH] security/clamav-devel: update to 20060406 Message-ID: <200604061724.k36HOY2Z063534@data.galle.com.br> Resent-Message-ID: <200604061930.k36JUIxC039468@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 95425 >Category: ports >Synopsis: [PATCH] security/clamav-devel: update to 20060406 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Thu Apr 06 19:30:17 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Renato Botelho >Release: FreeBSD 6.0-STABLE i386 >Organization: >Environment: System: FreeBSD data.galle.com.br 6.0-STABLE FreeBSD 6.0-STABLE #0: Mon Jan 30 16:42:01 BRDT 2006 >Description: - Update to 20060406 -- fix multiple vulnerabilities * CVE-2006-1614 Damian Put discovered an integer overflow in the PE header parser. This is only exploitable if the ArchiveMaxFileSize option is disabled. * CVE-2006-1615 Format string vulnerabilities in the logging code have been discovered, which might lead to the execution of arbitrary code. * CVE-2006-1630 David Luyer discovered, that ClamAV can be tricked into an invalid memory access in the cli_bitset_set() function, which may lead to a denial of service. - Massive Makefile rework synchronizing with security/clamav port. Added file(s): - files/clamav-clamd.in - files/clamav-freshclam.in - files/clamav-milter.in - files/patch-configure - files/patch-etc_Makefile.in - files/patch-libclamav_zziplib_zzip-conf.h - files/pkg-deinstall.in - files/pkg-install.in Removed file(s): - pkg-deinstall - pkg-install - files/clamav-clamd.sh - files/clamav-freshclam.sh - files/clamav-milter.sh - files/patch-Makefile.am - files/patch-configure.in - files/patch-etc::Makefile.am - files/patch-zziplib.h Generated with FreeBSD Port Tools 0.63 >How-To-Repeat: >Fix: --- clamav-devel-20060406.patch begins here --- Index: Makefile =================================================================== RCS file: /home/pcvs/ports/security/clamav-devel/Makefile,v retrieving revision 1.87 diff -u -u -r1.87 Makefile --- Makefile 23 Feb 2006 10:38:53 -0000 1.87 +++ Makefile 6 Apr 2006 17:22:48 -0000 @@ -6,8 +6,7 @@ # PORTNAME= clamav -PORTVERSION= 20051104 -PORTREVISION= 1 +PORTVERSION= 20060406 CATEGORIES= security MASTER_SITES= http://www.clamav.net/snapshot/ \ http://www.galle.com.br/~garga/clamav-devel/ @@ -28,16 +27,10 @@ OPTIONS= MILTER "Compile the milter interface" Off \ CURL "Support URL downloading" Off -USE_REINPLACE= yes -GNU_CONFIGURE= yes +USE_AUTOTOOLS= libtool:15 CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} -USE_AUTOTOOLS= automake:19 autoconf:259 libtool:15 -LIBTOOLFILES= acinclude.m4 INSTALLS_SHLIB= yes -USE_RC_SUBR= yes - -PKGINSTALL= ${WRKDIR}/pkg-install -PKGDEINSTALL= ${WRKDIR}/pkg-deinstall +USE_RC_SUBR= clamav-clamd clamav-freshclam PORTDOCS= NEWS ChangeLog html @@ -55,10 +48,13 @@ --disable-gethostbyname_r \ --enable-readdir_r \ --disable-dependency-tracking -CPPFLAGS+= -I${LOCALBASE}/include -CFLAGS+= ${PTHREAD_CFLAGS} -I${LOCALBASE}/include -LDFLAGS+= ${PTHREAD_LIBS} -L${LOCALBASE}/lib -CONFIGURE_ENV+= CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CPPFLAGS="${CPPFLAGS}" +CPPFLAGS+= -I${LOCALBASE}/include \ + ${PTHREAD_CFLAGS} +LDFLAGS+= -L${LOCALBASE}/lib \ + ${PTHREAD_LIBS} + +CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" \ + LDFLAGS="${LDFLAGS}" MAN1= clamscan.1 freshclam.1 sigtool.1 clamdscan.1 MAN5= clamd.conf.5 freshclam.conf.5 @@ -71,14 +67,14 @@ CLAMAV_CLAMD_SOCKET?= ${RUNDIR}/clamd CLAMAV_MILTER_SOCKET?= ${RUNDIR}/clmilter.sock -SED_SCRIPT= -e 's|%%PREFIX%%|${PREFIX}|g' \ - -e 's|%%DBDIR%%|${DBDIR}|g' \ - -e 's|%%LOGDIR%%|${LOGDIR}|g' \ - -e 's|%%RUNDIR%%|${RUNDIR}|g' \ - -e 's|%%CLAMAVUSER%%|${CLAMAVUSER}|g' \ - -e 's|%%CLAMAVGROUP%%|${CLAMAVGROUP}|g' \ - -e 's|%%CLAMAV_CLAMD_SOCKET%%|${CLAMAV_CLAMD_SOCKET}|g' \ - -e 's|%%CLAMAV_MILTER_SOCKET%%|${CLAMAV_MILTER_SOCKET}|g' +SUB_FILES= pkg-install pkg-deinstall +SUB_LIST= DBDIR=${DBDIR} \ + LOGDIR=${LOGDIR} \ + RUNDIR=${RUNDIR} \ + CLAMAVUSER=${CLAMAVUSER} \ + CLAMAVGROUP=${CLAMAVGROUP} \ + CLAMAV_CLAMD_SOCKET=${CLAMAV_CLAMD_SOCKET} \ + CLAMAV_MILTER_SOCKET=${CLAMAV_MILTER_SOCKET} SED_CONF= -E -e 's|^\#?(Example)$$|\#\1|' \ -e 's|^\#?((Update)?LogFile) .*/([a-z]+\.log)$$|\1 ${LOGDIR}/\3|' \ @@ -88,7 +84,6 @@ -e 's|^\#?(AllowSupplementaryGroups)$$|\1|' \ -e 's|^\#?(ScanMail)$$|\1|' \ -e 's|^\#?(NotifyClamd)$$|\1|' \ - -e 's|^\#?(Checks)$$|\#\1|' \ -e 's|^\#?(DatabaseDirectory) .*$$|\1 ${DBDIR}|' \ -e 's|^\#?(DatabaseOwner) .*$$|\1 ${CLAMAVUSER}|' \ -e 's|^\#?(FixStaleSocket)$$|\1|' @@ -96,23 +91,26 @@ PLIST_SUB+= CLAMAVUSER=${CLAMAVUSER} \ CLAMAVGROUP=${CLAMAVGROUP} -RC_DIR= ${PREFIX}/etc/rc.d -RC_SUFX= .sh -SED_SCRIPT+= -e 's|%%RC_SUBR%%|${RC_SUBR}|g' \ - -e 's|%%RC_DIR%%|${RC_DIR}|g' \ - -e 's|%%RC_SUFX%%|${RC_SUFX}|g' -PLIST_SUB+= RC_DIR=${RC_DIR} \ - RC_SUFX=${RC_SUFX} - .include <bsd.port.pre.mk> +.if ${OSVERSION} == 502010 +PTHREAD_LIBS= -pthread +.endif + .if defined(WITH_MILTER) -.if !exists(/usr/lib/libmilter.a) +USE_RC_SUBR+= clamav-milter +. if !defined(WITHOUT_LDAP) && exists(${LOCALBASE}/lib/libldap.so) +USE_OPENLDAP= yes +LDFLAGS+= -lldap +. endif + +. if !exists(/usr/lib/libmilter.a) BUILD_DEPENDS+= ${LOCALBASE}/lib/libmilter.a:${PORTSDIR}/mail/sendmail CONFIGURE_ENV+= SENDMAIL="${LOCALBASE}/sbin/sendmail" -.else +. else CONFIGURE_ENV+= SENDMAIL="/usr/sbin/sendmail" -.endif +. endif + CONFIGURE_ARGS+= --enable-milter PLIST_SUB+= CLAMAV-MILTER="" .else @@ -126,8 +124,11 @@ CONFIGURE_ARGS+= --without-libcurl .endif -pre-configure: - @cd ${WRKSRC} && ${ACLOCAL} +post-patch: + @${REINPLACE_CMD} -e 's,$$(libdir)/pkgconfig,$$(prefix)/libdata/pkgconfig,' \ + ${WRKSRC}/Makefile.in + @${REINPLACE_CMD} -e 's|-pthread -lc_r|${PTHREAD_LIBS}|g' \ + ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} pre-build: @if ${LDCONFIG} -r | ${GREP} -qw -e -lclamav; then \ @@ -139,44 +140,25 @@ post-build: @${REINPLACE_CMD} ${SED_CONF} ${BUILD_WRKSRC}/etc/clamd.conf @${REINPLACE_CMD} ${SED_CONF} ${BUILD_WRKSRC}/etc/freshclam.conf - @${SED} ${SED_SCRIPT} ${PKGDIR}/pkg-install >${PKGINSTALL} - @${SED} ${SED_SCRIPT} ${PKGDIR}/pkg-deinstall >${PKGDEINSTALL} - @${SED} ${SED_SCRIPT} ${FILESDIR}/clamav-clamd.sh \ - >${WRKDIR}/clamav-clamd.sh - @${SED} ${SED_SCRIPT} ${FILESDIR}/clamav-freshclam.sh \ - >${WRKDIR}/clamav-freshclam.sh -. if defined(WITH_MILTER) - @${SED} ${SED_SCRIPT} ${FILESDIR}/clamav-milter.sh \ - >${WRKDIR}/clamav-milter.sh -. endif pre-install: @${SETENV} PKG_PREFIX=${PREFIX} PKG_DESTDIR=${DESTDIR} \ ${SH} ${PKGINSTALL} ${PREFIX} PRE-INSTALL post-install: - @${INSTALL_SCRIPT} ${WRKDIR}/clamav-clamd.sh \ - ${DESTDIR}${RC_DIR}/clamav-clamd${RC_SUFX} - @${INSTALL_SCRIPT} ${WRKDIR}/clamav-freshclam.sh \ - ${DESTDIR}${RC_DIR}/clamav-freshclam${RC_SUFX} @${CHOWN} -R ${CLAMAVUSER}:${CLAMAVGROUP} ${DESTDIR}${DBDIR} -. for c in clamd freshclam - @[ -f ${DESTDIR}${PREFIX}/etc/${c}.conf ] || \ - ${CP} ${DESTDIR}${PREFIX}/etc/${c}.conf.default \ - ${DESTDIR}${PREFIX}/etc/${c}.conf -. endfor -. if defined(WITH_MILTER) - @${INSTALL_SCRIPT} ${WRKDIR}/clamav-milter.sh \ - ${DESTDIR}${RC_DIR}/clamav-milter${RC_SUFX} -. endif -. if !defined(NOPORTDOCS) - @${MKDIR} ${DESTDIR}${DOCSDIR} - @${INSTALL_DATA} ${INSTALL_WRKSRC}/NEWS ${INSTALL_WRKSRC}/ChangeLog \ - ${DESTDIR}${DOCSDIR} - @${MKDIR} ${DESTDIR}${DOCSDIR}/html - @${INSTALL_DATA} ${INSTALL_WRKSRC}/docs/html/*.* \ - ${DESTDIR}${DOCSDIR}/html -. endif +.for c in clamd freshclam + @[ -f ${DESTDIR}${PREFIX}/etc/${c}.conf ] || \ + ${CP} ${DESTDIR}${PREFIX}/etc/${c}.conf.default ${DESTDIR}${PREFIX}/etc/${c}.conf +.endfor +.if !defined(NOPORTDOCS) + @${MKDIR} ${DESTDIR}${DOCSDIR} + @${INSTALL_DATA} ${INSTALL_WRKSRC}/NEWS ${INSTALL_WRKSRC}/ChangeLog \ + ${DESTDIR}${DOCSDIR} + @${MKDIR} ${DESTDIR}${DOCSDIR}/html + @${INSTALL_DATA} ${INSTALL_WRKSRC}/docs/html/*.* \ + ${DESTDIR}${DOCSDIR}/html +.endif @${SETENV} PKG_PREFIX=${PREFIX} PKG_DESTDIR=${DESTDIR} \ ${SH} ${PKGINSTALL} ${PREFIX} POST-INSTALL Index: distinfo =================================================================== RCS file: /home/pcvs/ports/security/clamav-devel/distinfo,v retrieving revision 1.56 diff -u -u -r1.56 distinfo --- distinfo 24 Jan 2006 01:02:57 -0000 1.56 +++ distinfo 6 Apr 2006 17:22:48 -0000 @@ -1,3 +1,3 @@ -MD5 (clamav-devel-20051104.tar.gz) = f0018392f83c6bef1c62c6d4c0cbc718 -SHA256 (clamav-devel-20051104.tar.gz) = 946274d954b91b8f6054e318756eef26fb9b49d2ce75005e992dbab52640d066 -SIZE (clamav-devel-20051104.tar.gz) = 1686738 +MD5 (clamav-devel-20060406.tar.gz) = ec192d7eac5667b82b5b1f01078ecfa4 +SHA256 (clamav-devel-20060406.tar.gz) = 1cd5f9bddf9c6aebcceb14889e2f02670989d2bb93a6b87dfc4c97dcaef082ea +SIZE (clamav-devel-20060406.tar.gz) = 1705228 Index: pkg-deinstall =================================================================== RCS file: pkg-deinstall diff -N pkg-deinstall --- pkg-deinstall 4 Nov 2004 22:49:52 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,13 +0,0 @@ -#!/bin/sh -# $FreeBSD: ports/security/clamav-devel/pkg-deinstall,v 1.3 2004/11/04 22:49:52 pav Exp $ - -if [ "$2" != "POST-DEINSTALL" ]; then - exit 0 -fi - -CLAMAVUSER=%%CLAMAVUSER%% - -if pw usershow "${CLAMAVUSER}" 2>/dev/null 1>&2; then - echo "To delete ${CLAMAVUSER} user permanently, use 'pw userdel \"${CLAMAVUSER}\"'" -fi -exit 0 Index: pkg-install =================================================================== RCS file: pkg-install diff -N pkg-install --- pkg-install 27 Jan 2005 12:15:27 -0000 1.20 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,71 +0,0 @@ -#!/bin/sh -# $FreeBSD: ports/security/clamav-devel/pkg-install,v 1.20 2005/01/27 12:15:27 yar Exp $ - -PREFIX=${PKG_PREFIX:-%%PREFIX%%} -DESTDIR=${PKG_DESTDIR:-} - -CLAMAVUSER=%%CLAMAVUSER%% -CLAMAVGROUP=%%CLAMAVGROUP%% -UID=106 -GID=$UID - -DBDIR=$DESTDIR%%DBDIR%% -LOGDIR=$DESTDIR%%LOGDIR%% -RUNDIR=$DESTDIR%%RUNDIR%% - -if [ "$2" = "PRE-INSTALL" ]; then - - if ! pw groupshow "$CLAMAVGROUP" 2>/dev/null 1>&2; then - if pw groupadd $CLAMAVGROUP -g $GID; then - echo "=> Added group \"$CLAMAVGROUP\"." - else - echo "=> Adding group \"$CLAMAVGROUP\" failed..." - exit 1 - fi - fi - - if ! pw usershow "$CLAMAVUSER" 2>/dev/null 1>&2; then - if pw useradd $CLAMAVUSER -u $UID -g $CLAMAVGROUP -h - \ - -s "/sbin/nologin" -d "/nonexistent" \ - -c "Clam Antivirus"; \ - then - pw groupmod mail -m $CLAMAVUSER - echo "=> Added user \"$CLAMAVUSER\"." - else - echo "=> Adding user \"$CLAMAVUSER\" failed..." - exit 1 - fi - fi - -elif [ "$2" = "POST-INSTALL" ]; then - - if [ ! -d "$DBDIR" ]; then - mkdir -p "$DBDIR" || exit 1 - chown "$CLAMAVUSER:$CLAMAVGROUP" "$DBDIR" || exit 1 - fi - - if [ ! -d "$LOGDIR" ]; then - mkdir -p "$LOGDIR" || exit 1 - chown "$CLAMAVUSER:$CLAMAVGROUP" "$LOGDIR" || exit 1 - fi - - if [ ! -d "$RUNDIR" ]; then - mkdir -p "$RUNDIR" || exit 1 - chown "$CLAMAVUSER:$CLAMAVGROUP" "$RUNDIR" || exit 1 - fi - - if [ -f "$DESTDIR$PREFIX/etc/clamav.conf" ]; then - echo - echo "**************** WARNING ****************" - echo "* *" - echo "* The configuration file has changed: *" - echo "* Please edit $PREFIX/etc/clamd.conf *" - echo "* and remove $PREFIX/etc/clamav.conf *" - echo "* *" - echo "**************** WARNING ****************" - echo - fi - -fi - -exit 0 Index: pkg-plist =================================================================== RCS file: /home/pcvs/ports/security/clamav-devel/pkg-plist,v retrieving revision 1.32 diff -u -u -r1.32 pkg-plist --- pkg-plist 23 Feb 2006 10:38:53 -0000 1.32 +++ pkg-plist 6 Apr 2006 17:22:48 -0000 @@ -1,15 +1,9 @@ @comment $FreeBSD: ports/security/clamav-devel/pkg-plist,v 1.32 2006/02/23 10:38:53 ade Exp $ -%%CLAMAV-MILTER%%@unexec [ ! -f %%RUNDIR%%/clamav-milter.pid ] || %%RC_DIR%%/clamav-milter%%RC_SUFX%% stop || true -@unexec [ ! -f %%RUNDIR%%/freshclam.pid ] || %%RC_DIR%%/clamav-freshclam%%RC_SUFX%% stop || true -@unexec [ ! -f %%RUNDIR%%/clamd.pid ] || %%RC_DIR%%/clamav-clamd%%RC_SUFX%% stop || true bin/clamav-config bin/clamscan bin/clamdscan bin/freshclam bin/sigtool -etc/rc.d/clamav-clamd%%RC_SUFX%% -etc/rc.d/clamav-freshclam%%RC_SUFX%% -%%CLAMAV-MILTER%%etc/rc.d/clamav-milter%%RC_SUFX%% %%CLAMAV-MILTER%%sbin/clamav-milter sbin/clamd include/clamav.h Index: files/clamav-clamd.in =================================================================== RCS file: files/clamav-clamd.in diff -N files/clamav-clamd.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/clamav-clamd.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,35 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: clamd +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable clamd: +# +#clamav_clamd_enable="YES" +# +# See clamd(8) for flags +# + +. %%RC_SUBR%% + +name=clamav_clamd +rcvar=`set_rcvar` + +command=%%PREFIX%%/sbin/clamd +pidfile=%%RUNDIR%%/clamd.pid +required_dirs=%%DBDIR%% +required_files=%%PREFIX%%/etc/clamd.conf + +# read settings, set default values +load_rc_config "$name" +: ${clamav_clamd_enable="NO"} +: ${clamav_clamd_flags=""} +: ${clamav_clamd_socket="%%CLAMAV_CLAMD_SOCKET%%"} + +run_rc_command "$1" Index: files/clamav-clamd.sh =================================================================== RCS file: files/clamav-clamd.sh diff -N files/clamav-clamd.sh --- files/clamav-clamd.sh 20 Feb 2006 20:47:37 -0000 1.7 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,35 +0,0 @@ -#!/bin/sh -# -# $FreeBSD: ports/security/clamav-devel/files/clamav-clamd.sh,v 1.7 2006/02/20 20:47:37 dougb Exp $ -# - -# PROVIDE: clamd -# REQUIRE: LOGIN -# BEFORE: mail -# KEYWORD: shutdown - -# -# Add the following lines to /etc/rc.conf to enable clamd: -# -#clamav_clamd_enable="YES" -# -# See clamd(8) for flags -# - -. %%RC_SUBR%% - -name=clamav_clamd -rcvar=`set_rcvar` - -command=%%PREFIX%%/sbin/clamd -pidfile=%%RUNDIR%%/clamd.pid -required_dirs=%%DBDIR%% -required_files=%%PREFIX%%/etc/clamd.conf - -# read settings, set default values -load_rc_config "$name" -: ${clamav_clamd_enable="NO"} -: ${clamav_clamd_flags=""} -: ${clamav_clamd_socket="%%CLAMAV_CLAMD_SOCKET%%"} - -run_rc_command "$1" Index: files/clamav-freshclam.in =================================================================== RCS file: files/clamav-freshclam.in diff -N files/clamav-freshclam.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/clamav-freshclam.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,35 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: freshclam +# REQUIRE: LOGIN clamd +# BEFORE: mail +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable the freshclam daemon: +# +#clamav_freshclam_enable="YES" +# +# See freshclam(1) for flags +# + +. %%RC_SUBR%% + +name=clamav_freshclam +rcvar=`set_rcvar` + +command=%%PREFIX%%/bin/freshclam +pidfile=%%RUNDIR%%/freshclam.pid +command_args="--daemon -p ${pidfile}" +required_dirs=%%DBDIR%% +required_files=%%PREFIX%%/etc/freshclam.conf + +# read settings, set default values +load_rc_config "$name" +: ${clamav_freshclam_enable="NO"} +: ${clamav_freshclam_flags=""} + +run_rc_command "$1" Index: files/clamav-freshclam.sh =================================================================== RCS file: files/clamav-freshclam.sh diff -N files/clamav-freshclam.sh --- files/clamav-freshclam.sh 20 Feb 2006 20:47:37 -0000 1.6 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,35 +0,0 @@ -#!/bin/sh -# -# $FreeBSD: ports/security/clamav-devel/files/freshclam.sh -# - -# PROVIDE: freshclam -# REQUIRE: LOGIN clamd -# BEFORE: mail -# KEYWORD: shutdown - -# -# Add the following lines to /etc/rc.conf to enable the freshclam daemon: -# -#clamav_freshclam_enable="YES" -# -# See freshclam(1) for flags -# - -. %%RC_SUBR%% - -name=clamav_freshclam -rcvar=`set_rcvar` - -command=%%PREFIX%%/bin/freshclam -pidfile=%%RUNDIR%%/freshclam.pid -command_args="--daemon" -required_dirs=%%DBDIR%% -required_files=%%PREFIX%%/etc/freshclam.conf - -# read settings, set default values -load_rc_config "$name" -: ${clamav_freshclam_enable="NO"} -: ${clamav_freshclam_flags=""} - -run_rc_command "$1" Index: files/clamav-milter.in =================================================================== RCS file: files/clamav-milter.in diff -N files/clamav-milter.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/clamav-milter.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,46 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: clamav-milter +# REQUIRE: LOGIN clamd +# BEFORE: mail +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable clamav-milter: +# +#clamav_milter_enable="YES" +# +# See clamav-milter(1) for flags +# + +. %%RC_SUBR%% + +name=clamav_milter +rcvar=`set_rcvar` + +command=%%PREFIX%%/sbin/clamav-milter +pidfile=%%RUNDIR%%/clamav-milter.pid +required_dirs=%%DBDIR%% +required_files=%%PREFIX%%/etc/clamd.conf + +start_precmd=start_precmd + +start_precmd() +{ + if [ -S "$clamav_milter_socket" ]; then + warn "Stale socket $clamav_milter_socket removed." + rm "$clamav_milter_socket" + fi + rc_flags="--pidfile ${pidfile} ${flags:-$clamav_milter_flags} $clamav_milter_socket" +} + +# read settings, set default values +load_rc_config $name +: ${clamav_milter_enable="NO"} +: ${clamav_milter_socket="%%CLAMAV_MILTER_SOCKET%%"} +: ${clamav_milter_flags="--postmaster-only --local --outgoing --timeout=0 --max-children=50"} + +run_rc_command "$1" Index: files/clamav-milter.sh =================================================================== RCS file: files/clamav-milter.sh diff -N files/clamav-milter.sh --- files/clamav-milter.sh 20 Feb 2006 20:47:37 -0000 1.8 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,48 +0,0 @@ -#!/bin/sh -# -# $FreeBSD: ports/security/clamav-devel/files/clamav-milter.sh,v 1.8 2006/02/20 20:47:37 dougb Exp $ -# - -# PROVIDE: clamav-milter -# REQUIRE: LOGIN clamd -# BEFORE: mail -# KEYWORD: shutdown - -# -# Add the following lines to /etc/rc.conf to enable clamav-milter: -# -#clamav_milter_enable="YES" -# -# See clamav-milter(1) for flags -# - -. %%RC_SUBR%% - -name=clamav_milter -rcvar=`set_rcvar` - -command=%%PREFIX%%/sbin/clamav-milter -pidfile=%%RUNDIR%%/clamav-milter.pid -required_dirs=%%DBDIR%% -required_files=%%PREFIX%%/etc/clamd.conf - -start_precmd=start_precmd - -start_precmd() -{ - if [ -S "$clamav_milter_socket" ]; then - warn "Stale socket $clamav_milter_socket removed." - rm "$clamav_milter_socket" - fi - rc_flags="--pidfile ${pidfile} ${flags:-$clamav_milter_flags} $clamav_milter_socket" -} - -# read settings, set default values -load_rc_config $name -: ${clamav_milter_enable="NO"} -: ${clamav_milter_socket="%%CLAMAV_MILTER_SOCKET%%"} -: ${clamav_milter_flags="--postmaster-only --local --outgoing --max-children=50"} - -# add socket to any given argument -clamav_milter_flags="${clamav_milter_flags} ${clamav_milter_socket}" -run_rc_command "$1" Index: files/patch-Makefile.am =================================================================== RCS file: files/patch-Makefile.am diff -N files/patch-Makefile.am --- files/patch-Makefile.am 4 Nov 2004 22:49:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,10 +0,0 @@ ---- Makefile.am.orig Sat Oct 16 17:43:47 2004 -+++ Makefile.am Sat Oct 16 17:44:12 2004 -@@ -20,6 +20,6 @@ - - bin_SCRIPTS=clamav-config - --pkgconfigdir = $(libdir)/pkgconfig -+pkgconfigdir = $(prefix)/libdata/pkgconfig - pkgconfig_DATA = libclamav.pc - Index: files/patch-configure =================================================================== RCS file: files/patch-configure diff -N files/patch-configure --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-configure 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,48 @@ +--- configure.orig Thu Jun 23 23:12:00 2005 ++++ configure Tue Jun 28 20:53:10 2005 +@@ -10914,6 +10914,9 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + $ac_includes_default ++#include <sys/types.h> ++#include <netinet/in.h> ++#include <arpa/nameser.h> + #include <resolv.h> + _ACEOF + rm -f conftest.$ac_objext +@@ -10957,6 +10960,9 @@ + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ ++#include <sys/types.h> ++#include <netinet/in.h> ++#include <arpa/nameser.h> + #include <resolv.h> + _ACEOF + if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 +@@ -11195,19 +11201,25 @@ + sendmailver_c=`echo $sendmailver | awk -F. '{printf $3}'` + + ++if echo "$sendmailver_a" | egrep -q '^[0-9]+$'; then + cat >>confdefs.h <<_ACEOF + #define SENDMAIL_VERSION_A $sendmailver_a + _ACEOF ++fi + + ++if echo "$sendmailver_b" | egrep -q '^[0-9]+$'; then + cat >>confdefs.h <<_ACEOF + #define SENDMAIL_VERSION_B $sendmailver_b + _ACEOF ++fi + + ++if echo "$sendmailver_c" | egrep -q '^[0-9]+$'; then + cat >>confdefs.h <<_ACEOF + #define SENDMAIL_VERSION_C $sendmailver_c + _ACEOF ++fi + + fi + fi Index: files/patch-configure.in =================================================================== RCS file: files/patch-configure.in diff -N files/patch-configure.in --- files/patch-configure.in 4 Jul 2005 17:38:52 -0000 1.9 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,31 +0,0 @@ ---- configure.in.orig Mon Jul 4 10:18:26 2005 -+++ configure.in Mon Jul 4 10:21:50 2005 -@@ -178,9 +178,15 @@ - sendmailver_b=`echo $sendmailver | awk -F. '{printf $2}'` - sendmailver_c=`echo $sendmailver | awk -F. '{printf $3}'` - -- AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_A, $sendmailver_a, [major version of Sendmail]) -- AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_B, $sendmailver_b, [minor version of Sendmail]) -- AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_C, $sendmailver_c, [subversion of Sendmail]) -+ if echo "$sendmailver_a" | egrep -q '^[0-9]+$'; then -+ AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_A, $sendmailver_a, [major version of Sendmail]) -+ fi -+ if echo "$sendmailver_b" | egrep -q '^[0-9]+$'; then -+ AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_B, $sendmailver_b, [minor version of Sendmail]) -+ fi -+ if echo "$sendmailver_c" | egrep -q '^[0-9]+$'; then -+ AC_DEFINE_UNQUOTED(SENDMAIL_VERSION_C, $sendmailver_c, [subversion of Sendmail]) -+ fi - fi - fi - -@@ -389,9 +395,6 @@ - ;; - freebsd*) - if test "$have_pthreads" = "yes"; then -- LIBCLAMAV_LIBS="$LIBCLAMAV_LIBS -pthread -lc_r" -- CLAMD_LIBS="$CLAMD_LIBS -pthread -lc_r" -- CLAMAV_MILTER_LIBS="$CLAMAV_MILTER_LIBS -pthread -lc_r" - TH_SAFE="-thread-safe" - AC_DEFINE(CL_THREAD_SAFE,1,[thread safe]) - AC_DEFINE(_REENTRANT,1,[thread safe]) Index: files/patch-etc::Makefile.am =================================================================== RCS file: files/patch-etc::Makefile.am diff -N files/patch-etc::Makefile.am --- files/patch-etc::Makefile.am 4 Nov 2004 22:49:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,12 +0,0 @@ ---- etc/Makefile.am.orig Sat Oct 2 23:09:13 2004 -+++ etc/Makefile.am Sun Oct 17 13:04:24 2004 -@@ -20,7 +20,5 @@ - - install: - $(mkinstalldirs) $(DESTDIR)$(CFGINST) -- @test -f $(DESTDIR)$(CFGINST)/clamd.conf || \ -- $(INSTALL_DATA) $(srcdir)/clamd.conf $(DESTDIR)$(CFGINST) -- @test -f $(DESTDIR)$(CFGINST)/freshclam.conf || \ -- $(INSTALL_DATA) $(srcdir)/freshclam.conf $(DESTDIR)$(CFGINST) -+ $(INSTALL_DATA) $(srcdir)/clamd.conf $(DESTDIR)$(CFGINST)/clamd.conf.default -+ $(INSTALL_DATA) $(srcdir)/freshclam.conf $(DESTDIR)$(CFGINST)/freshclam.conf.default Index: files/patch-etc_Makefile.in =================================================================== RCS file: files/patch-etc_Makefile.in diff -N files/patch-etc_Makefile.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-etc_Makefile.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,15 @@ +--- etc/Makefile.in.orig Thu Feb 19 14:17:02 2004 ++++ etc/Makefile.in Thu Feb 19 14:17:36 2004 +@@ -333,10 +333,8 @@ + + install: + $(mkinstalldirs) $(DESTDIR)$(CFGINST) +- @test -f $(DESTDIR)$(CFGINST)/clamd.conf || \ +- $(INSTALL_DATA) $(srcdir)/clamd.conf $(DESTDIR)$(CFGINST) +- @test -f $(DESTDIR)$(CFGINST)/freshclam.conf || \ +- $(INSTALL_DATA) $(srcdir)/freshclam.conf $(DESTDIR)$(CFGINST) ++ $(INSTALL_DATA) $(srcdir)/clamd.conf $(DESTDIR)$(CFGINST)/clamd.conf.default ++ $(INSTALL_DATA) $(srcdir)/freshclam.conf $(DESTDIR)$(CFGINST)/freshclam.conf.default + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: Index: files/patch-libclamav_zziplib_zzip-conf.h =================================================================== RCS file: files/patch-libclamav_zziplib_zzip-conf.h diff -N files/patch-libclamav_zziplib_zzip-conf.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-libclamav_zziplib_zzip-conf.h 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,11 @@ +--- libclamav/zziplib/zzip-conf.h.orig Mon Nov 24 17:52:56 2003 ++++ libclamav/zziplib/zzip-conf.h Mon Nov 24 17:53:05 2003 +@@ -11,6 +11,8 @@ + #ifndef _ZZIP_CONF_H + #define _ZZIP_CONF_H 1 + ++#include <sys/types.h> ++ + #if !defined ZZIP_OMIT_CONFIG_H + # if defined _MSC_VER || defined __BORLANDC__ || defined __WATCOMC__ + # include <zzip-msvc.h> Index: files/patch-zziplib.h =================================================================== RCS file: files/patch-zziplib.h diff -N files/patch-zziplib.h --- files/patch-zziplib.h 3 Oct 2003 13:47:18 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,12 +0,0 @@ ---- libclamav/zziplib/zziplib.h.orig Mon Sep 29 13:44:52 2003 -+++ libclamav/zziplib/zziplib.h Fri Oct 3 15:45:22 2003 -@@ -19,6 +19,9 @@ - #ifndef _ZZIP_ZZIP_H /* zziplib.h */ - #define _ZZIP_ZZIP_H - -+#ifdef __FreeBSD__ -+#include <unistd.h> -+#endif - #include <zzip-conf.h> - - #include <fcntl.h> Index: files/pkg-deinstall.in =================================================================== RCS file: files/pkg-deinstall.in diff -N files/pkg-deinstall.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/pkg-deinstall.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,13 @@ +#!/bin/sh +# $FreeBSD$ + +if [ "$2" != "POST-DEINSTALL" ]; then + exit 0 +fi + +CLAMAVUSER=%%CLAMAVUSER%% + +if pw usershow "${CLAMAVUSER}" 2>/dev/null 1>&2; then + echo "To delete ${CLAMAVUSER} user permanently, use 'pw userdel \"${CLAMAVUSER}\"'" +fi +exit 0 Index: files/pkg-install.in =================================================================== RCS file: files/pkg-install.in diff -N files/pkg-install.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/pkg-install.in 6 Apr 2006 17:22:48 -0000 @@ -0,0 +1,71 @@ +#!/bin/sh +# $FreeBSD$ + +PREFIX=${PKG_PREFIX:-%%PREFIX%%} +DESTDIR=${PKG_DESTDIR:-} + +CLAMAVUSER=%%CLAMAVUSER%% +CLAMAVGROUP=%%CLAMAVGROUP%% +UID=106 +GID=$UID + +DBDIR=$DESTDIR%%DBDIR%% +LOGDIR=$DESTDIR%%LOGDIR%% +RUNDIR=$DESTDIR%%RUNDIR%% + +if [ "$2" = "PRE-INSTALL" ]; then + + if ! pw groupshow "$CLAMAVGROUP" 2>/dev/null 1>&2; then + if pw groupadd $CLAMAVGROUP -g $GID; then + echo "=> Added group \"$CLAMAVGROUP\"." + else + echo "=> Adding group \"$CLAMAVGROUP\" failed..." + exit 1 + fi + fi + + if ! pw usershow "$CLAMAVUSER" 2>/dev/null 1>&2; then + if pw useradd $CLAMAVUSER -u $UID -g $CLAMAVGROUP -h - \ + -s "/sbin/nologin" -d "/nonexistent" \ + -c "Clam Antivirus"; \ + then + pw groupmod mail -m $CLAMAVUSER + echo "=> Added user \"$CLAMAVUSER\"." + else + echo "=> Adding user \"$CLAMAVUSER\" failed..." + exit 1 + fi + fi + +elif [ "$2" = "POST-INSTALL" ]; then + + if [ ! -d "$DBDIR" ]; then + mkdir -p "$DBDIR" || exit 1 + chown "$CLAMAVUSER:$CLAMAVGROUP" "$DBDIR" || exit 1 + fi + + if [ ! -d "$LOGDIR" ]; then + mkdir -p "$LOGDIR" || exit 1 + chown "$CLAMAVUSER:$CLAMAVGROUP" "$LOGDIR" || exit 1 + fi + + if [ ! -d "$RUNDIR" ]; then + mkdir -p "$RUNDIR" || exit 1 + chown "$CLAMAVUSER:$CLAMAVGROUP" "$RUNDIR" || exit 1 + fi + + if [ -f "$DESTDIR$PREFIX/etc/clamav.conf" ]; then + echo + echo "**************** WARNING ****************" + echo "* *" + echo "* The configuration file has changed: *" + echo "* Please edit $PREFIX/etc/clamd.conf *" + echo "* and remove $PREFIX/etc/clamav.conf *" + echo "* *" + echo "**************** WARNING ****************" + echo + fi + +fi + +exit 0 --- clamav-devel-20060406.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604061724.k36HOY2Z063534>