diff --git a/.cvsignore b/.cvsignore index 336c23f..334ef5c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -clamav-0.94.2-norar.tar.bz2 +clamav-0.95rc1-norar.tar.bz2 diff --git a/ChangeLog-rpm.old b/ChangeLog-rpm.old new file mode 100644 index 0000000..44c8556 --- /dev/null +++ b/ChangeLog-rpm.old @@ -0,0 +1,279 @@ +* Tue Dec 12 2006 Enrico Scholz - 0.88.7-1 +- updated to 0.88.7 + +* Sun Nov 5 2006 Enrico Scholz - 0.88.6-1 +- updated to 0.88.6 + +* Wed Oct 18 2006 Enrico Scholz - 0.88.5-1 +- updated to 0.88.5 (SECURITY); fixes CVE-2006-4182, CVE-2006-5295 +- added patch to set '__attribute__ ((visibility("hidden")))' for + exported MD5_*() functions (fixes #202043) + +* Thu Oct 05 2006 Christian Iseli 0.88.4-4 + - rebuilt for unwind info generation, broken in gcc-4.1.1-21 + +* Thu Sep 21 2006 Enrico Scholz - 0.88.4-3 +- splitted SysV initscripts of -milter and -server into own subpackages + +* Fri Sep 15 2006 Enrico Scholz - 0.88.4-2 +- rebuilt + +* Tue Aug 8 2006 Enrico Scholz - 0.88.4-1 +- updated to 0.88.4 (SECURITY) + +* Wed Jul 12 2006 Enrico Scholz +- removed the clamdscan(1) manpage from the -server subpackage + +* Sat Jul 8 2006 Enrico Scholz +- removed a superfluous '}' +- removed some code which was relevant for FC-3 only + +* Sat Jul 8 2006 Enrico Scholz - 0.88.3-1 +- updated to 0.88.3 +- updated to new fedora-usermgmt macros + +* Tue May 16 2006 Enrico Scholz - 0.88.2-2 +- cleanups: removed unneeded curlies, use plain command instead of + %%__XXX macro, whitespace cleanup, removed unneeded versioned + dependencies +- added a 'Requires(post): group(clamav)' dependencies for -update and + added the corresponding Provides: to -data +- removed the %%_without_milter conditional; you won't gain anything + when milter would be disabled at buildtime + +* Sun Apr 30 2006 Enrico Scholz - 0.88.2-1 +- updated to 0.88.2 (SECURITY) +- rediffed patches; most issues handled by 0.88.1-2 are fixed in + 0.88.2 + +* Mon Apr 24 2006 Enrico Scholz - 0.88.1-2 +- added patch which fixes some classes of compiler warnings; at least + the using of implicitly declared functions was reported to cause + segfaults on AMD64 (brought to my attention by Marc Perkel) +- added patch which fixes wrong usage of strncpy(3) in unrarlib.c + +* Thu Apr 06 2006 Enrico Scholz - 0.88.1-1 +- updated to 0.88.1 (SECURITY) + +* Sat Feb 18 2006 Enrico Scholz - 0.88-2 +- rebuilt for FC5 + +* Tue Jan 10 2006 Enrico Scholz - 0.88-1 +- updated to 0.88 +- added pseudo-versions for the 'init(...)' provides as a first step + for the support of alternative initmethods + +* Tue Nov 15 2005 Enrico Scholz - 0.87.1-2 +- moved 'freshclam.conf.5' man page into the -update subpackage (#173221) +- ship 'clamd.conf.5' man page in the -server subpackage *too*. The + same file is contained in multiple packages now, but this man-page + can not be removed from the base package because it also applies to + 'clamdscan' there (#173221). + +* Fri Nov 4 2005 Enrico Scholz - 0.87.1-1 +- updated to 0.87.1 + +* Sat Sep 17 2005 Enrico Scholz - 0.87-1 +- updated to 0.87 (SECURITY) +- removed -timeout patch; it is solved upstream +- reverted the -exim changes; they add yet more complexity, their + functionality can go into an own package and they contained flaws + +* Fri Sep 9 2005 David Woodhouse - 0.86.2-5 +- Add clamav-exim configuration package + +* Fri Jul 29 2005 Enrico Scholz - 0.86.2-4 +- [milter] create the milter-logfile in the %%post scriptlet +- [milter] reverted the change of the default child_timeout value; it + was set to 5 minutes in 0.86.2 which conflicts with the internal + mode where a timeout must not be set. So, the clamav-milter would + not run with the default configuration + +* Thu Jul 28 2005 Enrico Scholz - 0.86.2-3 +- Fixed calculation of sleep duration; on some systems/IPs, `hostid` + results in a negative number which is retained by the bash + modulo-operation. So the sleep may get a negative number of seconds + being interpreted as an option. This version makes sure that the + module-operations returns a non-negative value. [BZ #164494, James + Wilkinson] +- added support for a /usr/sbin/clamav-notify-servers.local hook; this + file will be executed (source'd) before all other actions and can + abort the entire processing by invoking 'exit' + +* Mon Jul 25 2005 Enrico Scholz - 0.86.2-2 +- updated to 0.86.2 (SECURITY) +- changed the freshclam updating mechanism (again); now, it consists + of a crontab which does not need to be changed and a helper script + (freshclam-sleep). This helper script is configured by + /etc/sysconfig/freshclam + +* Sat Jun 25 2005 Enrico Scholz - 0.86.1-2 +- updated to 0.86.1 +- fixed randomization in %%post scriptlet: hour should be a range but + not a single number + +* Tue Jun 21 2005 Enrico Scholz - 0.86-1 +- updated to 0.86 +- randomize freshclam startup times in -update's %%post script (suggested + by Stephen Smoogen); this requires some more Requires(post): also + +* Wed May 18 2005 Warren Togami - 0.85.1-4 +- fix dist tagging the way Enrico wants it + +* Tue May 17 2005 Oliver Falk - 0.85.1-2 +- Rebuild + +* Tue May 17 2005 Oliver Falk - 0.85.1-1 +- Update + +* Sat May 14 2005 Enrico Scholz - 0.85-0 +- updated to 0.85 + +* Sun May 1 2005 Enrico Scholz - 0.84-0 +- updated to 0.84 + +* Fri Apr 7 2005 Michael Schwendt +- rebuilt + +* Tue Feb 15 2005 Enrico Scholz - 0:0.83-1 +- updated to 0.83 + +* Tue Feb 8 2005 Enrico Scholz - 0:0.82-1 +- updated to 0.82 +- minor spec cleanups + +* Fri Jan 28 2005 Enrico Scholz - 0:0.81-0.fdr.2 +- build the package with '--disable-zlib-vcheck' because RH is unable to + apply a fix for a 5 month old and solved security issue. Please fill + your comments at https://bugzilla.redhat.com/beta/show_bug.cgi?id=131385 +- added 'BuildRequires: bc' (should work without also, but ./configure + gives out ugly warnings else) + +* Fri Jan 28 2005 Enrico Scholz - 0:0.81-0.fdr.1 +- updated to 0.81 +- do not ship the 'clamd.milter' daemon anymore; clamav-milter supports + an internal mode now which is enabled by default +- updated -milter %%description + +* Thu Jan 20 2005 Enrico Scholz - 0:0.80-0.fdr.2 +- s!cron.d/clamav!cron.d/clamav-update! in the %%description of the -update + subpackage (https://bugzilla.fedora.us/show_bug.cgi?id=1715#c39) + +* Wed Nov 3 2004 Enrico Scholz - 0:0.80-0.fdr.1 +- updated to 0.80 +- removed DMS, FreeBSD-HOWTO and localized docs as it is not shipped anymore +- buildrequire 'curl-devel' +- renamed clamav.conf to clamd.conf (upstream change) +- updated -initoff patch + +* Tue Sep 14 2004 Enrico Scholz - 0:0.75.1-0.fdr.1 +- updated to 0.75.1 +- use %%configure, the problems with the architecture specification + seem to have passed (probably because of an autoconf update) +- set mode 0600 for the cron-script (required by vixie-cron) +- made the cronjob a spambot and send mail about deactivated freshclam + service to nearly everybody... (root, postmaster, webmaster) +- other fixes in the notification cronjob + +* Fri Jul 23 2004 Enrico Scholz - 0:0.75-0.fdr.1 +- updated to 0.75 + +* Thu Jul 15 2004 Enrico Scholz - 0:0.74-0.fdr.2 +- moved /usr/bin/clamav-config from main into -devel + +* Wed Jun 30 2004 Enrico Scholz - 0:0.74-0.fdr.1 +- updated to 0.74 + +* Mon Jun 14 2004 Enrico Scholz - 0:0.73-0.fdr.1 +- updated to 0.73 +- added pkgconfig file + +* Fri Jun 11 2004 Enrico Scholz - 0:0.72-0.fdr.3 +- notify the user about a deactivated clamav-update service +- added clamd-gen script which generates template spec-files for + services using clamd +- copied template configuration files to %pkgdatadir/template (needed + for clamd-gen) +- moved the clamd-wrapper from %_initrddir to %{pkgdatadir}; a symlink + will be provided for compatibility reasons +- conditionalized building of the -milter subpackage ('--without + milter' switch) to enable builds on RH73 (bug #1715, comment #5/#7) + +* Fri Jun 4 2004 Enrico Scholz - 0:0.72-0.fdr.2 +- removed 'BuildRequires: dietlibc'; it was a leftover from the + pre-use-signal era (before 0.70) (bug #1716) + +* Thu Jun 3 2004 Enrico Scholz - 0:0.72-0.fdr.1 +- updated to 0.72 + +* Thu May 20 2004 Enrico Scholz - 0:0.71-0.fdr.2 +- removed the randomization in the cronjob; it seems to be impossible + to use the mod-operator (%%) there. Instead of, the user has to + replace some placeholders... + +* Wed May 19 2004 Enrico Scholz - 0:0.71-0.fdr.1 +- updated to 0.71 + +* Fri May 7 2004 Enrico Scholz - 0:0.70-0.fdr.1.1 +- quote 'EOF' to delay $RANDOM expansion + +* Tue Apr 27 2004 Enrico Scholz - 0:0.70-0.fdr.2 +- updated GECOS entry for the 'clamav' user to describe its purpose + more accurately +- use explicit '-m755' when creating directories with install + +* Tue Apr 20 2004 Enrico Scholz - 0:0.70-0.fdr.1 +- updated to 0.70; rediffed some patches +- updated logrotate script to use signals and documented the steps + which are needed to make it work +- adapted initscript to use signals instead of sockwrite +- removed sockwrite; signals can now be used to reload the database +- added logfile to the -milter subpackage + +* Tue Apr 20 2004 Enrico Scholz - 0:0.68-0.fdr.2.1 +- tagged some Requires:, since clamav-server is required in the milter-%%post* scriptlets + +* Sat Mar 20 2004 Enrico Scholz - 0:0.68-0.fdr.2 +- split the double Requires(...,...): statements; see + https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=118773 +- require the recent fedora-usermgmt package (0.7) which fixes similar + ordering issues + +* Thu Mar 18 2004 Enrico Scholz - 0:0.68-0.fdr.1 +- updated to 0.68 (using the -1 version) +- ship milter-files in the -milter instead of the -server subpackage + +* Tue Feb 24 2004 Enrico Scholz - 0:0.67-0.fdr.3 +- fixed ':' vs. '.' in chown + +* Tue Feb 17 2004 Enrico Scholz - 0:0.67-0.fdr.2 +- randomize freshclam startup to prevent server peaks + +* Mon Feb 16 2004 Enrico Scholz - 0:0.67-0.fdr.1 +- updated to 0.67 (using the -1 version) + +* Wed Feb 11 2004 Enrico Scholz - 0:0.66-0.fdr.2 +- updated to 0.66; important, packaging-relevant changes are + freshclam: + * $http_proxy is not supported anymore; you have to configure it in + /etc/freshclam.conf + * the logfile has been renamed to /var/log/freshclam.log +- removed %%check section; buildroot check is implemented in local + testsuite already +- added some %%verify(not mtime) modifiers to avoid unnecessary .rpmnew + files +- added some directory-Requires: +- activated milter-package and made it work +- added patch to disable clamav-milter service by default +- renamed /var/run/clamav. to /var/run/clamd.; this + makes things more consistently but can break backward compatibility. The + initscript should deal with the old version too, but I would not bet on + it... +- updated some descriptions +- fixed the update-mechanism; now it happens in two stages: at first, + the files will be downloaded as user 'clamav' and then, root initiates + the daemon-reload. + +* Mon Feb 9 2004 Enrico Scholz - 0:0.65-0.fdr.5 +- added security fix for + http://www.securityfocus.com/archive/1/353194/2004-02-06/2004-02-12/1 diff --git a/clamav-0.93.1-path.patch b/clamav-0.93.1-path.patch deleted file mode 100644 index 4f1872c..0000000 --- a/clamav-0.93.1-path.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- clamav-0.93.1/contrib/init/RedHat/clamav-milter.path -+++ clamav-0.93.1/contrib/init/RedHat/clamav-milter -@@ -22,7 +22,6 @@ test -f /etc/sysconfig/clamav-milter && - # Check that networking is up. - [ ${NETWORKING} = "no" ] && exit 0 - --[ -x /usr/local/sbin/clamav-milter ] || exit 0 - PATH=$PATH:/usr/bin:/usr/local/sbin:/usr/local/bin - - RETVAL=0 -@@ -87,7 +86,7 @@ case "$1" in - restart - ;; - condrestart) -- test -f ${lockfile} && $0 restart || : -+ test -f ${lockfile} && restart || : - ;; - status) - if [ ! -z $pidfile ]; then diff --git a/clamav-0.93.3-initoff.patch b/clamav-0.93.3-initoff.patch deleted file mode 100644 index 899d32b..0000000 --- a/clamav-0.93.3-initoff.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- clamav-0.93.3/contrib/init/RedHat/clamav-milter.initoff -+++ clamav-0.93.3/contrib/init/RedHat/clamav-milter -@@ -2,7 +2,7 @@ - # - # clamav-milter This script starts and stops the clamav-milter daemon - # --# chkconfig: 2345 79 40 -+# chkconfig: - 79 40 - # - # description: clamav-milter is a daemon which hooks into sendmail and routes \ - # email messages for virus scanning with ClamAV diff --git a/clamav-0.93.3-pid.patch b/clamav-0.93.3-pid.patch deleted file mode 100644 index de29887..0000000 --- a/clamav-0.93.3-pid.patch +++ /dev/null @@ -1,17 +0,0 @@ -Try to fix https://bugzilla.redhat.com/show_bug.cgi?id=452359; RH/Fedora -initscripts do not support killing of whole processgroups. Hence, disable -feature which posts negative pgrp into pidfile and use plain pid instead -of. - -diff -up clamav-0.93.3/clamav-milter/clamav-milter.c.~1~ clamav-0.93.3/clamav-milter/clamav-milter.c ---- clamav-0.93.3/clamav-milter/clamav-milter.c.~1~ 2008-07-07 20:02:10.000000000 +0200 -+++ clamav-0.93.3/clamav-milter/clamav-milter.c 2008-07-13 20:15:12.000000000 +0200 -@@ -1985,7 +1985,7 @@ main(int argc, char **argv) - logg(_("!Can't save PID in file %s\n"), pidfile); - return EX_CONFIG; - } --#ifdef C_LINUX -+#if defined(C_LINUX) && 0 - /* Ensure that all threads are kill()ed */ - fprintf(fd, "-%d\n", (int)getpgrp()); - #else diff --git a/clamav-0.95-cliopts.patch b/clamav-0.95-cliopts.patch new file mode 100644 index 0000000..90d173f --- /dev/null +++ b/clamav-0.95-cliopts.patch @@ -0,0 +1,13 @@ +Index: clamav-0.95rc1/shared/optparser.c +=================================================================== +--- clamav-0.95rc1.orig/shared/optparser.c ++++ clamav-0.95rc1/shared/optparser.c +@@ -211,7 +211,7 @@ const struct clam_option clam_options[] + + { "ExitOnOOM", NULL, 0, TYPE_BOOL, MATCH_BOOL, 0, NULL, 0, OPT_CLAMD, "Stop the daemon when libclamav reports an out of memory condition.", "yes" }, + +- { "Foreground", NULL, 0, TYPE_BOOL, MATCH_BOOL, 0, NULL, 0, OPT_CLAMD | OPT_FRESHCLAM | OPT_MILTER, "Don't fork into background.", "no" }, ++ { "Foreground", "nofork", 0, TYPE_BOOL, MATCH_BOOL, 0, NULL, 0, OPT_CLAMD | OPT_FRESHCLAM | OPT_MILTER, "Don't fork into background.", "no" }, + + { "Debug", NULL, 0, TYPE_BOOL, MATCH_BOOL, 0, NULL, 0, OPT_CLAMD | OPT_FRESHCLAM, "Enable debug messages in libclamav.", "no" }, + diff --git a/clamav-milter.sysv b/clamav-milter.sysv new file mode 100644 index 0000000..8ff51b3 --- /dev/null +++ b/clamav-milter.sysv @@ -0,0 +1,94 @@ +#!/bin/sh +# +# clamav-milter Starts/stop the "clamav-milter" daemon +# +# chkconfig: 345 99 1 +# description: A virus scanning milter + +# Source function library. +. /etc/rc.d/init.d/functions + +exec=/usr/sbin/clamav-milter +prog="clamav-milter" + +OPTS= +[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog + +pidfile=/var/run/clamav-milter/milter.pid +lockfile=/var/lock/subsys/$prog + +start() { + [ -x $exec ] || exit 5 + [ -f $config ] || exit 6 + echo -n $"Starting $prog: " + daemon --pidfile=${pidfile} \ + $exec $OPTS --nofork=no --pid=${pidfile} && success || failure + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop() { + echo -n $"Stopping $prog: " + killproc -o "${pidfile} $exec && success || failure + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +restart() { + stop + start +} + +reload() { + restart +} + +force_reload() { + restart +} + +rh_status() { + # run checks to determine if the service is running or use generic status + status $prog +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + + +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + force-reload) + force_reload + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" + exit 2 +esac +exit $? diff --git a/clamav-milter.upstart b/clamav-milter.upstart new file mode 100644 index 0000000..f211818 --- /dev/null +++ b/clamav-milter.upstart @@ -0,0 +1,19 @@ + +### Uncomment these lines when you want clamav-milter to be a milter +### for a locally running MDA +#start on starting\ sendmail +#start on starting sendmail +#start on starting\ postfix +#start on starting postfix + +### Uncomment these lines when you want clamav-milter to be a milter +### for a remotely running MDA +#start on starting\ local +#start on starting local + +stop on runlevel 0 +stop on runlevel 1 +stop on runlevel 6 + +respawn +exec /usr/sbin/clamav-milter -c /etc/mail/clamav-milter --nofork=yes diff --git a/clamav.spec b/clamav.spec index e03bcaa..941cbc9 100644 --- a/clamav.spec +++ b/clamav.spec @@ -1,4 +1,4 @@ -#global snapshot rc1 +%global snapshot rc1 ## Fedora Extras specific customization below... %bcond_without fedora @@ -8,18 +8,20 @@ %global username clamav %global homedir %_var/lib/clamav %global freshclamlog %_var/log/freshclam.log -%global milterlog %_var/log/clamd.milter %global milteruser clamilt +%global milterlog %_var/log/clamav-milter.log %global milterstatedir %_var/run/clamav-milter %global pkgdatadir %_datadir/%name +%global scanuser clamscan +%global scanstatedir %_var/run/clamd.scan %{!?release_func:%global release_func() %1%{?dist}} Summary: End-user tools for the Clam Antivirus scanner Name: clamav -Version: 0.94.2 -Release: %release_func 3%{?snapshot:.%snapshot} +Version: 0.95 +Release: %release_func 0.0.1%{?snapshot:.%snapshot} License: %{?with_unrar:proprietary}%{!?with_unrar:GPLv2} Group: Applications/File @@ -41,11 +43,9 @@ Source5: clamd-README Source6: clamav-update.logrotate Source7: clamd.SERVICE.init Source8: clamav-notify-servers -Patch21: clamav-0.93.1-path.patch -Patch22: clamav-0.93.3-initoff.patch Patch24: clamav-0.92-private.patch Patch25: clamav-0.92-open.patch -Patch26: clamav-0.93.3-pid.patch +Patch26: clamav-0.95-cliopts.patch BuildRoot: %_tmppath/%name-%version-%release-root Requires: clamav-lib = %version-%release Requires: data(clamav) @@ -56,8 +56,9 @@ BuildRequires: bc %package filesystem Summary: Filesystem structure for clamav Group: Applications/File -Provides: user(clamav) -Provides: group(clamav) +BuildArch: noarch +Provides: user(%username) = 4 +Provides: group(%username) = 4 # Prevent version mix Conflicts: %name < %version-%release Conflicts: %name > %version-%release @@ -81,7 +82,7 @@ Requires: pkgconfig %package data Summary: Virus signature data for the Clam Antivirus scanner Group: Applications/File -BuildArch: noarch +BuildArch: noarch Requires(pre): clamav-filesystem = %version-%release Requires(postun): clamav-filesystem = %version-%release Provides: data(clamav) = full @@ -111,12 +112,11 @@ Requires(post): group(clamav) %package server Summary: Clam Antivirus scanner server Group: System Environment/Daemons -Requires: init(clamav-server) Requires: data(clamav) Requires: clamav-filesystem = %version-%release Requires: clamav-lib = %version-%release -%package server-sysv +%package server-sysvinit Summary: SysV initscripts for clamav server Group: System Environment/Daemons BuildArch: noarch @@ -124,48 +124,91 @@ Provides: init(clamav-server) = sysv Requires: clamav-server = %version-%release Requires(pre): %_initrddir Requires(postun): %_initrddir +Provides: clamav-server-sysv = %version-%release +Obsoletes: clamav-server-sysv < %version-%release -%package milter -Summary: Milter module for the Clam Antivirus scanner + +%package scanner +Summary: Clamav scanner daemon +Group: System Environment/Daemons +BuildArch: noarch +Requires: init(clamav-scanner) +Provides: user(%scanuser) = 99 +Provides: group(%scanuser) = 99 +Requires: clamav-server = %version-%release + +%package scanner-sysvinit +Summary: SysV initscripts for clamav scanner daemon Group: System Environment/Daemons -Requires: clamav-milter-core = %version-%release -Requires: milter(clamav) +BuildArch: noarch +Provides: init(clamav-scanner) = sysv +Requires: clamav-server-sysvinit = %version-%release +Requires: clamav-scanner = %version-%release +Requires(pre): %_initrddir +Requires(postun): %_initrddir initscripts +Requires(post): chkconfig +Requires(preun): chkconfig initscripts -%package milter-core -Summary: Core milter module for the Clam Antivirus scanner +%package scanner-upstart +Summary: Upstart initscripts for clamav scanner daemon Group: System Environment/Daemons +BuildArch: noarch +Source410: clamd.scan.upstart +Provides: init(clamav-scanner) = upstart +Requires: clamav-scanner = %version-%release +# implicates a conflict with upstart 0.5+ +Requires(pre): /etc/event.d +Requires(post): /usr/bin/killall +Requires(postun): /sbin/initctl + + +%package milter +Summary: Milter module for the Clam Antivirus scanner +Group: System Environment/Daemons +Source300: README.fedora Requires: init(clamav-milter) BuildRequires: sendmail-devel BuildRequires: fedora-usermgmt-devel -Provides: user(%milteruser) -Provides: group(%milteruser) +Provides: user(%milteruser) = 5 +Provides: group(%milteruser) = 5 Requires(post): coreutils %{?FE_USERADD_REQ} -%package milter-sendmail -Summary: Sendmail customizations for clamav-milter -Group: System Environment/Daemons -Source300: README.fedora -Requires: sendmail -Requires: clamav-milter-core = %version-%release -Requires(pre): user(%milteruser) -Requires(pre): group(%milteruser) Provides: milter(clamav) = sendmail -Conflicts: milter(clamav) < sendmail -Conflicts: milter(clamav) > sendmail +Provides: milter(clamav) = postfix -%package milter-sysv +Provides: clamav-milter-core = %version-%release +Obsoletes: clamav-milter-core < %version-%release +Provides: clamav-milter-sendmail = %version-%release +Obsoletes: clamav-milter-sendmail < %version-%release + +%package milter-sysvinit Summary: SysV initscripts for the clamav sendmail-milter Group: System Environment/Daemons -Provides: init(clamav-milter) = sysv -Requires: clamav-milter = %version-%release BuildArch: noarch +Source320: clamav-milter.sysv +Provides: init(clamav-milter) = sysvinit +Requires: clamav-milter = %version-%release Requires(post): user(%milteruser) clamav-milter Requires(preun): user(%milteruser) clamav-milter Requires(pre): %_initrddir Requires(postun): %_initrddir initscripts Requires(post): chkconfig Requires(preun): chkconfig initscripts +Provides: milter-sysv = %version-%release +Obsoletes: milter-sysv < %version-%release + +%package milter-upstart +Summary: Upstart initscripts for the clamav sendmail-milter +Group: System Environment/Daemons +BuildArch: noarch +Source310: clamav-milter.upstart +Provides: init(clamav-milter) = upstart +Requires: clamav-milter = %version-%release +# implicates a conflict with upstart 0.5+ +Requires(pre): /etc/event.d +Requires(post): /usr/bin/killall +Requires(postun): /sbin/initctl %description @@ -235,47 +278,54 @@ of this daemon should be started for each service requiring it. See the README file how this can be done with a minimum of effort. -%description server-sysv +%description server-sysvinit SysV initscripts template for the clamav server +%description scanner +This package contains a generic system wide clamd service which is +e.g. used by the clamav-milter package. + +%description scanner-sysvinit +The SysV initscripts for clamav-scanner. + +%description scanner-upstart +The Upstart initscripts for clamav-scanner. + + %description milter This package contains files which are needed to run the clamav-milter. -%description milter-sysv +%description milter-sysvinit The SysV initscripts for clamav-milter. -%description milter-core -Core files for the clamav-milter. - -%description milter-sendmail -Sendmail customizations of the clamav-milter. - +%description milter-upstart +The Upstart initscripts for clamav-milter. ## ------------------------------------------------------------ %prep %setup -q -n %{name}-%{version}%{?snapshot} -%patch21 -p1 -b .path -%patch22 -p1 -b .initoff %patch24 -p1 -b .private %patch25 -p1 -b .open -%patch26 -p1 -b .pid +%patch26 -p1 -b .cliopts install -p -m0644 %SOURCE300 clamav-milter/ mkdir -p libclamunrar{,_iface} %{!?with_unrar:touch libclamunrar/{Makefile.in,all,install}} -perl -pi -e 's!^(#?LogFile ).*!\1/var/log/clamd.!g; - s!^#?(LocalSocket ).*!\1/var/run/clamd./clamd.sock!g; - s!^#?(PidFile ).*!\1/var/run/clamd./clamd.pid!g; - s!^#?(User ).*!\1!g; - s! /usr/local/share/clamav,! %homedir,!g; - ' etc/clamd.conf +sed -ri \ + -e 's!^(#?LogFile ).*!\1/var/log/clamd.!g' \ + -e 's!^(#?LocalSocket ).*!\1/var/run/clamd./clamd.sock!g' \ + -e 's!^(#?PidFile ).*!\1/var/run/clamd./clamd.pid!g' \ + -e 's!^#?(User ).*!\1!g' \ + -e 's!^#?(AllowSupplementaryGroups|LogSyslog).*!\1 yes!g' \ + -e 's! /usr/local/share/clamav,! %homedir,!g' \ + etc/clamd.conf -perl -pi -e 's!^#(UpdateLogFile )!\1!g;' etc/freshclam.conf +sed -ri -e 's!^#(UpdateLogFile )!\1!g;' etc/freshclam.conf ## ------------------------------------------------------------ @@ -321,12 +371,13 @@ function smartsubst() { install -d -m755 \ - ${RPM_BUILD_ROOT}%_sysconfdir/{clamd.d,cron.d,logrotate.d,sysconfig} \ + ${RPM_BUILD_ROOT}%_sysconfdir/{mail,clamd.d,cron.d,logrotate.d,sysconfig,event.d} \ ${RPM_BUILD_ROOT}%_var/log \ ${RPM_BUILD_ROOT}%milterstatedir \ ${RPM_BUILD_ROOT}%pkgdatadir/template \ ${RPM_BUILD_ROOT}%_initrddir \ - ${RPM_BUILD_ROOT}%homedir + ${RPM_BUILD_ROOT}%homedir \ + ${RPM_BUILD_ROOT}%scanstatedir rm -f ${RPM_BUILD_ROOT}%_sysconfdir/clamd.conf \ ${RPM_BUILD_ROOT}%_libdir/*.la @@ -369,22 +420,33 @@ smartsubst 's!webmaster,clamav!webmaster,%username!g; $RPM_BUILD_ROOT%pkgdatadir/freshclam-sleep -#### The milter stuff -function subst() { - sed -e 's!!milter!g;s!!%milteruser!g;'"$3" "$1" >"$RPM_BUILD_ROOT$2" -} +### The scanner stuff +sed -e 's!!scan!g;s!!%scanuser!g' \ + etc/clamd.conf > $RPM_BUILD_ROOT%_sysconfdir/clamd.d/clamd.scan + +sed -e 's!!scan!g;' $RPM_BUILD_ROOT%pkgdatadir/template/clamd.init \ + > $RPM_BUILD_ROOT%_initrddir/clamd.scan + +install -p -m 644 %SOURCE410 $RPM_BUILD_ROOT%_sysconfdir/event.d/clamd.scan + +touch $RPM_BUILD_ROOT%scanstatedir/clamd.sock -subst etc/clamd.conf /etc/clamd.d/milter.conf \ - 's!^##*\(\(LogFile\|LocalSocket\|PidFile\|User\)\s\|\(StreamSaveToDisk\|ScanMail\)$\)!\1!;' +### The milter stuff +sed -r \ + -e 's!^#?(User).*!\1 %milteruser!g' \ + -e 's!^#?(AllowSupplementaryGroups|LogSyslog) .*!\1 yes!g' \ + -e 's! /tmp/clamav-milter.socket! %milterstatedir/clamav-milter.socket!g' \ + -e 's! /var/run/clamav-milter.pid! %milterstatedir/clamav-milter.pid!g' \ + -e 's! /tmp/clamav-milter.log! %milterlog!g' \ + etc/clamav-milter.conf > $RPM_BUILD_ROOT%_sysconfdir/mail/clamav-milter.conf +install -p -m 644 %SOURCE310 $RPM_BUILD_ROOT%_sysconfdir/event.d/clamav-milter +install -p -m 755 %SOURCE320 $RPM_BUILD_ROOT%_initrddir/clamav-milter -cat <$RPM_BUILD_ROOT%_sysconfdir/sysconfig/clamav-milter -CLAMAV_FLAGS='-lo -c /etc/clamd.d/milter.conf local:%milterstatedir/clamav.sock' -EOF -install -p -m755 contrib/init/RedHat/clamav-milter $RPM_BUILD_ROOT%_initrddir/clamav-milter -touch $RPM_BUILD_ROOT%milterstatedir/clamav.sock $RPM_BUILD_ROOT%milterlog +rm -f $RPM_BUILD_ROOT%_sysconfdir/clamav-milter.conf +touch $RPM_BUILD_ROOT{%milterstatedir/clamav-milter.socket,%milterlog} ## ------------------------------------------------------------ @@ -404,6 +466,35 @@ rm -rf "$RPM_BUILD_ROOT" %__fe_groupdel %username &>/dev/null || : +%pre scanner +%__fe_groupadd 49 -r %scanuser &>/dev/null || : +%__fe_useradd 49 -r -s /sbin/nologin -d / -M \ + -g %scanuser %scanuser &>/dev/null || : + +%postun scanner +%__fe_userdel %scanuser &>/dev/null || : +%__fe_groupdel %scanuser &>/dev/null || : + + +%post scanner-sysvinit +/sbin/chkconfig --add clamd.scan + +%preun scanner-sysvinit +test "$1" != 0 || %_initrddir/clamd.scan stop &>/dev/null || : +test "$1" != 0 || /sbin/chkconfig --del clamd.scan + +%postun scanner-sysvinit +test "$1" = 0 || %_initrddir/clamd.scan condrestart >/dev/null || : + + +%post scanner-upstart +/usr/bin/killall -u %scanuser clamd 2>/dev/null || : + +%preun scanner-upstart +test "$1" != "0" || /sbin/initctl -q stop clamd.scan || : + + + %post update test -e %freshclamlog || { touch %freshclamlog @@ -411,34 +502,41 @@ test -e %freshclamlog || { %__chown root:%username %freshclamlog } -%pre milter-core +%pre milter %__fe_groupadd 5 -r %milteruser &>/dev/null || : %__fe_useradd 5 -r -s /sbin/nologin -d %milterstatedir -M \ -c 'Clamav Milter User' -g %milteruser %milteruser &>/dev/null || : -%post milter-core +%post milter test -e %milterlog || { touch %milterlog chmod 0620 %milterlog chown root:%milteruser %milterlog } -%postun milter-core +%postun milter %__fe_userdel %milteruser &>/dev/null || : %__fe_groupdel %milteruser &>/dev/null || : -%post milter-sysv +%post milter-sysvinit /sbin/chkconfig --add clamav-milter -%preun milter-sysv +%preun milter-sysvinit test "$1" != 0 || %_initrddir/clamav-milter stop &>/dev/null || : test "$1" != 0 || /sbin/chkconfig --del clamav-milter -%postun milter-sysv +%postun milter-sysvinit test "$1" = 0 || %_initrddir/clamav-milter condrestart >/dev/null || : +%post milter-upstart +/usr/bin/killall -u %milteruser clamav-milter 2>/dev/null || : + +%preun milter-upstart +test "$1" != "0" || /sbin/initctl -q stop clamav-milter || : + + %post lib -p /sbin/ldconfig %postun lib -p /sbin/ldconfig @@ -521,37 +619,57 @@ test "$1" = 0 || %_initrddir/clamav-milter condrestart >/dev/null || : %exclude %_mandir/man8/clamav-milter* -%files server-sysv +%files server-sysvinit %defattr(-,root,root,-) %_initrddir/clamd-wrapper ## ----------------------- -%files milter +%files scanner %defattr(-,root,root,-) +%dir %attr(0710,%scanuser,%scanuser) %scanstatedir +%config(noreplace) %_sysconfdir/clamd.d/clamd.scan +%ghost %scanstatedir/clamd.sock -%files milter-core +%files scanner-sysvinit +%attr(0755,root,root) %config %_initrddir/clamd.scan + +%files scanner-upstart %defattr(-,root,root,-) -%doc clamav-milter/INSTALL -%_sbindir/*milter* -%_mandir/man8/clamav-milter* -%config(noreplace) %verify(not mtime) %_sysconfdir/clamd.d/milter.conf -%ghost %attr(0620,root,%milteruser) %verify(not size md5 mtime) %milterlog +%config(noreplace) %_sysconfdir/event.d/clamd.scan + +## ----------------------- -%files milter-sendmail +%files milter %defattr(-,root,root,-) %doc clamav-milter/README.fedora -%attr(0700,%milteruser,%milteruser) %dir %milterstatedir +%_sbindir/*milter* +%_mandir/man8/clamav-milter* +%config(noreplace) %_sysconfdir/mail/clamav-milter.conf +%ghost %attr(0620,root,%milteruser) %verify(not size md5 mtime) %milterlog +%attr(0710,%milteruser,%milteruser) %dir %milterstatedir %ghost %milterstatedir/* -%files milter-sysv +%files milter-sysvinit %defattr(-,root,root,-) %config %_initrddir/clamav-milter -%config(noreplace) %verify(not mtime) %_sysconfdir/sysconfig/clamav-milter + +%files milter-upstart +%defattr(-,root,root,-) +%config(noreplace) %_sysconfdir/event.d/clamav-milter %changelog +* Sun Mar 8 2009 Enrico Scholz - 0.95-0.1.rc1 +- updated to 0.95rc1 +- added -upstart subpackages +- renamed -sysv to -sysvinit to make -upstart win the default dep resolving +- reworked complete milter stuff +- added -scanner subpackage which contains a preconfigured daemon + (e.g. for use by -milter) +- moved %%changelog entries from 2006 and before into ChangeLog-rpm.old + * Wed Feb 25 2009 Enrico Scholz - 0.94.2-3 - made some subpackages noarch - fixed typo in SysV initscript which removes 'touch' file (#473513) @@ -681,283 +799,3 @@ test "$1" = 0 || %_initrddir/clamav-milter condrestart >/dev/null || : updated per cron-job and user does not want to download the large -data package with outdated virus definitations (#214949) - %%ghost'ed the files downloaded by freshclam - -* Tue Dec 12 2006 Enrico Scholz - 0.88.7-1 -- updated to 0.88.7 - -* Sun Nov 5 2006 Enrico Scholz - 0.88.6-1 -- updated to 0.88.6 - -* Wed Oct 18 2006 Enrico Scholz - 0.88.5-1 -- updated to 0.88.5 (SECURITY); fixes CVE-2006-4182, CVE-2006-5295 -- added patch to set '__attribute__ ((visibility("hidden")))' for - exported MD5_*() functions (fixes #202043) - -* Thu Oct 05 2006 Christian Iseli 0.88.4-4 - - rebuilt for unwind info generation, broken in gcc-4.1.1-21 - -* Thu Sep 21 2006 Enrico Scholz - 0.88.4-3 -- splitted SysV initscripts of -milter and -server into own subpackages - -* Fri Sep 15 2006 Enrico Scholz - 0.88.4-2 -- rebuilt - -* Tue Aug 8 2006 Enrico Scholz - 0.88.4-1 -- updated to 0.88.4 (SECURITY) - -* Wed Jul 12 2006 Enrico Scholz -- removed the clamdscan(1) manpage from the -server subpackage - -* Sat Jul 8 2006 Enrico Scholz -- removed a superfluous '}' -- removed some code which was relevant for FC-3 only - -* Sat Jul 8 2006 Enrico Scholz - 0.88.3-1 -- updated to 0.88.3 -- updated to new fedora-usermgmt macros - -* Tue May 16 2006 Enrico Scholz - 0.88.2-2 -- cleanups: removed unneeded curlies, use plain command instead of - %%__XXX macro, whitespace cleanup, removed unneeded versioned - dependencies -- added a 'Requires(post): group(clamav)' dependencies for -update and - added the corresponding Provides: to -data -- removed the %%_without_milter conditional; you won't gain anything - when milter would be disabled at buildtime - -* Sun Apr 30 2006 Enrico Scholz - 0.88.2-1 -- updated to 0.88.2 (SECURITY) -- rediffed patches; most issues handled by 0.88.1-2 are fixed in - 0.88.2 - -* Mon Apr 24 2006 Enrico Scholz - 0.88.1-2 -- added patch which fixes some classes of compiler warnings; at least - the using of implicitly declared functions was reported to cause - segfaults on AMD64 (brought to my attention by Marc Perkel) -- added patch which fixes wrong usage of strncpy(3) in unrarlib.c - -* Thu Apr 06 2006 Enrico Scholz - 0.88.1-1 -- updated to 0.88.1 (SECURITY) - -* Sat Feb 18 2006 Enrico Scholz - 0.88-2 -- rebuilt for FC5 - -* Tue Jan 10 2006 Enrico Scholz - 0.88-1 -- updated to 0.88 -- added pseudo-versions for the 'init(...)' provides as a first step - for the support of alternative initmethods - -* Tue Nov 15 2005 Enrico Scholz - 0.87.1-2 -- moved 'freshclam.conf.5' man page into the -update subpackage (#173221) -- ship 'clamd.conf.5' man page in the -server subpackage *too*. The - same file is contained in multiple packages now, but this man-page - can not be removed from the base package because it also applies to - 'clamdscan' there (#173221). - -* Fri Nov 4 2005 Enrico Scholz - 0.87.1-1 -- updated to 0.87.1 - -* Sat Sep 17 2005 Enrico Scholz - 0.87-1 -- updated to 0.87 (SECURITY) -- removed -timeout patch; it is solved upstream -- reverted the -exim changes; they add yet more complexity, their - functionality can go into an own package and they contained flaws - -* Fri Sep 9 2005 David Woodhouse - 0.86.2-5 -- Add clamav-exim configuration package - -* Fri Jul 29 2005 Enrico Scholz - 0.86.2-4 -- [milter] create the milter-logfile in the %%post scriptlet -- [milter] reverted the change of the default child_timeout value; it - was set to 5 minutes in 0.86.2 which conflicts with the internal - mode where a timeout must not be set. So, the clamav-milter would - not run with the default configuration - -* Thu Jul 28 2005 Enrico Scholz - 0.86.2-3 -- Fixed calculation of sleep duration; on some systems/IPs, `hostid` - results in a negative number which is retained by the bash - modulo-operation. So the sleep may get a negative number of seconds - being interpreted as an option. This version makes sure that the - module-operations returns a non-negative value. [BZ #164494, James - Wilkinson] -- added support for a /usr/sbin/clamav-notify-servers.local hook; this - file will be executed (source'd) before all other actions and can - abort the entire processing by invoking 'exit' - -* Mon Jul 25 2005 Enrico Scholz - 0.86.2-2 -- updated to 0.86.2 (SECURITY) -- changed the freshclam updating mechanism (again); now, it consists - of a crontab which does not need to be changed and a helper script - (freshclam-sleep). This helper script is configured by - /etc/sysconfig/freshclam - -* Sat Jun 25 2005 Enrico Scholz - 0.86.1-2 -- updated to 0.86.1 -- fixed randomization in %%post scriptlet: hour should be a range but - not a single number - -* Tue Jun 21 2005 Enrico Scholz - 0.86-1 -- updated to 0.86 -- randomize freshclam startup times in -update's %%post script (suggested - by Stephen Smoogen); this requires some more Requires(post): also - -* Wed May 18 2005 Warren Togami - 0.85.1-4 -- fix dist tagging the way Enrico wants it - -* Tue May 17 2005 Oliver Falk - 0.85.1-2 -- Rebuild - -* Tue May 17 2005 Oliver Falk - 0.85.1-1 -- Update - -* Sat May 14 2005 Enrico Scholz - 0.85-0 -- updated to 0.85 - -* Sun May 1 2005 Enrico Scholz - 0.84-0 -- updated to 0.84 - -* Fri Apr 7 2005 Michael Schwendt -- rebuilt - -* Tue Feb 15 2005 Enrico Scholz - 0:0.83-1 -- updated to 0.83 - -* Tue Feb 8 2005 Enrico Scholz - 0:0.82-1 -- updated to 0.82 -- minor spec cleanups - -* Fri Jan 28 2005 Enrico Scholz - 0:0.81-0.fdr.2 -- build the package with '--disable-zlib-vcheck' because RH is unable to - apply a fix for a 5 month old and solved security issue. Please fill - your comments at https://bugzilla.redhat.com/beta/show_bug.cgi?id=131385 -- added 'BuildRequires: bc' (should work without also, but ./configure - gives out ugly warnings else) - -* Fri Jan 28 2005 Enrico Scholz - 0:0.81-0.fdr.1 -- updated to 0.81 -- do not ship the 'clamd.milter' daemon anymore; clamav-milter supports - an internal mode now which is enabled by default -- updated -milter %%description - -* Thu Jan 20 2005 Enrico Scholz - 0:0.80-0.fdr.2 -- s!cron.d/clamav!cron.d/clamav-update! in the %%description of the -update - subpackage (https://bugzilla.fedora.us/show_bug.cgi?id=1715#c39) - -* Wed Nov 3 2004 Enrico Scholz - 0:0.80-0.fdr.1 -- updated to 0.80 -- removed DMS, FreeBSD-HOWTO and localized docs as it is not shipped anymore -- buildrequire 'curl-devel' -- renamed clamav.conf to clamd.conf (upstream change) -- updated -initoff patch - -* Tue Sep 14 2004 Enrico Scholz - 0:0.75.1-0.fdr.1 -- updated to 0.75.1 -- use %%configure, the problems with the architecture specification - seem to have passed (probably because of an autoconf update) -- set mode 0600 for the cron-script (required by vixie-cron) -- made the cronjob a spambot and send mail about deactivated freshclam - service to nearly everybody... (root, postmaster, webmaster) -- other fixes in the notification cronjob - -* Fri Jul 23 2004 Enrico Scholz - 0:0.75-0.fdr.1 -- updated to 0.75 - -* Thu Jul 15 2004 Enrico Scholz - 0:0.74-0.fdr.2 -- moved /usr/bin/clamav-config from main into -devel - -* Wed Jun 30 2004 Enrico Scholz - 0:0.74-0.fdr.1 -- updated to 0.74 - -* Mon Jun 14 2004 Enrico Scholz - 0:0.73-0.fdr.1 -- updated to 0.73 -- added pkgconfig file - -* Fri Jun 11 2004 Enrico Scholz - 0:0.72-0.fdr.3 -- notify the user about a deactivated clamav-update service -- added clamd-gen script which generates template spec-files for - services using clamd -- copied template configuration files to %pkgdatadir/template (needed - for clamd-gen) -- moved the clamd-wrapper from %_initrddir to %{pkgdatadir}; a symlink - will be provided for compatibility reasons -- conditionalized building of the -milter subpackage ('--without - milter' switch) to enable builds on RH73 (bug #1715, comment #5/#7) - -* Fri Jun 4 2004 Enrico Scholz - 0:0.72-0.fdr.2 -- removed 'BuildRequires: dietlibc'; it was a leftover from the - pre-use-signal era (before 0.70) (bug #1716) - -* Thu Jun 3 2004 Enrico Scholz - 0:0.72-0.fdr.1 -- updated to 0.72 - -* Thu May 20 2004 Enrico Scholz - 0:0.71-0.fdr.2 -- removed the randomization in the cronjob; it seems to be impossible - to use the mod-operator (%%) there. Instead of, the user has to - replace some placeholders... - -* Wed May 19 2004 Enrico Scholz - 0:0.71-0.fdr.1 -- updated to 0.71 - -* Fri May 7 2004 Enrico Scholz - 0:0.70-0.fdr.1.1 -- quote 'EOF' to delay $RANDOM expansion - -* Tue Apr 27 2004 Enrico Scholz - 0:0.70-0.fdr.2 -- updated GECOS entry for the 'clamav' user to describe its purpose - more accurately -- use explicit '-m755' when creating directories with install - -* Tue Apr 20 2004 Enrico Scholz - 0:0.70-0.fdr.1 -- updated to 0.70; rediffed some patches -- updated logrotate script to use signals and documented the steps - which are needed to make it work -- adapted initscript to use signals instead of sockwrite -- removed sockwrite; signals can now be used to reload the database -- added logfile to the -milter subpackage - -* Tue Apr 20 2004 Enrico Scholz - 0:0.68-0.fdr.2.1 -- tagged some Requires:, since clamav-server is required in the milter-%%post* scriptlets - -* Sat Mar 20 2004 Enrico Scholz - 0:0.68-0.fdr.2 -- split the double Requires(...,...): statements; see - https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=118773 -- require the recent fedora-usermgmt package (0.7) which fixes similar - ordering issues - -* Thu Mar 18 2004 Enrico Scholz - 0:0.68-0.fdr.1 -- updated to 0.68 (using the -1 version) -- ship milter-files in the -milter instead of the -server subpackage - -* Tue Feb 24 2004 Enrico Scholz - 0:0.67-0.fdr.3 -- fixed ':' vs. '.' in chown - -* Tue Feb 17 2004 Enrico Scholz - 0:0.67-0.fdr.2 -- randomize freshclam startup to prevent server peaks - -* Mon Feb 16 2004 Enrico Scholz - 0:0.67-0.fdr.1 -- updated to 0.67 (using the -1 version) - -* Wed Feb 11 2004 Enrico Scholz - 0:0.66-0.fdr.2 -- updated to 0.66; important, packaging-relevant changes are - freshclam: - * $http_proxy is not supported anymore; you have to configure it in - /etc/freshclam.conf - * the logfile has been renamed to /var/log/freshclam.log -- removed %%check section; buildroot check is implemented in local - testsuite already -- added some %%verify(not mtime) modifiers to avoid unnecessary .rpmnew - files -- added some directory-Requires: -- activated milter-package and made it work -- added patch to disable clamav-milter service by default -- renamed /var/run/clamav. to /var/run/clamd.; this - makes things more consistently but can break backward compatibility. The - initscript should deal with the old version too, but I would not bet on - it... -- updated some descriptions -- fixed the update-mechanism; now it happens in two stages: at first, - the files will be downloaded as user 'clamav' and then, root initiates - the daemon-reload. - -* Mon Feb 9 2004 Enrico Scholz - 0:0.65-0.fdr.5 -- added security fix for - http://www.securityfocus.com/archive/1/353194/2004-02-06/2004-02-12/1 diff --git a/clamd-wrapper b/clamd-wrapper index 14c04a5..b601cf2 100644 --- a/clamd-wrapper +++ b/clamd-wrapper @@ -26,6 +26,7 @@ procname=clamd.${CLAMD_SERVICE} CLAMD_CONFIGFILE=/etc/clamd.d/${CLAMD_SERVICE}.conf CLAMD_OPTIONS= +CLAMD_PIDFILE=/var/run/clamd.${CLAMD_SERVICE}/clamd.pid ## backward-compatibility check... for i in /var/run/clamd.${CLAMD_SERVICE}/clamd.sock \ /var/run/clamav.${CLAMD_SERVICE}/clamd.sock; do @@ -40,7 +41,8 @@ prog="clamd.${CLAMD_SERVICE}" start () { echo -n $"Starting $prog: " - daemon $procname ${CLAMD_CONFIGFILE:+-c $CLAMD_CONFIGFILE} ${CLAMD_OPTIONS} + daemon --pidfile=${CLAMD_PIDFILE} \ + $procname ${CLAMD_CONFIGFILE:+-c $CLAMD_CONFIGFILE} ${CLAMD_OPTIONS} --pid ${CLAMD_PIDFILE} RETVAL=$? echo [ $RETVAL -eq 0 ] && touch $lockfile @@ -59,10 +61,10 @@ stop () { reload() { rc=0 echo -n $"Reloading $prog: " - killproc $procname -SIGHUP || rc=$? + killproc -p ${CLAMD_PIDFILE} $procname -SIGHUP || rc=$? echo echo -n $"Loading new virus-database: " - killproc $procname -SIGUSR2 || rc=$? + killproc -p ${CLAMD_PIDFILE} $procname -SIGUSR2 || rc=$? echo return $rc } diff --git a/clamd.scan.upstart b/clamd.scan.upstart new file mode 100644 index 0000000..e96b37e --- /dev/null +++ b/clamd.scan.upstart @@ -0,0 +1,15 @@ +### Uncomment these lines when you want clamd.scan to be a scanner +### for a locally running clamav-milter +#start on starting clamav-milter + +### Uncomment these lines when you want clamd.scan to be a generic +### scanner service +#start on starting\ local +#start on starting local + +stop on runlevel 0 +stop on runlevel 1 +stop on runlevel 6 + +respawn +exec /usr/sbin/clamd -c /etc/clamd.d/clamd.scan --nofork=yes diff --git a/lastver b/lastver index 5e4a9c1..d89b314 100644 --- a/lastver +++ b/lastver @@ -1 +1 @@ -0.93.3 +0.94.2 diff --git a/sources b/sources index e115b9a..5f92b5e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9b04d010c17c607ace4ed5e9318104d4 clamav-0.94.2-norar.tar.bz2 +40d13c0d39568b17aec35fe793233861 clamav-0.95rc1-norar.tar.bz2